Все шаблоны

ИИ

Поиск по документам

Загрузка, разбиение, эмбеддинги и ответ со ссылками

Сложный По подпискеragвекторыpgvectorпоиск

Ответы по вашим документам: файл загружается, режется на фрагменты, превращается в векторы и ищется по смыслу. В ответе — ссылки на исходные фрагменты, чтобы можно было проверить.

Что внутри

  • Разбиение с перекрытием и сохранением заголовков
  • Векторный поиск на pgvector — без отдельной базы
  • Ответ со ссылками на исходные фрагменты
  • Переиндексация без простоя

Что добавит в проект

Поверх общей базы — она уже даёт авторизацию, базу и интерфейс.

Таблицы в базе3

documentsdocument_chunksdocument_embeddings

Пакеты npm1

pgvector

Маршруты2

/documents/api/rag/search

Переменные окружения1

EMBEDDING_MODEL
EMBEDDING_MODEL
Модель эмбеддингов — менять только с переиндексацией

Связи

Подтянет за собой

Разбор архитектуры

Векторы лежат в том же Postgres через pgvector: отдельная векторная база — это второй источник правды, который надо синхронизировать, и на объёмах меньше миллиона фрагментов она не окупается. Размерность вектора привязана к модели, поэтому смена модели эмбеддингов требует полной переиндексации — в шаблоне это отдельная команда, а не молчаливая поломка поиска.

Общая база

Пустое, но рабочее приложение: авторизация, база, UI-кит и деплой уже собраны и связаны между собой. Модули не переписывают его файлы — они добавляют свои и регистрируются в готовых точках расширения, поэтому их можно ставить в любом сочетании.

Next.js 16 (App Router)TypeScriptPostgreSQL + Drizzle ORMAuth.jsTailwind CSS + shadcn/uiDocker