Intellos Hub
Шаблонv1.0.0стабильнаязаготовка

Конвертация старых форматов и архивов

Приводит .doc, .xls, .ppt, OpenDocument, EPUB и архивы к форматам, которые читает платформа, и извлекает из них текст. Вид файла определяется по содержимому, архив отдаётся файлами внутри, битый файл получает понятный отказ вместо падения.

Схема логики

Схема логики: Конвертация старых форматов и архивов

Как это работает

  1. Сотрудник: Загружает файл — старый формат или архив
  2. Документы: Приводит к читаемому виду — конвертация файла
  3. Документы: Извлекает текст — из каждого файла
  4. Автоматически: Собирает текст — складывает и считает знаки
  5. Сотрудник: Получает итог — текст и отчёт
  6. Сотрудник: Файл не принят — сообщение об ошибке

Конвертация старых форматов и архивов

Платформа даёт пользователю загрузить файлы, которые её штатное извлечение текста не читает: на .doc и .epub оно падает, архивы не понимает вовсе. Это решение убирает причину отказа — приводит старые форматы Office, OpenDocument, EPUB и архивы к читаемому виду сервисом docforge и сразу извлекает из них текст. Оно служит входным шагом для любых приложений, принимающих документы, и пригодится делопроизводству и ИТ-службе.

Что на входе

Одно обязательное поле формы — «Файл». Допустимы:

  • старые и открытые форматы: .doc .dot .rtf .odt .xls .xlt .ods .ppt .pps .odp .epub;
  • архивы: .zip .7z .tar .gz .tgz;
  • уже читаемые форматы: .docx .xlsx .pptx .pdf .txt .csv — они проходят насквозь.

Что на выходе

  • Файлы, пригодные для извлечения текста; из архива — несколько.
  • Текст каждого файла с числом знаков, общее число файлов и знаков.
  • Отчёт конвертера: что во что переведено, что оставлено как есть, что пропущено и почему.
  • Если файл принять нельзя — сообщение с объяснением конвертера.
Что пришло Во что переводится
.doc, .rtf, .odt .docx
.xls, .ods .xlsx
.ppt, .odp .pptx
.epub .html, главы в порядке описи книги
.zip, .7z, .tar.gz файлы внутри; старые форматы внутри тоже переводятся

Как работает

  1. Конвертер docforge определяет вид файла по содержимому, а не по расширению: PDF, переименованный в .docx, уходит дальше как PDF.
  2. Старые форматы Office переводит LibreOffice в образе сервиса. .doc переводится в .docx, а не в PDF, чтобы сохранить автонумерацию пунктов.
  3. Архив распаковывается, имена в кодировках cp866 и cp1251 читаются верно.
  4. Отказ (битый файл, архив с паролем) конвертер сообщает текстом, а не ошибкой, поэтому после него стоит проверка: файлов нет — запуск завершается понятным сообщением.
  5. Из каждого полученного файла текст достаёт штатное извлечение платформы.

Что настроить после установки

  • Плагин docforge (intellos/docforge) версии 0.5.0 или новее, из локального пакета. Площадка должна разрешать установку неподписанных плагинов — это настройка администратора.
  • Авторизация плагина: адрес сервиса docforge и токен сервиса; сервис должен быть доступен контейнеру плагинов. Выход в интернет не нужен.
  • Модель, базы знаний и секреты не нужны.

Ограничения

  • Документ больше 15 МБ площадка отклоняет при загрузке.
  • Архив: не больше 20 файлов (остальные попадают в замечания отчёта), вложенность архивов — один уровень, распакованных данных — не больше 200 МБ. Пределы меняются настройками сервиса docforge.
  • Время: .doc — 4,2 с, .xls — 3,1 с, .ppt — 11,3 с; читаемый файл и архив из двух читаемых файлов — 0,6 с.
  • Сканы не распознаются: из PDF без текстового слоя штатное извлечение вернёт пустоту. Для сканов нужна схема с MinerU — «Приём нескольких файлов».
  • Итоговый текст проверочный: с каждого файла показаны первые 1500 знаков. Для работы с полным текстом шаг сборки текста настраивают под задачу.
  • При запуске через Service API файл загружает тот же пользователь, от имени которого идёт запуск, иначе запуск отклоняется.

Проверено

  • Прогнано на площадке 2026-09-28 через Service API опубликованной версии, пять запусков: .doc → .docx (1 180 знаков текста), .xls → .xlsx (668), .ppt → .pptx (252), архив → два файла (3 876), битый файл — ветка отказа с объяснением.
  • Дополнительно на сервере — 18 проверок кодом сервиса, в том числе архив с именами в cp866, вложенный архив, архив с паролем и архив-бомба.