Дополненное поколение (RAG)
Узнайте, как Retrieval Augmented Generation (RAG) улучшает модели искусственного интеллекта, интегрируя надежные внешние данные в режиме реального времени для получения точных и актуальных ответов.
Retrieval-Augmented Generation (RAG) - это передовая система искусственного интеллекта, разработанная для повышения качества, точности и релевантности ответов, генерируемых большими языковыми моделями (LLM). Она работает за счет подключения генеративной модели к внешней актуальной базе знаний. Это позволяет модели "извлекать" релевантную информацию перед генерацией ответа, эффективно опираясь на проверяемые факты и снижая вероятность галлюцинаций или устаревших ответов. RAG делает LLM более надежными при решении наукоемких задач, предоставляя им доступ к специализированной или служебной информации, которой они не обучались.
Как работает генерация с расширением поиска
Процесс RAG можно разделить на два основных этапа: поиск и генерация. Этот двухэтапный подход сочетает в себе сильные стороны информационно-поисковых систем и генеративных моделей.
- Поиск: Когда пользователь дает подсказку или задает вопрос, система RAG сначала использует подсказку для поиска релевантной информации в источнике знаний. Этот источник обычно представляет собой векторную базу данных, содержащую вкрапления документов, статей или других данных. Компонент ретривера определяет и извлекает наиболее релевантные фрагменты текста или данных на основе запроса пользователя. Необязательным, но мощным шагом является использование ретранслятора для уточнения полученных результатов, обеспечивающего передачу только наиболее контекстуально важной информации.
- Дополненная генерация: Полученная информация объединяется с исходной подсказкой пользователя. Эта новая, обогащенная информация поступает в генеративную модель ИИ (LLM). Модель использует этот дополнительный контекст, чтобы сформулировать полный, точный и релевантный ответ. Для создания и управления этими сложными конвейерами RAG обычно используются такие фреймворки, как LangChain и LlamaIndex.
Применение и примеры
RAG особенно полезен в сценариях, требующих фактической точности и доступа к динамическим или специализированным данным.
- Усовершенствованные системы ответов на вопросы: Чатбот поддержки клиентов может использовать RAG для доступа ко всей базе знаний компании - руководствам по продуктам, руководствам по устранению неполадок и нормативным документам. Когда клиент спрашивает: "Какова гарантийная политика для моего продукта?", система извлекает последний гарантийный документ и использует его для предоставления точного, актуального ответа, что значительно лучше, чем общие ответы.
- Создание контента и исследования: Финансовый аналитик может использовать инструмент на базе RAG для составления рыночной сводки. Инструмент может получать последние финансовые отчеты, новости рынка и данные о динамике акций из надежных источников, таких как Bloomberg или Reuters. Затем LLM синтезирует эту информацию в целостный отчет, снабженный ссылками, что значительно ускоряет процесс исследования.
RAG в сравнении со смежными понятиями
Полезно отличать RAG от других методов, используемых для повышения успеваемости LLM:
- Тонкая настройка: Тонкая настройка адаптирует предварительно обученную модель, продолжая обучение на меньшем, специализированном наборе данных, который изменяет внутренние веса модели. В отличие от RAG, модель не обращается к внешним данным во время вывода. Тонкая настройка идеально подходит для обучения модели новому стилю или навыку, в то время как RAG лучше подходит для включения фактических знаний. Эти подходы также могут дополнять друг друга.
- Разработка подсказок: Это ручной процесс тщательной разработки подсказок для получения желаемого результата от LLM. RAG частично автоматизирует этот процесс, программно добавляя ("дополняя") подсказки полученными данными, вместо того чтобы полагаться на человека, который вручную предоставляет весь контекст.
- Оперативное обогащение: Хотя это и похоже на RAG, обогащение подсказок - более широкое понятие. Оно может включать в себя добавление контекста из истории пользователя или потока разговоров. RAG - это особый тип обогащения, ориентированный на извлечение фактической информации из внешней базы знаний для обоснования ответа модели.
RAG в области компьютерного зрения
Хотя RAG в основном используется в обработке естественного языка (NLP), его основная концепция изучается в задачах компьютерного зрения (CV). Например, система может извлекать релевантную визуальную информацию для создания или анализа изображений. Это может включать поиск похожих изображений из большого набора данных для повышения эффективности модели обнаружения объектов, например Ultralytics YOLO. Управление такими сложными моделями и наборами данных упрощается с помощью таких платформ, как Ultralytics HUB, которые могут послужить основой для будущих приложений мультимодальных моделей, использующих RAG. Вы можете ознакомиться с соответствующей реализацией в нашем блоге о совершенствовании ИИ с помощью RAG и компьютерного зрения.