Клиенту требовалось извлечь структурированную бизнес-информацию из более чем 2 миллионов PDF-файлов, представляющих собой сканы накладных и транспортных документов. Документы отличались качеством, шаблонами и структурой, что делало классический OCR-подход недостаточным.
Ключевая цель — не просто распознать текст, а автоматически привести разрозненные данные к единому, аналитически пригодному виду, минимизировав ручную работу консультантов.
Я спроектировал и реализовал масштабируемый конвейер обработки документов в облачной инфраструктуре Microsoft Azure, объединив computer vision, OCR и LLM-системы в единую архитектуру.
На первом этапе был реализован пайплайн предобработки документов: конвертация PDF в изображения, очистка и нормализация страниц, детекция ключевых областей документов с использованием ML-моделей (YOLO + OpenCV). Далее применялось OCR-распознавание для извлечения текстовых данных.
Поверх OCR-слоя был внедрён LLM-уровень, который использовался для:
• интеллектуального разбора неструктурированного текста;
• нормализации и классификации полей (даты, номера накладных, маршруты, суммы, контрагенты);
• сопоставления данных между страницами и документами;
• устранения шума и ошибок OCR;
• приведения данных к единой бизнес-структуре.
LLM использовались как отдельный этап обработки в асинхронных задачах, что позволило масштабировать систему и гибко управлять стоимостью обработки. Для массовой загрузки документов был реализован механизм параллельной обработки (multiprocessing), а также система логирования, обработки ошибок и повторной обработки проблемных файлов.
Результатом работы пайплайна являлись структурированные данные в формате JSON и табличных представлений, готовые для дальнейшего анализа и использования в консалтинговых отчётах.
В результате был создан полноценный AI-pipeline, способный автоматически обрабатывать миллионы документов и преобразовывать неструктурированные сканы в качественные аналитические данные.
Использование LLM позволило:
• значительно снизить долю ручной валидации;
• повысить качество извлечения данных по сравнению с классическим OCR;
• ускорить подготовку данных для аналитиков и консультантов.
Решение успешно применялось в рамках проектов и позволило клиенту масштабировать анализ логистических данных без пропорционального роста человеческих ресурсов.