Vespa.AI спонсировал этот пост.
Поизводимый генератор (RAG) имеет важное значение для большинства приложений для большинства языковых моделей (LLM), поскольку оно вносит информацию, конкретную компанию, в процесс генерации. Если вы планируете развернуть генеративный ИИ в своей организации, вам почти наверняка понадобится тряпка. Когда все сделано правильно, это повышает точность, снижает галлюцинации и позволяет LLMS разум по сравнению с вашими собственными запатентованными данными. Концепция звучит просто: найдите информацию, относящуюся к запросу пользователя, и передать ее LLM, чтобы она могла генерировать лучший ответ. Но, как всегда, дьявол в деталях.
Рост генеративного ИИ, особенно агентского искусственного интеллекта, подталкивает тряпку в более требовательные случаи использования предприятия, и крупные организации сталкиваются с серьезной проблемой масштабирования. Рэг в масштабе означает поиск машинного скорости по сравнению с огромными, разнообразными наборами данных, а также быстрой, эффективной координацией между поиском и генерацией. По мере роста объемов данных сохраняются результаты актуальными, свежими и быстрыми становится все более жестким (и дорогим). Это еще более верно, когда вы обслуживаете много пользователей одновременно или поддерживаете взаимодействие с множественными агентами, которые необходимо провести глубокие, многоэтапные исследования.
Решение проблемы актуальности
Как именно вы находите наиболее актуальную информацию, когда у вас есть миллионы, если не миллиарды документов, и вам нужно обслуживать тысячи, если не миллионы, пользователей, все в десятой части секунды? Эта задача упрощена посредством пошаговой уточнения:
Шаг 1: Определите свой блок для поиска
Ваше подразделение для поиска (часто называемое «кусок») имеет решающее значение в тряпке. Это единица информации, которую вы передадите в LLM. Вы будете искать эти подразделения, чтобы найти лучшую информацию, чтобы предоставить ваш LLM. Получение правильно влияет на точность поиска, задержку и, в конечном счете, на качество ответов LLM.
Это не только пределы токена; Речь идет о выравнивании размера и структуры чанка с типами вопросов, которые будут задавать пользователи. Например, запросы на уровне фактов могут извлечь выгоду из более мелких, точных кусков, в то время как более широкие или более широкие запросы на основе мышлений могут потребовать более длительных промежутков текста для сохранения контекста. Куски должны уважать семантические границы, такие как абзацы или элементы списка, а перекрывающиеся окна могут помочь сохранить непрерывность в течение перерывов. Добавление метаданных (например, источник, раздел, дата) также поддерживает лучшую фильтрацию и рейтинг позже в трубопроводе. Там нет одноразмерного правила-все правило-эффективный оттенка зависит от вашего контента, шаблонов запросов и масштаба-поэтому рассматривайте это как решение о дизайне, которое стоит тестировать и настройку.
Шаг 2: Выберите стратегию поиска
Ваша стратегия поиска определяет, как вы находите соответствующие куски для перехода к LLM. Это ядро того, что заставляет тряпку работать. Должны ли вы использовать семантическое, ключевое слово или гибридный подход, чтобы найти лучшие документы или куски? Какая модель встраивания подходит вашему домену? Эти решения формируют то, как ваша система понимает и поверхности соответствующей информации.
Семантическое поиск (с использованием векторных внедрений) превосходит при захвате значения, но методы ключевых слов, такие как BM25 (лучшее сопоставление 25), могут превзойти точность, когда имеют точные термины или фразы, специфичные для домена. Гибридный поиск — сочетание обоих — часто дает лучшее из обоих миров. Ваш выбор модели встраивания также имеет значение: легкие модели быстрее, но могут потерять нюансы, в то время как более крупные модели предлагают более богатую семантику, но при более высокой стоимости и задержке. Поиск — это не только поиск соответствующего контента — речь идет о скорости и масштабировании вашего приложения. Уравновешивание точности, пропускной способности и стоимости являются ключевыми, особенно когда ваши пользователи (или агенты) зависят от быстрых, надежных ответов в миллиардах документов.
Шаг 3: Определите стратегию рейтинга
Рейтинг решает, какие извлеченные куски передаются в LLM и в каком порядке. Это ваш второй шанс улучшить актуальность, прежде чем модель начнет генерировать. Приличное раствор для тряпки извлечет много потенциально полезных документов, но не все из них заслуживают того, чтобы быть показанным в LLM. Чтобы сделать этот звонок, вам нужен способ объединить различные сигналы оценки: совпадение ключевых слов, семантическое сходство, фильтры метаданных и многое другое. Выяснить, как взвесить эти сигналы вручную, почти невозможно, особенно в масштабе. Вот почему большинство Rag Systems, готовые к производству, используют ранжирование машинного обучения для оптимизации качества на основе реального поведения пользователей или обратной связи. Многофазные ранжирование трубопроводов могут уточнить результаты с помощью последовательных фильтров и бомбардиров, но даже простая образованная модель может значительно улучшить, какой контент попадает в подсказку — и насколько хорошо реагирует LLM.
Шаг 4: Обратите внимание на влияние множественных вариантов использования
Rag Systems редко обслуживает только один тип пользователя или рабочего процесса. Некоторые запросы поступают от людей, которым нужны быстрые, читаемые ответы; Другие поступают из агентов ИИ или слоев оркестровки, которые могут переносить большую задержку в обмен на более глубокие, более богатые контекстом результаты. Агентное поиск — где LLMS выполняет поиск автономно — имеет отличные характеристики, чем поиск человека. LLMS может справиться с большим контекстом, не возражать, более медленные ответы и могут задавать многие запросы в последовательности, чтобы решить одну задачу. Проектирование системы, которая обслуживает как людей, так и машин из одного бэкэнда, требует компромиссов в задержке, глубине ранжирования и объема поиска. Ключ состоит в том, чтобы признать, что не все запросы — или пользователи — равны, и ваша архитектура должна быть достаточно гибкой, чтобы адаптироваться в зависимости от вызова.
Поддержка платформы поиска ИИ
Чтобы поддержать сложные рабочие нагрузки в масштабе, платформа поиска ИИ должна делать гораздо больше, чем базовое ключевое слово или векторное соответствие. Он должен разумно обрабатывать масштабные, постоянно растущие корпорации документов, включая очень большие или неструктурированные документы, которые нельзя передавать оптом для LLM. Это означает, что поддержка автоматического кунгинга разбивает большие документы на значимые, извлекаемые подразделения и ранжирование этих кусков, а также целых документов, чтобы обеспечить возвращение только наиболее релевантного контента.
Платформа также должна масштабироваться горизонтально для обработки высоких объемов запросов, поддерживать поиск с низкой задержкой даже под нагрузкой и разрешать частые обновления как для содержания, так и логики ранжирования без повторного набора данных. Индексационные трубопроводы должны быть достаточно гибкими, чтобы включить метаданные, встраиваемые и пользовательские функции, и достаточно быстро, чтобы сохранить систему свежей с минимальным задержкой.
В конечном счете, платформа должна достичь тщательного баланса между производительности, точностью и адаптивностью, чтобы она мог служить как в реальном времени, так и в реальном времени, так и сложных агентских рабочих процессах, все из одной и той же инфраструктуры.
Vespa создал Rag Blueprint, основанный на том, что мы узнали из развертывания тряпки в масштабе. Доступный в виде бесплатного ноутбука Python и применения примера, он более подробно рассматривает реализацию этих точек, предлагая практическое модульное рецепт, который охватывает ключевые решения для дизайна-такие как Chunking, поиск, ранжирование и настройку производительности-основанные на реальном опыте. Независимо от того, начинаете ли вы или оптимизируете существующую систему, Blueprint предоставляет прочную основу для создания, готовых к производству, масштабируемым тряпичным приложениям.
Vespa.AI-это платформа для создания приложений, управляемых искусственным интеллектом для поиска, рекомендаций, персонализации и тряпки. Он обрабатывает большие объемы данных и высокие показатели запросов, предлагая эффективные данные, вывод и управление логикой. Доступно как управляемый сервис, так и с открытым исходным кодом. Узнайте больше последних из Vespa.AI Trending Stories YouTube.com/thenewstack Tech, быстро движется, не пропустите эпизод. Подпишитесь на наш канал YouTube, чтобы транслировать все наши подкасты, интервью, демонстрации и многое другое. Группа подпишитесь с эскизом. Кай Борген — инженер по техническому продукту, работающий в Vespa AI. Имея опыт работы как в бизнесе, так и в инженерии, его внимание заключается в предоставлении технической экспертизы для бизнес -функций, гарантируя, что организации остаются выровненными, эффективными и опередив кривой. Подробнее от Кай Боргена