Рубрика «bm25»

Первый вариант системы выглядел вполне стандартно: документы разбиваются на фрагменты, для них считаются embeddings, пользователь задаёт вопрос, несколько наиболее подходящих фрагментов отправляются в LLM вместе с запросом. Модель формулирует ответ — на первых тестах этого было достаточно.

Проблемы начались на вопросах, которые на первый взгляд мало чем отличаются друг от друга:

  • Какая пеня установлена в договоре № 14/24.7645?

  • Кто из арендаторов не заплатил за май?

  • А у него предусмотрена индексация?

  • Контрагент предлагает добавить пеню в 0,01%. Насколько это существенно?

Читать полностью »

Недавно я делал учебный проект про автоматизацию документирования инцидентов. Поначалу планы были грандиозными: инциденты, таймлайны, интеграции с мониторингами, чатами, постмортемы, подсказки дежурным инженерам.

Но довольно быстро стало понятно, что с временными и ресурсными ограничениями лучше не пытаться написать маленький PagerDuty. Поэтому я сузил задачу до более реалистичного ядра: локального RAG-сервиса, который ищет по документации, ранбукам и коду, а затем передаёт найденный контекст в LLM.

Так появился llmortem — FastAPI-сервис, который можно подключить к OpenWebUI как OpenAI-compatible backend.

Читать полностью »

Введение

Добрый день. Сегодня я расскажу о том, как я за 2 месяца с полного нуля создал доменную RAG систему с корпусом в 20+ книг. В статье затрону проблемы парсинга данных (особенно PDF документов, с которыми приходилось иметь дело), чанкинга, создания и индексации эмбеддингов, а также самого интересного – ретривера. Расскажу о latency, трейд-оффах, и сложностях реализации подобных систем локально на ноутбуке (хоть и «игровом») без использования API LLM.

Вся система делалась мной самостоятельно без использования LangChain Читать полностью »

Вы внедрили RAG в продакшен. Embedding-модель занимает топовые позиции на MTEB, векторная база настроена, chunking оптимизирован. Всё работает. Пока пользователи не начинают жаловаться: "Система не находит очевидные документы". Вы проверяете — документы есть, запросы адекватные. В чём дело?

Исследователи из Google DeepMind нашли ответ в статье "On the Theoretical Limitations of Embedding-Based Retrieval", и он неприятный. Оказывается, embedding-модели имеют фундаментальный математический потолок — и никакие данные, никакое обучение, никакой размер модели его не пробьют. Это не баг. Это геометрия.

Читать полностью »

Метод генерации с дополнением извлечения (RAG) стал популярным способом связывания больших языковых моделей (LLM) с внешними источниками знаний. Системы RAG обычно используют модель эмбеддингов для кодирования документов в корпусе знаний и выбирают те, которые наиболее соответствуют запросу пользователя.

Дисклеймер 1: это вольный перевод заметкиЧитать полностью »

Как найти иголку в стоге сена? Или обозор Retrieval Algorithms - 1

Появление трансформеров, а впоследствии LLM (Large Language Models) привело к активному распространению чат-ботов и различных ассистентов помогающих в получении информации или генерации контента. Но несмотря на то что LLM способны по запросу генерировать человекоподобные тексты, они подвержены галлюцинациямЧитать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js