Клиент — бухгалтерский аутсорсинг, 200+ документов в день (счета, акты, договоры поставки). Операторы вручную переносили реквизиты в 1С — 5–8 минут на документ, ошибки в ИНН и суммах приводили к сверкам и штрафам. OCR давал текст, но структурировать его приходилось вручную.
Задача: набор промптов со structured output (JSON Schema) — извлечение полей из текста документа с confidence и флагом «требует проверки». Человек подтверждает спорные поля.
Реализация:
• 4 prompt-шаблона: счёт, акт, договор поставки, доп. соглашение;
• JSON Schema: контрагент, ИНН/КПП, сумма, НДС, дата, номер, срок оплаты;
• post-validation: checksum ИНН, сумма прописью vs цифрами, формат даты;
• few-shot на «грязных» сканах: печати, таблицы, переносы строк;
• confidence per field: < 0.85 → highlight в UI для оператора;
• eval: 200 размеченных документов, field-level accuracy;
• prompt changelog: что менялось при падении accuracy на конкретном типе.
Стек: промпт-инжиниринг, OpenAI structured outputs, JSON Schema, Python, OCR-текст на вход. Приёмка: field accuracy > 94% на счетах, > 89% на договорах.
Итог: ввод документа ~1–2 минуты (проверка) вместо 5–8; ошибки в реквизитах −80%. NDA: компания не публикуется.