Распознавание документов для 1С с помощью ИИ

Заказчик: Собственный проект студии (демо открыто)
Стек: Python 3.12, FastAPI, Pydantic, Ultralytics YOLO11, PyTorch + CUDA, vision-LLM Qwen3-VL-235B, LangChain, OpenRouter / GigaChat / Ollama / vLLM, MinIO, Langfuse, Docker Compose, Telegram-бот

Задача

Автоматизировать ввод данных из сканов паспортов, водительских удостоверений и других документов в 1С — без ручного набора, с возможностью работать локально по 152-ФЗ.

Результат

Сервис возвращает структурированный JSON для автозаполнения полей в 1С. Гибрид YOLO + vision-LLM точно работает даже на низкокачественных сканах; работает как в облаке, так и полностью локально.

Расскажу, как я собрал сервис распознавания документов для 1С — паспортов, водительских удостоверений и других документов. Задача была простой на словах: сотрудник загружает скан, а система возвращает структурированные данные, которыми можно сразу заполнить поля в 1С. Важное условие — возможность работать полностью локально, чтобы не выносить персональные данные наружу и соблюсти 152-ФЗ.

Почему не одна vision-модель, а гибрид

Если скан хорошего качества, хватает одной vision-LLM: подал картинку — получил JSON. Но на практике сканы кривые, тёмные и мятые. Поэтому я сделал гибрид: сначала нейросеть находит поля документа, вырезает их и улучшает качество, и только потом текст читает языковая модель. Так выше и скорость, и точность, и можно работать с плохими сканами.

Двухэтапная микросервисная архитектура

Этап 1 — YOLO Detection Service. Обученная нейросеть YOLO11 находит поля документа (ФИО, серия, номер, фото и т.д.), Super Resolution улучшает качество, а отдельные компоненты вырезаются. Всё это — REST API на FastAPI, обработанные изображения складываются в MinIO.

Этап 2 — LLM OCR Service. Улучшенные фрагменты читает vision-LLM (в проекте — Qwen3-VL-235B). LangChain оркестрирует работу с разными провайдерами моделей, а Structured Output заставляет модель вернуть строгий JSON. Качество промптов и отладку я вёл через Langfuse, для удобного тестирования прикрутил Telegram-бота.

Локально или в облаке — по 152-ФЗ

Сервис умеет работать и с облачными моделями (OpenAI, OpenRouter, GigaChat), и полностью локально через Ollama и vLLM. Для паспортных данных это критично: когда нельзя отправлять персональные данные во внешние сервисы, весь пайплайн разворачивается на своём железе.

Интеграция с 1С

Сервис отдаёт структурированный JSON, поэтому распознавание документов в 1С подключается простыми HTTP-запросами: 1С загружает изображение в сервис и получает готовые поля. API даёт endpoints на загрузку картинки и на получение распознанных данных — дальше 1С заполняет реквизиты документа или элемента справочника.

Что можно распознавать

Пайплайн дообучается под любой тип документа: паспорта, водительские удостоверения, миграционные карты, первичка 1С (накладные, акты, счета), ценники и товарные этикетки, любые формализованные документы.

Хотите так же встроить ИИ в свою 1С

Если у вас есть задача автоматизировать работу с документами через ИИ, это как раз то, чему мы учим на курсе по ChatGPT и нейросетям для 1С — от промптов и Structured Output до интеграции модели с базой.

Частые вопросы

Нужен похожий проект?

Опишите задачу — оценю сроки и стоимость.