Перейти к содержанию
← Избранные работы

01 / Бакалаврская ВКР / логистика

Обработка счетов в JDE

Моя бакалаврская ВКР: прототип аудита счетов и автоматизация импорта XML в Optimacros. Разработал и проверил на реальных документах отдела логистики.

Моя роль
Исследование, разработка и валидация моделей
Период
2025–2026
Статус
Бакалаврская ВКР · пилот протестирован
Запись из приложения для валидации ВКР. Извлечение XML/PDF и проверки по правилам выполняются локально; финальный ответ модели задан для демонстрации. Запись показывает процесс, а не новый тест качества или скорости модели.

Демонстрация

  1. 01

    Загрузить УПД, счёт поставщика и CMR

  2. 02

    Извлечь текст и сверить контейнеры

  3. 03

    Проверить расхождения и выгрузить отчёт

В примере есть разница в цене на 2 000 ₽ и несовпадение номера контейнера. Оба расхождения вынесены в отчёт для проверки человеком.

Скачать демоотчёт · Markdown ↓

Контур B · XML → Optimacros

Текущая браузерная версия Python/Colab-инструмента импорта из ВКР. Синтетический счёт разбирается и файл выгрузки рассчитывается локально; модели и имитации ответов сервера здесь нет. Внутренние идентификаторы Optimacros заменены демонстрационными.

Пять позиций счёта превращаются в три строки контейнеров. К 1 000 ₽ в реестре добавляются расходы на 46 200 ₽: итог выгрузки — 47 200 ₽.

Задача

Во время стажировки в логистике JDE я исследовал процесс обработки счетов. По замерам для ВКР, на 300 счетов уходило около 157 человеко-часов в месяц. Пятнадцать крупных счетов занимали 64% этого времени. Документы приходили в разных форматах, а сотрудники сверяли данные между Диадоком, SAP и Optimacros.

Решение

  • Описал текущий процесс, выявил причины ручной работы и сравнил семь вариантов решения с учётом ограничений отдела.
  • Разработал контур A: аудитор на Streamlit, который извлекает данные XML/PDF, сопоставляет счета с подтверждающими документами и сохраняет отчёты в SQLite. Написал скрипты для проверки ответов моделей на реальных комплектах документов с заранее заданными ожиданиями.
  • Разработал контур B: детерминированный разбор XML, сопоставление услуг со столбцами и формирование Excel для импорта в Optimacros. Во второй демонстрации — последующая браузерная версия инструмента, перенесённая из Python/Colab.

Результат

7 корректных + 3 частичных

В тестировании ВКР — 10 кейсов и 11 запусков. Семь кейсов дали ожидаемый результат, три — безопасный частичный; ошибочного разрешения на оплату в этой выборке не было. Первый запуск крупного счёта превысил контекстное окно; повторный после предобработки XML прошёл успешно. Для проверки и внесения данных вместе в ВКР сопоставлены примерно 405 минут ручной работы и 9–14 минут в пилоте. Только внесение данных сократилось примерно со 165 до 5–10 минут.

Источник и контекстИсточник: моя бакалаврская ВКР СПбГУ 2026 года «Improving Logistics Invoice Processing at Jacobs Douwe Egberts Rus LLC», §3.2 и приложение A. Тестирование аудита выполнено локально на google/gemma-4-E4B, MacBook Air M5 с 16 ГБ памяти. Демонстрации на сайте — отдельные синтетические примеры.

Границы результатов

Экономия 85–100 часов в месяц в экономическом обосновании — расчётная оценка на основе нагрузки по крупным счетам. Тестирование на десяти кейсах — результат пилота, а не общая оценка точности. В дальнейшей работе обозначены модели с лучшей поддержкой русского языка, интеграция с SAP и расширение детерминированных проверок.

Инструменты

  • Python
  • Streamlit
  • PyMuPDF
  • SQLite
  • XML
  • Optimacros