LITE SOFT DEV
СервераNEURO CORE

Внутренний API

Контракт NEURO CORE Service — /v1/chat и /v1/health для WEB PORTAL.

Внутренний API доступен только Go-сервису WEB PORTAL по внутренней сети. Из интернета этих endpoint'ов не существует.

Чат

POST/v1/chat

Один вызов = одно сообщение в чате. Принимает вопрос и контекст, возвращает поток ответа. Соединение long-lived; отмена со стороны портала прерывает генерацию в vLLM.

session_idstringобязательный

Идентификатор диалога — по нему сервис поднимает историю.

anonymous_user_idstringобязательный

Обезличенный идентификатор пользователя. Не сопоставим с ПДн внутри NEURO CORE.

scenariostring

Сценарий диалога, например career. Влияет на промпт и подбор контекста.

messagesarrayобязательный

Сообщения диалога: объекты { role, content }.

Без ПДн в запросе

В запросе не бывает ПДн: портал обезличивает данные до вызова. Если в messages встречаются ФИО или контакты — это баг портала.

Что происходит внутри:

  1. Фильтрация входа (модерация, антисаботаж).
  2. Embedding вопроса (Qwen3-Embedding).
  3. Векторный поиск в Qdrant (top-K).
  4. Rerank (bge-reranker-v2-m3, top-N).
  5. Генерация Qwen3-32B — stream наружу.
  6. Сохранение диалога и тегов в MongoDB.

Детали шагов — в RAG-пайплайне.

Запрос
{
  "session_id": "s-3f9a…",
  "anonymous_user_id": "u-71bc…",
  "scenario": "career",
  "messages": [
    { "role": "user", "content": "Какие профессии связаны с морем?" }
  ]
}
Ответ — поток токенов до завершения генерации
Судовождение — одна из ключевых профессий региона…

Проба живости

GET/v1/health

Проба живости для портала.

ОтветЗначениеРеакция портала
200 OKСервис и модели доступныЧат работает
Ошибка / таймаутNEURO CORE недоступенCircuit breaker: портал без чата
Ответ 200
{
  "status": "ok",
  "models": {
    "llm": "qwen3-32b",
    "embedding": "qwen3-embedding",
    "reranker": "bge-reranker-v2-m3"
  }
}

Расширение контракта

Новые внутренние endpoint'ы (например, чтение рекомендаций или статусов ingest) добавляются в этот же сервис под /v1/.... Правило неизменно: только внутренняя сеть, только вызовы от Go-сервиса портала.