Почему ИИ-агенты теряют документы и как это исправляет Postgres?

DeepLearning.AI 539 30 мин 6 мин 04.12.2025
Главное

В рамках нью-йоркской конференции AI Dev 25 представитель компании Tiger Data Джеки Лян выступил с докладом о скрытых проблемах поиска технической документации для ИИ-агентов. Спикер подробно разобрал, почему популярный векторный поиск часто совершает критические ошибки в контексте RAG-систем, и представил новое решение на базе СУБД Postgres — расширение pg_search. По его мнению, интеграция полнотекстового и семантического поиска внутри одной базы данных избавляет инженеров от инфраструктурного хаоса и кардинально повышает точность ответов искусственного интеллекта.

❌ Почему векторный поиск не справляется с документацией 2:33

Векторный поиск (vector search) стал негласным стандартом для систем генеративного искусственного интеллекта (RAG). Принцип его работы заключается в сравнении семантических математических представлений текста — векторов, создаваемых специальными эмбеддинг-моделями. Например, популярная модель OpenAI text embedding 3 small преобразует текст в массив из 1536 измерений. В этом многомерном пространстве похожие по смыслу понятия находятся близко друг к другу (как рок-группы Metallica и Slayer), а далекие — на значительном расстоянии.

Однако для технической документации исключительно векторный поиск, по словам Джеки Ляна, таит в себе скрытые уязвимости. Проблема заключается в том, что семантическая схожесть не означает точного совпадения на уровне конкретных слов. Модели эмбеддингов слишком снисходительны к версиям программного обеспечения и точным формулировкам. С точки зрения векторного пространства, фразы «Postgres SQL 17» и «Postgres SQL 16» или «Python 3.12» и «Python 3.11» практически идентичны.

Для ИИ-агентов и чат-ботов это оборачивается критическими ошибками:

🔍 Ограничения ключевых слов и сила гибридного поиска 6:52

Противоположностью векторного поиска является классический поиск по ключевым словам (keyword search), используемый в традиционных поисковых системах вроде Google. Он идеально справляется с точными названиями методов API, параметрами конфигурации и номерами версий, но совершенно не понимает контекст и синонимы. Например, такой алгоритм не догадается, что слова «гнев» и «ярость» близки по смыслу, или что «настройка базы данных» эквивалентна «оптимизации производительности».

Очевидным решением становится гибридный поиск (hybrid search), объединяющий преимущества обоих подходов. В такой схеме векторный поиск отвечает за понимание концептов, синонимов и контекста, а алгоритм ключевых слов (традиционно BM25) обеспечивает ювелирную точность совпадения терминов.

Для объединения результатов применяется специальный алгоритм RRF (Reciprocal Rank Fusion). Джеки Лян привел пример: при запросе «как настроить max_connections в Postgres 17» векторный поиск может вернуть руководство для Postgres 16 или данные по СУБД MySQL, поскольку они семантически близки. Гибридный поиск благодаря жесткому фильтру по ключевым словам выведет на первое место именно нужный документ для 17-й версии Postgres.

🏗️ Кошмар синхронизации инфраструктуры и альтернатива в лице Postgres 10:06

Построение гибридного поиска в классической архитектуре, как утверждает Лян, превращается для инженеров в инфраструктурный кошмар. Стандартная схема выглядит избыточно: сама документация и данные пользователей хранятся в реляционной СУБД (например, Postgres), оттуда данные через сложный конвейер (ETL) синхронизируются с векторной базой данных (Pinecone, Weaviate, Quadrant) для семантического поиска и одновременно с Elasticsearch или OpenSearch — для поиска по ключевым словам.

Спикер, развивающий собственный поисковый ИИ-стартап, признался, что лично столкнулся со всеми недостатками такой архитектуры. Среди главных рисков распределенной системы он выделил:

🐔 Эволюция поиска в Postgres: от TS_rank к алгоритму BM25 12:32

На самом деле механизмы текстового поиска встроены в Postgres с версии 8.3, вышедшей еще в 2005 году. Инструменты TS_vector и TS_query позволяют токенизировать текст, удалять стоп-слова и выполнять стемминг (приведение слов к корню). Однако встроенный алгоритм ранжирования TS_rank, по мнению Ляна, безнадежно устарел и плохо масштабируется.

TS_rank считает только частоту слов и их позицию, игнорируя обратную частоту документов (IDF). Это делает его уязвимым к так называемому «набиванию ключевыми словами» (keyword stuffing). Спикер продемонстрировал это на комичном примере шуточного научного доклада «Chicken Chicken Chicken», где текст состоял исключительно из одного этого слова. В системе TS_rank такой документ получил бы высочайший балл релевантности, тогда как современный индустриальный стандарт BM25 штрафует за избыточное повторение одинаковых слов и учитывает редкость терминов. Кроме того, BM25 нормально обрабатывает документы разной длины, уравнивая шансы стостраничного фолианта и короткой заметки.

🚀 Три шага к гибридному поиску с расширением pg_search 16:19

Чтобы решить проблему качественного ранжирования, компания Tiger Data разработала плагин pg_search (PG text search) для Postgres. Как иронично заметил штатный инженер-разработчик компании Ти-Джей (TJ), они создали «глубоко неоригинальную архитектуру». Это огромный плюс для мира баз данных, поскольку решение заимствует надежные, проверенные временем принципы Lucene и Tantivy, используемые в Elasticsearch.

Связка pg_search и плагина для высокопроизводительного векторного поиска pg_vector_scale позволяет реализовать полноценный гибридный поиск внутри одной СУБД. Настройка системы, по словам спикера, занимает всего три шага на чистом SQL:

Формула RRF (1 / (K + rank), где константа K=60) взята из классического исследования Google и Университета Ватерлоо 2009 года. Этот метод вычислительно прост, но крайне эффективен: документы, занявшие высокие позиции в обоих типах поиска, гарантированно поднимаются на самый верх итоговой выдачи.

🛠️ Преимущества единой системы и ответы на вопросы 22:43

Главными аргументами в пользу переноса гибридного поиска в Postgres Лян называет радикальное упрощение архитектуры и атомарность обновлений. Данные обновляются мгновенно во всех индексах, исключая рассинхронизацию. Инженерам становятся доступны все привычные мощные инструменты Postgres: фильтрация по метаданным, объединение таблиц (JOIN), работа с JSONB, геопространственными данными и временными рядами. Технология уже доступна в превью-режиме на платформе Tiger Cloud.

Отвечая на вопросы слушателей из зала, Лян уточнил важные детали:

💬 Цитаты

«Управлять отдельными базами данных и конвейерами синхронизации — это кошмар.»

Джеки Лян 10:06

«Мы предоставляем наиболее точные результаты до того, как большая языковая модель начнет генерацию.»

Джеки Лян 29:31
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
RAG (Retrieval-Augmented Generation)
Метод улучшения ответов ИИ путем извлечения актуальных данных из внешних источников перед генерацией текста.
BM25
Классический алгоритм поиска по ключевым словам, оценивающий релевантность документа на основе частоты терминов.
RRF (Reciprocal Rank Fusion)
Алгоритм объединения нескольких поисковых выдач (например, текстовой и векторной) в один отранжированный список.
Сстемминг
Процесс отсечения от слова окончаний и суффиксов для нахождения его основы или корня.
📊 Цифры
🗓 Хронология
  1. 2005 В СУБД Postgres версии 8.3 внедряются базовые инструменты текстового поиска TS_vector и TS_query.
  2. 2009 Ученые из Google и Университета Ватерлоо публикуют математическую формулу алгоритма ранжирования RRF.
  3. Май 2026 Компания Tiger Data анонсирует выпуск плагина pg_search для продвинутого гибридного поиска.
⚖️ Другая сторона
Искусственный интеллект Джеки Лян PostgreSQL гибридный поиск