diff --git a/ARCHITECTURE.md b/ARCHITECTURE.md index 7f554ee..d4fc3cf 100644 --- a/ARCHITECTURE.md +++ b/ARCHITECTURE.md @@ -50,6 +50,11 @@ flowchart TD - **Postgres + pgvector** — один стор для метаданных, полнотекста (FTS с русской конфигурацией) и плотных векторов. Меньше движущихся частей для v1; масштаб — позже (Qdrant/Elasticsearch при необходимости). + **Статус: спроектировано, не подключено.** В репозитории есть + `src/praxis/index/schema.sql`; ретривера поверх него нет, и `psycopg` не + импортируется ни в одном модуле. Сегодня плотный поиск обслуживает + `src/praxis/retrieve/dense.py` — векторы в памяти с кэшем на диск и запасным + путём на чистой стандартной библиотеке. - Гибрид оправдан: BM25 ловит точные формулировки и номера статей, dense — смысл. ### 3. Retriever @@ -120,6 +125,7 @@ praxis/ 1. **Структурный чанкинг вместо токенного** — потому что единица права = пункт статьи. 2. **Проверка цитат как отдельный обязательный шаг** — доверие важнее «красивого» ответа. 3. **Один Postgres на старте** — минимум инфраструктуры, быстрый путь к рабочему v1. + Ставка сделана, но **не сыграна**: индекс пока в памяти (см. раздел 2). 4. **Догфудинг экосистемы DrobyshevDev** — **glia** подключена (LLM-режим: агент, инструмент поиска, trajectory). **mlango** подключён (трекаемый golden-eval через его подсистему evals — `integrations/mlango_eval`, `manage.py evaluate`).