Разработчики MetaVision for 1C отказались от чанков в пользу трёх источников фактов
Разработчики MetaVision for 1C — программы для статического анализа конфигураций 1С с ИИ-агентом — рассказали, почему схема «чанки + embeddings + векторный поиск» провалилась на реальных кодовых базах. Вместо неё они построили три источника фактов в одной SQLite: SQL-индекс, полнотекстовый поиск FTS5 и вектора, добавив граф вызовов со скрытыми связями.
- Классический RAG на чанках почти не работает на реальных кодовых базах: агент отвечает «такого нет» там, где код есть.
- Вместо чанков команда собрала три источника фактов в одной SQLite: SQL-индекс, полнотекстовый FTS5 и вектора.
- К трём источникам добавлен граф вызовов со скрытыми связями между элементами кода.

Команда MetaVision for 1C, программы для статического анализа конфигураций 1С с ИИ-агентом, столкнулась с классической проблемой RAG: на реальных кодовых базах схема «чанки + embeddings + векторный поиск» почти не работает. Агент уверенно отвечает «такого нет» там, где это есть. Разработчики рассказали, почему чанки провалились на коде, и что они построили вместо них.
Почему чанки не работают на коде
При разбиении кода на чанки теряются связи между элементами: вызовы функций, зависимости, контекст использования. Векторный поиск по embeddings находит семантически похожие фрагменты, но не гарантирует, что нужный факт вообще попал в индекс. В результате агент не может ответить на вопрос, хотя ответ есть в кодовой базе.
Три источника фактов в одной SQLite
Вместо чанков команда построила три источника фактов, объединённых в одной базе SQLite:
- SQL-индекс — структурированные данные о коде.
- Полнотекстовый поиск FTS5 — точный поиск по тексту.
- Вектора — семантический поиск.
К ним добавлен граф вызовов, который фиксирует скрытые связи между элементами кода. Такой подход позволяет агенту находить факты, которые терялись при чанкинге.
Разработчики опубликовали статью с живыми примерами и описанием грабель, на которые наступили при переходе от классического RAG к новой архитектуре.
Для профиТехнические детали: архитектура, цифры, ссылки
Архитектура MetaVision for 1C: AI использует единую базу SQLite, в которой совмещены SQL-индекс, полнотекстовый поиск FTS5 и векторный поиск. Дополнительно строится граф вызовов со скрытыми связями. Подход противопоставлен классическому RAG на чанках с embeddings. В статье на Хабре приведены живые примеры и описание проблем, возникших при разработке.
Вопросы и ответы
- Почему классический RAG на чанках плохо работает с кодом?
- При разбиении на чанки теряются связи между элементами кода, и агент не находит факты, которые есть в базе.
- Какие три источника фактов используются в MetaVision for 1C?
- SQL-индекс, полнотекстовый поиск FTS5 и вектора, объединённые в одной SQLite.


