Шаг 5 (извлечение). Как отладить качество извлечения
На этой странице описывается, как определить первопричину проблем извлечения. Используйте эту страницу, если анализ первопричин указывает на первопричину Improve Retrieval
.
Качество извлечения, возможно, является самым важным компонентом приложения RAG. Если наиболее релевантные блоки не возвращаются для данного запроса, LLM не имеет доступа к необходимым сведениям, чтобы generate высококачественный ответ. Плохое извлечение может привести к неуместным, неполным или галлюцинированным выходным данным. На этом шаге требуется вручную выполнить анализ базовых данных. Платформа агента ИИ Мозаики с жесткой интеграцией между платформой данных (включая Unity Catalog и векторный поиск), а также отслеживание экспериментов с MLflow (включая оценку LLM и трассировку MLflow) упрощает устранение неполадок.
Instructions
Выполните следующие действия, чтобы устранить проблемы с качеством извлечения:
- Откройте записную книжку B_quality_iteration/01_root_cause_quality_issues.
- Используйте запросы для загрузки трассировок MLflow записей, которые имели проблемы с качеством извлечения.
- Для каждой записи вручную проверьте извлеченные блоки. Если они доступны, сравните их с документами извлечения на основе истины.
- Поиск шаблонов или распространенных проблем между запросами с низким качеством извлечения. Например:
- Соответствующая информация отсутствует в векторной базе данных полностью.
- Недостаточное количество блоков или документов, возвращаемых для запроса на получение.
- Блоки слишком малы и недостаточно контекста.
- Блоки слишком большие и содержат несколько, не связанных тем.
- Модель внедрения не может записывать семантические сходства для терминов, относящихся к домену.
- Основываясь на обнаруженной проблеме, гипотеза о потенциальных первопричинах и соответствующих исправлениях. Рекомендации см. в разделе "Распространенные причины плохого качества извлечения".
- Выполните действия, описанные в реализации и оценке изменений для реализации и оценки потенциального исправления. Это может привести к изменению конвейера данных (например, настройке размера блока или попытке другой модели внедрения) или изменению цепочки RAG (например, реализации гибридного поиска или получения дополнительных блоков).
- Если качество извлечения по-прежнему не удовлетворено, повторите шаги 4 и 5 для следующих наиболее перспективных исправлений до достижения требуемой производительности.
- Повторно выполните анализ первопричин, чтобы определить, имеет ли общая цепочка какие-либо дополнительные первопричины, которые следует устранить.
Распространенные причины плохого качества извлечения
В следующих table перечислены шаги отладки и возможные исправления распространенных проблем извлечения. Исправления классифицируются по компонентам:
- Конвейер данных
- Конфигурация цепочки
- Цепной код
Компонент определяет, какие шаги следует выполнить в шаге реализации и оценки изменений .
Проблема извлечения | Шаги отладки | Возможное исправление |
---|---|---|
Блоки слишком малы | — Проверьте блоки для неполных сведений об отрезке. |
-
Конвейер данных увеличивает размер блока или перекрывается. - Конвейер данных попробуйте другую стратегию блокирования. |
Куски слишком большие | — Проверьте, содержат ли извлеченные блоки несколько, не связанных разделов. |
-
Уменьшение размера блока конвейера данных. - Конвейер данных улучшает стратегию блокирования, чтобы избежать сочетания несвязанных разделов (например, семантического фрагментирования). |
Блоки не имеют достаточно информации о тексте, из которого они были взяты | — оценка отсутствия контекста для каждого блока вызывает путаницу или неоднозначность в полученных результатах. |
-
Конвейер данных попробуйте добавить метаданные и заголовки к каждому блоку (например, заголовки разделов). - Конфигурация цепочки извлекает больше блоков и использует LLM с большим размером контекста. |
Модель внедрения не точно понимает домен или ключевые фразы в запросах пользователей | — Проверьте, извлекаются ли семантические блоки для того же запроса. |
-
Конвейер данных пытается использовать различные модели внедрения. - Настройка цепочки попробуйте гибридный поиск. - Результаты извлечения по цепочке кода поверх и повторного ранжирования. Только веб-канал переорангового результата в контексте LLM. - Модель внедрения конвейера данных на основе конкретных доменных данных. |
Соответствующие сведения, отсутствующие в базе данных векторов | — Проверьте, отсутствуют ли соответствующие документы или разделы из векторной базы данных. |
-
Конвейер данных добавляет более релевантные документы в векторную базу данных. - Конвейер данных улучшает анализ документов и извлечение метаданных. |
Запросы на получение плохо разработаны | — Если запросы пользователей используются непосредственно для семантического поиска, анализируйте эти запросы и проверьте неоднозначность или отсутствие конкретности. Это может произойти легко в многотуровых беседах where сырой запрос пользователя ссылается на предыдущие части беседы, что делает его непригодным для использования непосредственно в качестве запроса извлечения. — проверьте, соответствуют ли термины запроса терминологии, используемой в корпусе поиска. |
-
Методы расширения или преобразования в цепочке кода (например, при выполнении пользовательского запроса преобразуются до семантического поиска). - Код цепочки добавляет понимание запросов для идентификации намерений и сущностей (например, используйте LLM для извлечения свойств для использования в фильтрации метаданных). |
Следующий шаг
Если вы также определили проблемы с качеством создания, перейдите к шагу 5 (поколение). Как отладить качество создания.
Если вы считаете, что вы устранили все выявленные проблемы, перейдите к шагу 6. Создание и оценка исправлений качества в агенте ИИ.
< Предыдущий: шаг 5. Определение первопричин проблем с качеством