Как спроектировать схему извлечения данных и измерить её точность?
- Как оценить качество извлечения полей LLM?
Схема снижает ошибки, если сужает пространство ответов: перечисления вместо свободного текста, обязательные поля только там, где значение всегда есть, null как явный вариант «не указано», нормализованные форматы (дата ISO, сумма числом в копейках), понятные описания полей. Точность меряют на размеченном наборе по каждому полю: точное совпадение после нормализации, для списков — precision и recall, отдельно — доля выдуманных значений там, где в тексте ничего нет.
- Поле «причина» свободным текстом плохо сравнивается — лучше перечисление плюс комментарий
- Порядок полей важен: сначала извлечённые факты, потом выводы на их основе
- Средняя точность скрывает проблемное поле — смотрят по каждому
А ещё Ошибки по полям подсказывают, что править: описание поля, пример или схему
Подробно
Пример набора: 200 писем с ручной разметкой полей.
Метрики:
- по полю: доля точных совпадений;
- для поля-списка: precision и recall элементов;
- галлюцинации: значение заполнено, а в эталоне null;
- пропуски: в эталоне значение есть, а извлечён null;
- доля документов, где все поля верны.
Дизайн схемы:
- enum для категорий;
- отдельные поля вместо одного составного;
- явный null вместо пустой строки;
- поле для цитаты-источника значения, если нужна проверяемость.
Что хотят услышать
- Приёмы схемы: перечисления, null, форматы.
- Метрики по полям, галлюцинации и пропуски.
- Использование ошибок для улучшения.
Проверьте себя
Один верный вариант. Подумайте, потом откройте ответ.
Показать варианты и ответ
- ✗Делать все поля свободным текстом — модель сама выберет формат
- ✗Достаточно одной средней точности по всем полям
- ✓Перечисления и null в схеме, точность по каждому полю
- ✗Делать поля свободным текстом и считать одну среднюю точность по всем полям — пустую строку и null при этом можно не различать
Связанные вопросы
Разбор собеседования с sotto
После собеседования sotto разбирает разговор: оценка, каждый вопрос — хорошо, частично или слабо, чего не хватило в ответе и над чем поработать к следующему разу. Первые 30 минут бесплатно.