Sakhanda Wire
NVDA $235.30 +1.92% MSFT $514.68 +0.37% GOOGL $344.40 +1.82% META $730.69 +0.66% AMZN $251.26 +1.22%
← До новин

Datalab представляє OmniExtractBench, щоб усунути упередженість і непрозорість у бенчмарках вилучення даних

Datalab випустила OmniExtractBench — відкритий бенчмарк для структурованого вилучення даних із документів. Він перевіряє, наскільки точно система заповнює JSON-схему на основі PDF-файлу. Бенчмарк об’єднує 620 документів із 4 наявних бенчмарків. Один детермінований оцінювач перевіряє всі документи й пояснює кожне рішення.

Реліз відбувається в період, коли постачальники систем вилучення публікують власні таблиці лідерів. У Datalab вважають, що такі таблиці складно порівнювати й перевіряти. OmniExtractBench — це спроба створити спільний критерій оцінювання.

Чи придатний він для розгортання? Так, оцінювач встановлюється з PyPI як omni-extract-bench (v0.1.7, Python 3.11+, лише SciPy) за ліцензією Apache 2.0. Для повторного запуску постачальників потрібні власні API-ключі та платні кредити.

Що таке OmniExtractBench?

OmniExtractBench — це бенчмарк для структурованого вилучення даних, створений Datalab. Кожне завдання передає системі PDF-файл і JSON-схему. Система повертає JSON, який оцінюється значення за значенням у порівнянні з еталонним файлом. Код доступний на GitHub, а дані — на Hugging Face за ліцензією CC BY 4.0.

4 недоліки, на які він націлений

У своєму дописі з нагоди запуску Datalab називає 4 типові проблеми наявних бенчмарків для вилучення даних:

  • Упередженість: документи й оцінювання можуть надавати перевагу постачальнику, який створив бенчмарк.
  • Непрозорі тестові оболонки: низький бал може бути наслідком несправної оболонки, а не слабкої моделі.
  • Незрозуміле оцінювання: читачі не можуть зрозуміти, чому конкретний документ отримав низький бал.
  • Обмежене різноманіття документів: деякі набори містять лише щільні таблиці, інші — лише чисті файли без сканування.

Звідки походять 620 документів

НабірДокументиПочатковий видавецьВміст
ExtractBench329LlamaIndexФорми, звітність, презентації
Внутрішній202Datalab (синтетичний)Щільні скалярні схеми, невеликі документи
LongExtractBench47micro1 (на замовлення Reducto)Дуже великі таблиці
LongArray-Extract42ExtendВеликі таблиці з повторюваними скалярними значеннями

Форми регуляторної звітності — найбільша категорія, 88 документів. 128 документів містять лише одну сторінку. На іншому кінці спектра 33 документи обсягом понад 100 сторінок містять 40% усіх сторінок. Власний синтетичний набір Datalab — друга за розміром частка.

Як працює оцінювач

Оцінювач перетворює прогнозований і еталонний JSON на адреси — шляхи до окремих значень. Спочатку він нормалізує кожне значення, тому «03/31/2024» відповідає «2024-03-31».

Таблиці — найскладніша частина. Якщо порівнювати їх за позицією, один пропущений рядок зміщує всі наступні рядки. Ми повторно запустили оцінювач на таблиці зі 100 рядками, у якій було пропущено перший рядок. Позиційне порівняння дало 0%, тоді як OmniExtractBench — 99%.

Рішенням є зіставлення на основі вмісту за допомогою угорського алгоритму. ExtractBench і LongArray-Extract уже вирівнюють рядки таким чином. OmniExtractBench додає поверх цього рівень вердиктів.

6 вердиктів для кожного значення

  • matched: зіставлено, і значення збігаються.
  • misread: зіставлено, але значення відрізняються.
  • unfound: в еталоні є значення, а в прогнозі його немає.
  • fabricated: схема це дозволяє, еталон не містить значення, а прогноз його заповнює.
  • invented_item: частина прогнозованого рядка, якій нічого не відповідає.
  • invented_field: адреса, яку схема ніколи не оголошувала.

Точність — це кількість зіставлених значень, поділена на кількість усіх вердиктів. Precision ділить кількість зіставлених значень на кількість прогнозованих. Recall ділить їх на кількість еталонних значень. Повні правила наведено в специфікації метрики.

Правило для null

Порожні рядки, None і пробіли вважаються пропусками, тому такі адреси вилучаються. Рядки на кшталт «NA» або «-» залишаються реальними відповідями. Це блокує непомітний спосіб маніпуляції: доповнення схеми порожніми необов’язковими полями для отримання безкоштовних збігів. У нашому тесті доповнення полями зі значенням null додало 0 вердиктів.

Як він порівнюється з іншими бенчмарками для вилучення даних

БенчмаркВидавецьДокументиВирівнювання рядківПояснення для кожного значенняЛіцензія оцінювачаЛіцензія даних
OmniExtractBenchDatalab620, із 4 джерелУгорський алгоритм, за вмістомТак, 6 типів вердиктівApache 2.0CC BY 4.0
ExtractBenchLlamaIndex370Угорський алгоритмПорівняння для кожного поля, HTML-звітApache 2.0Apache 2.0
LongArray-ExtractExtend45, синтетичніУгорський алгоритмБал для кожного документаНе вказаноCC BY 4.0
LongExtractBenchmicro1225, із них 50 публічнихЗа ключем рядкаНе вказаноMITCC BY 4.0, лише мітки

Посилання на джерела наведено в назві кожного бенчмарку. Перевірено 27 вересня 2026 року.

Хто пропускає поля, а хто вигадує значення

Datalab оцінила 10 конфігурацій систем на всьому корпусі. Її режим accurate посів перше місце з точністю 93,85. Datalab balanced (93,48) і Reducto deep_extract v2 (93,47) фактично мають однаковий результат. Precision і recall показують, як саме кожна система помиляється.

  • Збалансовані: обидва режими Datalab і Reducto утримують precision і recall у межах 0,6 пункту.
  • Схильні до пропусків: GPT 5.6-sol демонструє precision 95,11, але recall 84,99. Він втрачає 11,88% через невиявлені значення. Gemini і Claude демонструють таку саму тенденцію, але менш виражену.
  • Схильні до вигаданих значень: LlamaExtract має recall 93,13, але precision 86,57, втрачаючи 9,03% через сфабриковані значення. Extend втрачає 4,01% через вигадані елементи.
  • Низькі обидва показники: Mistral OCR 4.1 і Azure Content Understanding поступаються за обома метриками, причому recall у них ще нижчий.

Як кожна система не дотягує до 100% за типом вердикту. Джерело: Datalab.

Запустіть самостійно

Копіювати кодСкопійованоВикористати інший браузер
uv pip install omni-extract-bench
oeb score --pred pred.json --gt gold.json --schema schema.json --verdicts

Встановіть додатковий компонент [benchmark] і запустіть oeb benchmark, щоб повторно перевірити постачальників. Запуски можна відновлювати, а кожному постачальнику потрібні власні облікові дані. Datalab також пропонує протестувати її майданчик на власних документах.

Основні висновки

  • OmniExtractBench об’єднує 620 документів із наборів LlamaIndex, micro1, Extend і Datalab.
  • Детермінований оцінювач надає кожному значенню 1 із 6 перевірюваних вердиктів.
  • Зіставлення рядків за вмістом не дає одному пропущеному рядку обнулити результат для всієї таблиці.
  • Вилучення адрес зі значенням null не дає доповненню схеми штучно підвищувати бали.
  • Datalab accurate лідирує з результатом 93,85; Datalab balanced і Reducto мають майже однаковий результат — близько 93,5.

Поширені запитання

  • Що вимірює OmniExtractBench? Він вимірює, наскільки точно система вилучає значення з PDF-файлу в JSON-схему; оцінювання здійснюється для кожного значення.
  • Чи є OmniExtractBench відкритим програмним забезпеченням? Так. Оцінювач доступний за ліцензією Apache 2.0 на GitHub і PyPI. Набір даних доступний за ліцензією CC BY 4.0 на Hugging Face.
  • Хто створив OmniExtractBench? Його створила Datalab. Datalab також підтримує відкриті інструменти для роботи з документами Marker і Surya.

Дякуємо команді Datalab за ресурси, використані для підготовки цієї статті. Datalab підтримала та профінансувала цей матеріал.

Перекладено автоматично з англійської. Оригінал статті — за посиланням нижче.

Вперше опубліковано виданням MarkTechPost

Читати оригінал на MarkTechPost ↗

Текст і зображення належать MarkTechPost і наводяться тут із зазначенням авторства та посиланням на оригінальну публікацію.

← До новин

Ще новини

Усі останні новини