Руководство по API извлечения знаний

Конечная точка запроса

POST /external/use/seek-knowledge/seek HTTP/1.1

Запрос списка доступных моделей

GET /external/use/seek-knowledge/models HTTP/1.1

Заголовки запроса

ЗаголовокЗначениеОписание
AuthorizationBearer <your_token>Токен аутентификации для проверки личности пользователя. Замените <your_token> на ваш реальный токен.
Content-Typeapplication/jsonУказывает, что тело запроса представлено в формате JSON.
Hostedge.flowith.netАдрес API-сервера.
User-AgentHTTPie(Необязательно) Идентификатор клиента.

Тело запроса (JSON)

ПараметрТипОписание
messagesArrayСписок сообщений разговора. Каждый объект сообщения содержит поля role и content.
modelStringНазвание модели. Пример: "gpt-4o-mini"
streamBooleanВключить потоковый ответ? true для включения, false для отключения.
kb_listString ArrayСписок ID баз знаний. Задаёт область для извлечения знаний.

Подробности о поле messages

  • role: роль сообщения, может быть "assistant" или "user".
  • content: содержимое сообщения, например сложные запросы или инструкции.

Ответ

Когда stream равно true (потоковый ответ)

  • Код статуса ответа: 200 OK
  • Заголовки ответа: включают стандартные HTTP-заголовки, такие как Content-Type: text/plain; charset=UTF-8 и т. д.
  • Тело ответа: текстовый поток, начинающийся с data:. Каждый блок data: содержит объект JSON со следующими возможными значениями tag:
    • searching: указывает, что поиск выполняется; поле content включает обновления о ходе выполнения.
    • seeds: промежуточные результаты поиска; content — это массив JSON, где каждый элемент представляет собой отдельную единицу знания, содержащую id, tokens, content, order, source_id, source_title и nip.
    • final: указывает на финальные результаты; content содержит полный текст ответа.

Когда stream равно false

  • Код статуса ответа: 200 OK
  • Заголовки ответа: включают стандартные HTTP-заголовки, такие как Content-Type: application/json и т. д.
  • Тело ответа: объект JSON, содержащий поля tag и content.
    • tag: всегда "final".
    • content: полный текст ответа.

Примеры curl

Потоковый ответ (stream = true)

curl -X POST "https://edge.flowith.net/external/use/knowledge-base/seek" \
  -H "Authorization: Bearer <your_token>" \
  -H "Content-Type: application/json" \
  -H "Host: edge.flowith.net" \
  -d '{
    "messages": [
      {"role": "assistant", "content": "I'd like to explore effective social dynamics and interpersonal relationships"},
      {"role": "user", "content": "Share your best strategies for authentic connection and building rapport in professional settings"}
    ],
    "model": "gpt-4.1-mini",
    "stream": true,
    "kb_list": ["<knowledge_base_id>"]
  }' 

Непотоковый ответ (stream = false)

curl -X POST "https://edge.flowith.net/external/use/knowledge-base/seek" \
  -H "Authorization: Bearer <your_token>" \
  -H "Content-Type: application/json" \
  -H "Host: edge.flowith.net" \
  -d '{
    "messages": [
      {"role": "assistant", "content": "I'd like to explore effective social dynamics and interpersonal relationships"},
      {"role": "user", "content": "Share your best strategies for authentic connection and building rapport in professional settings"}
    ],
    "model": "gpt-4.1-mini",
    "stream": false,
    "kb_list": ["<knowledge_base_id>"]
  }' 

Не забудьте заменить <your_token> и <knowledge_base_id> на ваши реальные значения.

Ограничения частоты запросов

  • Запросы: 12 запросов в минуту (RPM)
  • Примечание: превышение этого лимита приведёт к ошибкам HTTP 429 (Too Many Requests)

Тарификация

  • Использование квоты: списания рассчитываются на основе квоты Credits соответствующего аккаунта Flowith
  • Цикл тарификации: использование рассчитывается и списывается в реальном времени с баланса вашего аккаунта