Поделиться через


Шаг 5 (извлечение). Как отладить качество извлечения

На этой странице описывается, как определить первопричину проблем извлечения. Используйте эту страницу, если анализ первопричин указывает на первопричину Improve Retrieval.

Качество извлечения, возможно, является самым важным компонентом приложения RAG. Если наиболее релевантные блоки не возвращаются для данного запроса, LLM не имеет доступа к необходимым сведениям, чтобы generate высококачественный ответ. Плохое извлечение может привести к неуместным, неполным или галлюцинированным выходным данным. На этом шаге требуется вручную выполнить анализ базовых данных. Платформа агента ИИ Мозаики с жесткой интеграцией между платформой данных (включая Unity Catalog и векторный поиск), а также отслеживание экспериментов с MLflow (включая оценку LLM и трассировку MLflow) упрощает устранение неполадок.

Instructions

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

  1. Откройте записную книжку B_quality_iteration/01_root_cause_quality_issues.
  2. Используйте запросы для загрузки трассировок MLflow записей, которые имели проблемы с качеством извлечения.
  3. Для каждой записи вручную проверьте извлеченные блоки. Если они доступны, сравните их с документами извлечения на основе истины.
  4. Поиск шаблонов или распространенных проблем между запросами с низким качеством извлечения. Например:
    • Соответствующая информация отсутствует в векторной базе данных полностью.
    • Недостаточное количество блоков или документов, возвращаемых для запроса на получение.
    • Блоки слишком малы и недостаточно контекста.
    • Блоки слишком большие и содержат несколько, не связанных тем.
    • Модель внедрения не может записывать семантические сходства для терминов, относящихся к домену.
  5. Основываясь на обнаруженной проблеме, гипотеза о потенциальных первопричинах и соответствующих исправлениях. Рекомендации см. в разделе "Распространенные причины плохого качества извлечения".
  6. Выполните действия, описанные в реализации и оценке изменений для реализации и оценки потенциального исправления. Это может привести к изменению конвейера данных (например, настройке размера блока или попытке другой модели внедрения) или изменению цепочки RAG (например, реализации гибридного поиска или получения дополнительных блоков).
  7. Если качество извлечения по-прежнему не удовлетворено, повторите шаги 4 и 5 для следующих наиболее перспективных исправлений до достижения требуемой производительности.
  8. Повторно выполните анализ первопричин, чтобы определить, имеет ли общая цепочка какие-либо дополнительные первопричины, которые следует устранить.

Распространенные причины плохого качества извлечения

В следующих table перечислены шаги отладки и возможные исправления распространенных проблем извлечения. Исправления классифицируются по компонентам:

  • Конвейер данных
  • Конфигурация цепочки
  • Цепной код

Компонент определяет, какие шаги следует выполнить в шаге реализации и оценки изменений .

Проблема извлечения Шаги отладки Возможное исправление
Блоки слишком малы — Проверьте блоки для неполных сведений об отрезке. - Конвейер данных увеличивает размер блока или перекрывается.
- Конвейер данных попробуйте другую стратегию блокирования.
Куски слишком большие — Проверьте, содержат ли извлеченные блоки несколько, не связанных разделов. - Уменьшение размера блока конвейера данных.
- Конвейер данных улучшает стратегию блокирования, чтобы избежать сочетания несвязанных разделов (например, семантического фрагментирования).
Блоки не имеют достаточно информации о тексте, из которого они были взяты — оценка отсутствия контекста для каждого блока вызывает путаницу или неоднозначность в полученных результатах. - Конвейер данных попробуйте добавить метаданные и заголовки к каждому блоку (например, заголовки разделов).
- Конфигурация цепочки извлекает больше блоков и использует LLM с большим размером контекста.
Модель внедрения не точно понимает домен или ключевые фразы в запросах пользователей — Проверьте, извлекаются ли семантические блоки для того же запроса. - Конвейер данных пытается использовать различные модели внедрения.
- Настройка цепочки попробуйте гибридный поиск.
- Результаты извлечения по цепочке кода поверх и повторного ранжирования. Только веб-канал переорангового результата в контексте LLM.
- Модель внедрения конвейера данных на основе конкретных доменных данных.
Соответствующие сведения, отсутствующие в базе данных векторов — Проверьте, отсутствуют ли соответствующие документы или разделы из векторной базы данных. - Конвейер данных добавляет более релевантные документы в векторную базу данных.
- Конвейер данных улучшает анализ документов и извлечение метаданных.
Запросы на получение плохо разработаны — Если запросы пользователей используются непосредственно для семантического поиска, анализируйте эти запросы и проверьте неоднозначность или отсутствие конкретности. Это может произойти легко в многотуровых беседах where сырой запрос пользователя ссылается на предыдущие части беседы, что делает его непригодным для использования непосредственно в качестве запроса извлечения.
— проверьте, соответствуют ли термины запроса терминологии, используемой в корпусе поиска.
- Методы расширения или преобразования в цепочке кода (например, при выполнении пользовательского запроса преобразуются до семантического поиска).
- Код цепочки добавляет понимание запросов для идентификации намерений и сущностей (например, используйте LLM для извлечения свойств для использования в фильтрации метаданных).

Следующий шаг

Если вы также определили проблемы с качеством создания, перейдите к шагу 5 (поколение). Как отладить качество создания.

Если вы считаете, что вы устранили все выявленные проблемы, перейдите к шагу 6. Создание и оценка исправлений качества в агенте ИИ.

< Предыдущий: шаг 5. Определение первопричин проблем с качеством

Далее: шаг 5.2. Качество создания отладки >