Перейти к содержанию
Документация Визографа

Функциональное описание системы

Назначение, архитектура, сценарии распознавания, роли, API и требования

ПО «Визограф»2026

УТВЕРЖДЕН

приказом ООО «ФТ-СОФТ» от 12.01.2026 № 45

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ «ВИЗОГРАФ»

ФУНКЦИОНАЛЬНОЕ ОПИСАНИЕ СИСТЕМЫ

2026

1. Термины
Термин Определение
Проект Изолированная прикладная область, объединяющая участников, настройки распознавания, конфигурации распознавания, задачи и интеграционные ключи.
Конфигурация распознавания Принадлежащий проекту набор типов документов и описаний извлекаемых полей.
Тип документа Семантическая категория документа с уникальным ключом, отображаемым названием, правилами классификации и набором полей.
Задача распознавания Асинхронная операция обработки одного входного файла.
Классификация Определение семантического типа входного документа.
OCR Оптическое распознавание текста и, в соответствующем режиме, положения текстовых фрагментов на странице.
LLM Языковая или мультимодальная модель, используемая для классификации, получения текста или структурированного извлечения атрибутов.
Атрибут Структурированное значение, извлечённое в соответствии с описанием поля типа документа.
Подтверждающий исходный фрагмент Текстовый фрагмент и, при наличии координат, область страницы, подтверждающие извлечённое значение.
Интеграционный API Версионированный программный интерфейс /api/v1 для внешних информационных систем.
Интеграционный ключ Проектные учётные данные внешней системы, передаваемые по схеме Bearer.
Служба подготовки документов Подключаемый компонент подготовки офисных и иных документов к постраничной обработке.
2. Общие сведения

Настоящее функциональное описание определяет назначение, функциональную структуру, роли пользователей, основные процессы, входные и выходные данные, интерфейсы, механизмы разграничения доступа, функциональные зависимости и ограничения программного обеспечения «Визограф».

Описание сформировано по фактически заявленным возможностям готового экземпляра программного обеспечения. Параметры установки, развёртывания, аппаратные требования, количественные показатели производительности, гарантированные сроки обработки и хранения, уровни доступности и параметры внешней сетевой защиты в данном документе не устанавливаются.

1.1. Назначение системы

«Визограф» предназначен для автоматизированного приёма и обработки электронных документов и их отсканированных представлений. Система определяет тип документа, получает текстовое содержимое, извлекает структурированные атрибуты и предоставляет результат пользователю через браузерный интерфейс либо внешней информационной системе через интеграционный программный интерфейс.

1.2. Основные цели использования

  • сокращение ручной обработки документов за счёт автоматической классификации и распознавания;

  • получение текстового представления входных документов;

  • извлечение структурированных значений по заранее настроенной схеме типа документа;

  • обеспечение визуальной проверки результата по страницам документа и подтверждающим исходным фрагментам;

  • предоставление асинхронного механизма обработки с наблюдением за состоянием задач;

  • обеспечение проектной изоляции данных, настроек, пользователей и интеграционных ключей;

  • интеграция с внешними информационными системами через версионированный API.

3. Функциональная архитектура системы

Функционально система состоит из пользовательского интерфейса, серверной части, подсистемы асинхронной обработки, подсистемы хранения и подключаемых служб распознавания и подготовки документов. Конкретная задача задействует только те компоненты, которые требуются выбранным сценарием обработки.

Компонент Функциональное назначение
Браузерный интерфейс Выбор проекта, создание задач, наблюдение за обработкой, просмотр документов и результатов, работа с доступными настройками.
Сервер приложения Проверка прав, приём запросов, управление прикладными данными, предоставление браузерного и интеграционного интерфейсов.
Подсистема обработки задач Асинхронная подготовка входных файлов, выполнение сценариев OCR/LLM и иных видов распознавания, сохранение состояния и результата.
Подсистема хранения Сохранение входных документов, производных представлений, результатов и служебных метаданных.
Служба подготовки документов Подготовка офисных, табличных, презентационных, HTML- и почтовых документов, если возможность включена.
Служба OCR Получение текста и координатных данных в сценариях распознавания текста.
Служба LLM Классификация, получение текста и извлечение атрибутов в сценариях с языковой моделью.
Подсистема лицензирования Определение доступности лицензируемых функций и права на запуск новой обработки.

3.1. Логическая схема взаимодействия

  1. Пользователь браузерного интерфейса или внешний интеграционный клиент инициирует обработку.

  2. Сервер приложения выполняет аутентификацию, проверяет права, проект и доступную конфигурацию.

  3. Входной файл проверяется, сохраняется и передаётся в подсистему обработки задач.

  4. В зависимости от выбранного сценария подключаются служба подготовки документов, OCR и/или LLM.

  5. Результаты и промежуточное состояние сохраняются в подсистеме хранения.

  6. Пользователь или интеграционный клиент получает состояние и итоговый результат в пределах своей проектной области.

4. Пользователи и роли
Роль Функциональная область
Глобальный администратор Управление пользователями и всеми проектами; глобальными профилями OCR и LLM; лицензионным состоянием; выполнение проектных операций без отдельного членства.
Администратор проекта Управление параметрами проекта, участниками, ролями, доступом к конфигурациям, конфигурациями, типами документов и интеграционными ключами; создание и работа с задачами проекта.
Пользователь проекта Работа только в проектах, участником которых он является; создание и просмотр задач при наличии разрешённого доступа; работа с разрешёнными конфигурациями в пределах предоставленных прав.
Интеграционный клиент Создание и получение задач через API с использованием проектного интеграционного ключа; административные функции браузерного интерфейса недоступны.

4.1. Проверка и изменение прав

Права, членство пользователя в проектах и доступ к конфигурациям проверяются сервером при каждом обращении к защищённому ресурсу. Изменения статуса пользователя, членства или разрешений учитываются при последующих операциях. Система также предотвращает блокировку либо лишение прав последнего активного глобального администратора.

5. Основной функциональный процесс обработки документа

Основная единица обработки — задача распознавания одного входного файла. Задача выполняется асинхронно и имеет собственные состояние, результат и возможность отмены.

Этап Описание
1 Проверка доступа Проверяются права пользователя или интеграционного ключа и доступность проекта.
2 Проверка конфигурации Проверяется наличие доступной неархивной конфигурации по умолчанию.
3 Проверка входного файла Проверяется допустимость входного документа и возможность его подготовки.
4 Фиксация параметров Для задачи фиксируются конфигурация и настройки обработки.
5 Сохранение и постановка в очередь Входной документ сохраняется; задача переводится в очередь.
6 Обработка Выполняются необходимые этапы подготовки, OCR, классификации и извлечения.
7 Сохранение результата Состояние и результат сохраняются и становятся доступны в пределах соответствующего проекта.

Изменение проекта или конфигурации после создания задачи не изменяет уже зафиксированный для неё процесс обработки. Повторная обработка использует зафиксированные настройки задачи и актуальные учётные данные подключённых служб.

6. Функциональные сценарии распознавания
Сценарий Функциональный результат
Только классификация Определение типа документа без получения текста и атрибутов.
Классификация и извлечение через LLM Определение типа, получение текста и извлечение атрибутов.
Только извлечение через LLM Извлечение атрибутов для заранее выбранного типа без классификации.
Только OCR-текст Получение текста средствами распознавания без классификации и извлечения атрибутов.
Извлечение LLM с OCR-доказательствами Извлечение атрибутов с привязкой значений к распознанным текстовым фрагментам и областям страниц.
Извлечение с опорой на OCR-источник Извлечение с использованием распознанных текстовых блоков как источника контекста.

Для сценария «Только извлечение через LLM» требуется заранее выбранный точный тип документа. Сценарии с OCR доступны только при включённой функции распознавания текста и настроенной службе OCR.

7. Входные и выходные данные

7.1. Поддерживаемые входные документы

Базовый каталог входных форматов: PDF; JPG/JPEG; PNG; TIF/TIFF; WebP; TXT.

При включённой службе подготовки документов дополнительно могут поддерживаться: DOC, DOCX, DOCM, ODT, RTF; PPT, PPTX, PPTM, PPS, PPSX, PPSM, POT, ODP; XLS, XLSX, XLSM, XLSB, ODS; HTML, HTM; Outlook MSG.

Фактически доступный каталог зависит от конфигурации экземпляра. Браузерный интерфейс отображает его при создании задачи; API предоставляет его операцией GET /api/v1/recognition/formats. Расширение и MIME-тип рассматриваются как сведения о предполагаемом формате, при этом система дополнительно проверяет допустимость файла.

7.2. Результат обработки

  • имя исходного файла;

  • определённый ключ и отображаемое название типа документа;

  • распознанный текст;

  • структурированный набор атрибутов;

  • изображения страниц;

  • распознанные текстовые фрагменты и их координаты;

  • подтверждающие данные для извлечённых значений;

  • предупреждения о частично обработанных элементах;

  • безопасное описание ошибки и, при наличии, идентификатор обращения за поддержкой.

Состав результата зависит от выбранного сценария и фактического результата; перечисленные элементы не обязательно формируются одновременно.

8. Функциональные возможности браузерного интерфейса

8.1. Работа в проектном контексте

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

8.2. Создание задачи

  • выбор одного или нескольких входных файлов;

  • создание отдельной задачи для каждого файла;

  • выбор поддерживаемого сценария обработки;

  • для требующих этого сценариев — выбор точного типа документа;

  • наблюдение за текущим состоянием каждой задачи;

  • запрос отмены активной задачи.

8.3. Состояния и отмена

После приёма задача проходит подготовку, ожидание в очереди и обработку. Итоговыми состояниями являются успешное завершение, ошибка или отмена. Запрос отмены не означает мгновенную остановку: задача проходит процедуру отмены и затем получает окончательное состояние.

8.4. Просмотр результата

  • определённый тип документа;

  • распознанный текст;

  • извлечённые атрибуты;

  • структурированное представление результата;

  • страницы исходного документа;

  • предупреждения и безопасное описание ошибки.

8.5. Страницы и подтверждающие фрагменты

При наличии постраничного представления пользователь может просматривать и поворачивать страницы. Поворот относится к отображению и не означает изменение исходного файла. В сценариях с подтверждающими фрагментами пользователь может выбрать источник атрибута: система показывает связанный текстовый фрагмент и, при наличии координат, выделяет соответствующую область страницы.

8.6. История и повторная обработка

Панель задач позволяет просматривать доступные активные и завершённые задачи, открывать документы и возвращаться к результатам. Область видимости определяется проектом и ролью. Для завершённого документа пользователь с соответствующими правами может повторно запустить обработку.

8.7. Работа с неподдерживаемыми документами

Если классификация указывает на неподдерживаемый тип документа, система может предложить уполномоченному пользователю создать новый тип документа на основании доступного текста или страниц.

9. Настройка и административные функции

9.1. Проекты и участники

Глобальный администратор может создавать, изменять, архивировать, восстанавливать и окончательно удалять проекты. Архивный проект сохраняется для просмотра и восстановления, но не допускает новую обработку и обычные изменяющие операции. Администраторы управляют участниками, ролями и доступом к конфигурациям в пределах своих полномочий.

9.2. Пользователи

Глобальный администратор создаёт пользователей, блокирует и разблокирует учётные записи, сбрасывает пароль и управляет глобальными административными правами. Блокировка и сброс пароля прекращают действие существующих пользовательских сеансов.

9.3. Конфигурации и типы документов

  • просмотр доступных конфигураций;

  • создание и изменение конфигураций;

  • добавление и настройка типов документов и извлекаемых полей;

  • дублирование конфигурации как независимой копии;

  • архивирование и восстановление;

  • экспорт переносимого описания в JSON;

  • импорт проверенного переносимого описания из JSON.

9.4. Профили OCR и LLM

Глобальный администратор раздельно управляет профилями распознавания текста и языковых моделей. Для профилей предусмотрены создание, изменение, проверка подключения, активация, архивирование и восстановление. Активный профиль нельзя архивировать до выбора другого активного профиля. Секретные значения подключённых служб защищаются и не возвращаются в обычном представлении настроек.

9.5. Интеграционные ключи

Администратор проекта создаёт и отзывает интеграционные ключи. Для ключа может быть задан срок действия. Полное секретное значение показывается однократно при создании; далее отображается только его начальная часть.

9.6. Лицензирование

Глобальный администратор просматривает состояние лицензии, формирует запрос активации и применяет подписанный файл лицензии. Ограничивающее состояние лицензии может запрещать запуск новой обработки, сохраняя доступ администратора к действиям по восстановлению лицензионного состояния.

10. Интеграционный программный интерфейс

API предназначен для создания и получения задач распознавания внешними информационными системами. Маршруты размещены в пространстве /api/v1. Машиночитаемое описание OpenAPI доступно по /api/v1/openapi/v1.json, HTML-представление документации — по /api/v1/docs.

Метод Маршрут Назначение
GET /api/v1/recognition/formats Получить актуальный каталог входных форматов экземпляра.
POST /api/v1/recognition/tasks Создать асинхронную задачу распознавания.
GET /api/v1/recognition/tasks Получить список задач проекта, созданных через API.
GET /api/v1/recognition/tasks/{taskId} Получить текущее состояние и доступный результат задачи.
POST /api/v1/recognition/tasks/{taskId}/cancel Запросить отмену активной задачи.

10.1. Аутентификация и проектная область

Интеграционный клиент передаёт проектный ключ в заголовке Authorization: Bearer <API key>. Проект определяется по ключу и отдельно в запросах распознавания не указывается. Отозванный, истёкший ключ либо ключ архивного проекта доступ не предоставляют. Доступ к отдельной задаче ограничен проектом ключа.

10.2. Создание задачи через API

POST /api/v1/recognition/tasks использует multipart/form-data и принимает ровно один обязательный файл в поле file и необязательный точный ключ типа документа в поле documentTypeKey. Состав обработки определяется настройками проекта, а не только наличием documentTypeKey.

Для безопасного повтора поддерживается заголовок Idempotency-Key. Повтор запроса с тем же ключом и теми же данными возвращает ранее созданную задачу; использование того же ключа с другим файлом или типом приводит к конфликту. После надёжного принятия файла система возвращает 202 Accepted, текущее состояние задачи и адрес ресурса в заголовке Location.

10.3. Состояния API-задач

Группа Состояния
Активные queued, processing, cancelling
Окончательные completed, failed, cancelled

Значение active используется только как фильтр списка активных задач и не является самостоятельным состоянием. Клиент опрашивает задачу до получения окончательного состояния.

10.4. Ошибки API

HTTP-ошибки возвращаются в формате application/problem+json и содержат стабильный машинный код и идентификатор запроса. Предусмотрены группы ошибок аутентификации, файла и формата, недоступности проекта или конфигурации, неизвестного типа документа, конфликта идемпотентности, отсутствующей задачи, недопустимой отмены, временной недоступности обработки и лицензионных ограничений.

10.5. Функциональные ограничения API

  • API не предоставляет синхронное распознавание в рамках одного HTTP-запроса;

  • API не предоставляет автоматическое уведомление о завершении на заданный адрес;

  • API не предоставляет серверная групповая обработка нескольких файлов одной задачей;

  • API не предоставляет удаление завершённых задач;

  • API не предоставляет общедоступные административные операции;

  • API не предоставляет выбор внутренних способов обработки, не предусмотренных опубликованным API.

11. Разграничение доступа и защита данных
  • локальная аутентификация пользователей браузерного интерфейса;

  • серверные пользовательские сеансы;

  • защита изменяющих запросов браузерного интерфейса от межсайтовой подделки;

  • ролевое разграничение глобального и проектного администрирования;

  • проверка членства в проекте и доступа к конфигурации;

  • ограничение видимости задач в соответствии с проектом, ролью и способом создания;

  • прекращение действия сеансов при блокировке пользователя или сбросе пароля;

  • проверка интеграционного ключа по схеме Bearer и привязка ключа к проекту;

  • хранение секретных значений интеграционных ключей в виде проверочного значения после однократной выдачи;

  • защищённое хранение секретов поставщиков;

  • безопасные пользовательские и интеграционные сообщения об ошибках.

Метаданные логически разграничиваются по проектам. Файловые данные сохраняются с разделением по проектам и сеансам распознавания. Требования к внешней сетевой защите, конкретным криптографическим алгоритмам и шифрованию пользовательских документов на носителе определяются средой развёртывания и не входят в заявленный функциональный объём системы.

12. Функциональные зависимости и ограничения
Зависимость / ограничение Описание
Активный проект Для распознавания требуется активный проект.
Конфигурация по умолчанию Для запуска задачи требуется доступная неархивная конфигурация по умолчанию.
LLM Сценарии с языковой моделью требуют доступной настроенной службы LLM.
OCR Сценарии распознавания текста требуют включённой функции OCR и настроенной службы распознавания.
Подготовка документов Расширенный каталог офисных и иных документов требует включённой службы подготовки.
Лицензия Возможность запуска новой обработки зависит от лицензионного состояния экземпляра.
Результат Состав результата определяется выбранным сценарием и фактическим результатом обработки.
Область видимости задач Задачи браузерного интерфейса и API имеют раздельные области видимости.
API Интеграционный интерфейс не предоставляет административные функции.
Количественные характеристики Производительность, сроки, объёмы, аппаратные требования и уровни доступности данным описанием не нормируются.
13. Сводная матрица функциональных требований
ID Функция Функциональное требование
FR-01 Приём документов Система должна принимать документы поддерживаемых форматов через браузерный интерфейс и API.
FR-02 Классификация Система должна определять тип документа среди типов, настроенных в конфигурации проекта, для соответствующего сценария.
FR-03 Точный тип Система должна поддерживать обработку документа с заранее выбранным точным типом без классификации.
FR-04 OCR Система должна предоставлять распознанный текст в сценариях, предусматривающих OCR.
FR-05 Извлечение атрибутов Система должна извлекать структурированные значения в соответствии со схемой типа документа.
FR-06 Доказательства В поддерживающих режимах система должна связывать извлечённые значения с исходными текстовыми фрагментами и областями страниц.
FR-07 Асинхронность Обработка одного файла должна выполняться как отдельная асинхронная задача.
FR-08 Состояния задач Система должна предоставлять состояние активной и завершённой задачи и поддерживать запрос отмены активной задачи.
FR-09 История Браузерный интерфейс должен предоставлять доступ к разрешённым активным и завершённым задачам.
FR-10 Проектная изоляция Система должна разграничивать пользователей, конфигурации, задачи и интеграционные ключи по проектам.
FR-11 Конфигурации Уполномоченные пользователи должны иметь возможность управлять конфигурациями, типами документов и извлекаемыми полями.
FR-12 Импорт/экспорт Система должна поддерживать перенос конфигураций посредством JSON в пределах предоставленных прав.
FR-13 API Внешний клиент должен иметь возможность создать задачу, получить её состояние и результат либо структурированную ошибку.
FR-14 Идемпотентность API должен поддерживать безопасный повтор создания задачи посредством Idempotency-Key.
FR-15 Администрирование Глобальные и проектные административные функции должны быть доступны в пределах соответствующих ролей.
FR-16 Лицензирование Система должна учитывать лицензионное состояние при запуске новой обработки.
FR-17 Безопасные ошибки Пользовательские и интеграционные ошибки не должны раскрывать внутренние секреты и диагностические данные.
14. Наблюдаемые результаты работы системы
Область Наблюдаемый результат
Браузерный интерфейс Уполномоченный пользователь создаёт задачу в выбранном проекте, наблюдает её состояние и получает результат либо понятное сообщение об ошибке.
Классификация В соответствующем режиме система определяет тип документа среди настроенных типов.
Текст В соответствующем режиме система предоставляет распознанное текстовое содержимое.
Атрибуты В соответствующем режиме система предоставляет структурированные значения полей типа документа.
Подтверждающие фрагменты При наличии подтверждения пользователь связывает значение атрибута с текстовым фрагментом и областью страницы.
История задач Пользователь открывает разрешённые активные и завершённые задачи и их результаты.
API Авторизованный проектный клиент создаёт задачу и получает состояние и окончательный результат либо структурированную ошибку.
Проектная изоляция Пользователь и интеграционный ключ получают доступ только к разрешённым проектным данным и задачам.
Конфигурации Уполномоченный пользователь управляет типами документов и переносит конфигурации в JSON.
Администрирование Административные операции доступны только в пределах полномочий соответствующей роли.
Форматы Браузерный интерфейс и API предоставляют актуальный для экземпляра каталог входных форматов.
Лицензирование Система учитывает лицензионное состояние при запуске обработки и предоставляет администратору доступные операции управления лицензией.
Приложение А. Границы настоящего функционального описания

Настоящий документ описывает функции, заявленные для готового экземпляра программного обеспечения «Визограф». В описание не включены планы развития, функции других систем, средства разработки и выпуска лицензий, служебная диагностика, а также количественные эксплуатационные показатели, не установленные исходной документацией.

Приложение Б. Краткая карта «роль — функция»
Роль Ключевые функции
Глобальный администратор Все проекты; пользователи; глобальные профили OCR/LLM; лицензия; глобальные права.
Администратор проекта Участники и роли проекта; конфигурации и типы; интеграционные ключи; задачи проекта.
Пользователь проекта Создание и просмотр разрешённых задач; работа с разрешёнными конфигурациями в пределах доступа.
Интеграционный клиент Создание, получение списка/состояния/результата и отмена API-задач своего проекта.
Ничего не найдено. Измените поисковый запрос.