Iterative Retrieval-Generation (IRG): Как AI учится уточнять запросы и находить точные ответы
Если нужен онбординг в тему RAG, то вот тут можно прочитать про то как он устроен в общем.
Наверное последний пост про RAG :) Во-первых, потому что мы закончили эксперименты с RAG в AIST и добились вот 😍 такой реакции на нашего бота от медсоветника. Во-вторых, потому что накопилось знаний по другой, гораздо более прикладной теме.
Сегодня расскажу про Iterative Retrieval-Generation (IRG). Ключевая идея заложена в названии: модель ищет ответ на вопрос итеративно, уточняя запрос и улучшая результат. Уточнять запрос она может:
🧑💬 1. У пользователя
AI оценивает, хватает ли ему данных, чтобы выдать точный ответ. Если информации недостаточно, то он:
– Задаёт уточняющие вопросы пользователю, чтобы уточнить контекст.
– Обновляет поисковый запрос в базе данных с новыми деталями.
– Пересматривает найденные документы и формирует новый ответ.
– Если всё ещё не хватает деталей, цикл повторяется, пока AI не достигнет нужной точности.
🤖 2. У базы знаний / себя самой
AI работает в фоновом режиме, самостоятельно уточняя запрос, если видит, что данных мало или они неточные.
– Формирует начальный поисковый запрос по базе знаний.
– Проверяет, насколько информация полная и релевантная.
– Если данных не хватает, уточняет запрос и повторяет поиск по базе.
– Автоматически анализирует альтернативные документы и устраняет неточности.
Как модель "Проверяет, насколько информация полная"
Тут можно использовать несколько стратегий для оценки полноты данных:
• Покрытие запроса – сверяемся с исходным запросом, оценивая, все ли аспекты раскрыты. (Сравни ответ с вопросом и скажи, какие аспекты вопроса остались без ответа).
• Сравнение с эталонными источниками – проверяет найденные материалы на соответствие проверенным данным. (Сравни ответ со статьёй X и скажи, в каких аспектах ответ протеворечит содержимому статьи)
• Уверенность в ответе – если найденная информация содержит пробелы или противоречия, AI инициирует уточняющий поиск. (тот самый Fusion)
Где применимо? Везде, где контекст сложный и многослойный.
- Dev-to-Dev.
- Legal Tech.
- Финансовый анализ.
- Ну и фарма/med конечно :)