Перейти к основному содержимому

Проксирование запросов с данными через Jay Guard

Вы можете использовать Jay Guard в качестве прокси-сервера для отправки запросов к языковым моделям напрямую. Для этого реализован метод: POST /api/dataguard/public/{serviceName}/{proxyPath}.

При этом Jay Guard будет обнаруживать сущности в запросе, отправку которых нужно контролировать:

  • пропускать (allow);
  • блокировать (block);
  • маскировать сущности перед отправкой (redact).

Как происходит проксирование

Процесс обработки запроса:

  1. Jay Guard получает и разбирает пользовательский запрос.
  2. Анализирует запрос на наличие сущностей, настроенных в правилах фильтрации.
  3. Определяет применимые правила и их действия (allow, redact, deny).
  4. В зависимости от правила:
    • deny — блокирует запрос и возвращает уведомление.
    • redact — заменяет найденные сущности на плейсхолдеры.
    • allow — оставляет запрос без изменений.
  5. Если запрос не заблокирован, отправляет его в LLM.
  6. Получает полный ответ от модели (или обрабатывает его частями при потоковой передаче).
  7. Если применялось маскирование (redact), восстанавливает исходные данные в ответе.
  8. Возвращает результат пользователю.

Запрос к эндпоинту

POST /api/dataguard/public/{serviceName}/{proxyPath}

  • {serviceName} — имя сервиса, к которому нужно проксировать запрос, например openai. Возможные значения:

    • gigachat;
    • mlp — для моделей, размещенных в Caila;
    • openai;
    • yandexgpt.
  • {proxyPath} — эндпоинт, куда нужно проксировать запрос, например /v1/chat/completion.

Заголовки

ЗаголовокОписание
X-DATA-GUARD-API-KEYКлюч доступа, скопированный в интерфейсе Jay Guard.
предупреждение

Запрос может содержать другие заголовки, зависящие от сервиса, к которому проксируется запрос с данными.

Тело

Поля тела запроса зависят от сервиса, к которому вы обращаетесь. Пример для модели Claude, которая размещена в Caila:

{
"data": {
"messages": [
{
"role": "user",
"content": "Привет"
}
]
},
"config": {
"model": "claude-3-5-sonnet"
}
}

Примеры запросов к другим моделям вы найдете в соответствующем разделе.