Flownix
Разделы
На этой странице

Семантический поиск (RAG)

Как работает семантический индекс проекта и чем он отличается от поиска по словам.

У проекта есть собственный семантический индекс: всё, что вы пишете в нодах, документах и комментариях, автоматически превращается в векторы и ищется по смыслу, а не по совпадению слов. Модель мультиязычная: язык запроса не обязан совпадать с языком проекта, русские тексты ищутся так же хорошо, как английские. Эмбеддинги считаются локально на CPU — содержимое проекта не уходит во внешние AI-сервисы.

Что это значит на практике

Ничего не нужно запускать

Индекс обновляется сам, как только вы правите ноду, документ или комментарий. Отдельной команды «переиндексировать» нет, потому что она не нужна.

Язык запроса не важен

Русский вопрос находит английский текст и наоборот. Заводить отдельный проект под каждый язык не нужно.

Содержимое не уходит наружу

Индекс считается на вашей стороне и не отправляется ни в какие внешние AI-сервисы. Это важно, если в тикетах есть то, что нельзя показывать третьим лицам.

Видно, что уже в индексе

rag_status показывает, сколько проиндексировано, что в очереди и что не удалось. Свежесозданный проект показывает ноль — это нормально, он наполняется по мере работы.

Из агента — через MCP

Три инструмента закрывают весь сценарий: проверить индекс, найти похожее, поднять готовый контекст в промпт.

Типичный порядок вызовов
rag_status(project_id)
 состояние индекса: сколько чанков, размерность, что не синхронизировано

rag_query(project_id, "как устроена авторизация", k=5)
 ранжированные по смыслу фрагменты нод и комментариев

rag_context(project_id, "авторизация", max_chars=8000)
 собранный Markdown-блок, который можно сразу вставить в промпт

Из интерфейса

  • Индикатор состояния у ноды и у каждого комментария: в очереди, индексируется, синхронизировано, ошибка.
  • Ручная пересборка индекса — для одной ноды или для всего проекта целиком.
  • Живой прогресс синхронизации проекта: сервер шлёт обновления потоком, страницу обновлять не нужно.
  • История синхронизаций с отметками времени и причинами ошибок.