ЦА пользователей датасета - это специалисты со всего мира
Как это сделать?
Из открытых источников собрать отчетность по МСФО
Обработать собранные данные
Что будет в итоге?
Открытая база данных отчетности по МСФО российских компаний, выложенная на отдельном сайте
Данные будут доступны в виде оригинальных pdf и табличных форм
Этапы проекта
Скрейпинг
Сбор PDF-файлов финансовой отчетности компаний по МСФО из открытых источников
Извлечение
Извлечение форм отчетности из PDF-файлов годовых отчетов компаний
Создание сайта
Создание сайта с возможностью отслеживать показатели МСФО по всем собранным компаниям-годам
Этап - Скрейпинг (сбор отчетности)
Годовая консолидированная отчетность российских эмитентов по МСФО доступна на сайтах пяти информационных агенств, официально аккредитованных Банком России на раскрытие информации о ценных бумагах и иных финансовых инструментах.
Кроме информационных агентств, объемную коллекцию корпоративной отчетности (1181 отчет) содержит сайт ИНИОН РАН, где она собрана в исследовательских целях.
Наконец, данные по отчетам МСФО можно найти в хранилище крупнейшего в рунете тематического портала для инвесторов и трейдеров Смартлаб.
Как собирались данные
Пайплайн сбора данных включает несколько этапов:
Парсер на Selenium обходит карточки всех компаний, представленных на портале, и при обнаружении файлов годовой консолидированной отчетности скачивает их, одновременно фиксируя метаданные компании: название, ИНН, ОГРН, дату регистрации, отчетный год.
Отчеты содержатся в архивах формата ZIP, 7z, а также как одно- и многотомные RAR. При обработке тип архива определяется по сигнатуре (magic bytes). Далее архивы распаковываются.
Извлеченные из архивов файлы повторно проходят проверку сигнатуры, что позволяет корректно конвертировать их в требуемый формат PDF.
При необходимости файлы PDF объединяются в один документ, чтобы привести данные к формату "1 компания - 1 год - 1 отчет".
Основные сложности:
необходимость проверить все компании (до 39000 ID), зарегистрированные на сайтах информагенств, на наличие отчетности МСФО
рекурсивная распаковка вложенных архивов
многотомные архивы, которые распаковываются вместе и склеиваются в единый PDF-файл
более 5 форматов, в которых хранятся файлы отчетов (PDF, DOC/DOCX, RTF, XLSX, XML, сканы - TIF, JPG)
Защищенные PDF с AES-шифрованием, блокировавшим чтение и склейку PDF
Необходимость поддерживать маппинг file_id → компания/год на всех этапах обработки
25 Гб
общий вес скаченных документов
7114
50-70-страничных файлов отчетов, организованных по принципу "1 компания - 1 год -1 отчет"
993
российские компании, подававшие отчетность МСФО
2000-2025
временной охват собранной отчетности
Этап - Извлечение
Цель этапа
Из многостраничного pdf файла извлечь 4 формы финансовой отчетности
4 формы отчетности = 4 взгляда на одну компанию
Ни одна форма не дает полной картины. Только вместе они позволяют оценить финансовое состояние компании.
Использовался Tesseract OCR для обработки отсканированных документов
Разработан скрипт для автоматического поиска форм отчетности
Время работы скрипта - около 70 часов (примерно 3 дня)
Проверено около 213 тыс. страниц
Получаем от команды "Скрейпинга" данные
Формирование структурированного набора pdf файлов
Разработан скрипт автоматического извлечения форм отчётности
Сформулировано 23 869 отдельных pdf-файлов
Выделены 4 ключевые формы: BS, PnL, CF и EQ
Одной из сложностей, возникших на этапе извлечения, были невыровненные сканы отчетов. Для выравнивания был применен скрипт, позволивший существенно повысить качество извлечения, так как модели размечают структуру по горизонтали и сдвиг по Y координатам может приводить к сильному искажению результата.
Подбор, тестирование и инференс визуально-языковых моделей
Какие характеристики моделей важны для нашей задачи:
распознавание структуры сложных таблиц (Table Structure Recognition)
распознавание русскоязычного текста
хорошие показатели работы с финансовыми таблицами без
обязательного дообучения
единый встроенный пайплайн для распознавания текста и табличной структуры и их сопоставления
открытые веса
возможность коммерческого использования
вес модели для возможности тестирования в Colab Free
Обзор позволил выделить следующие решения:
GLM-OCR (State-of-the-art
согласно бенчмарку OmniDocBench V1.5)
PaddleOCR-VL-0.9B
PaddleOCR (classic)
DeepSeek-OCR
Kimi-VL-A3B (3B)
Qwen2.5-VL (3B)
MinerU (1.2B)
Пример результата тестирования модели MinerU 3.0.0
Оригинальная таблица из отчета
Разметка модели, выделение табличной части
Результат работы модели
Однако, остальные выделенные визуально-лингвистические модели при тестировании в Colab Free приводили к CUDA Out of Memory либо к несовместимости версии CUDA колаба с версиями CUDA, под которые были написаны библиотеки моделей.
Оптимальным выходом из ситуации стал сервис openrouter.ai, предоставляющий доступ к большому количеству моделей от различных провайдеров, включая мультимодальные модели для работы с изображениями и документами.
OpenRouter не предоставляет доступ к OCR моделям, но предлагает множество general purpose визуально-лингвистических моделей, качества распознавания которых оказалось достаточно для нашей задачи даже в части распознавания структуры сложных таблиц с вложенными элементами.
По совокупности затрачиваемых токенов, времени инференса, стоимости и нестрогой оценки качества выбор был сделан в пользу Ministral 3 14b 2512.
Инференсы с использованием OpenRouter API:
*
**
*Финальный промпт: Extract the table structure from the scanned image and the text within table elements. Provide your answer in Markdown format. Ignore everything outside the table. Keep the text within table elements unchanged. Preserve the table structure completely.
**S3 хранилище (Simple Storage Service) - технология облачного хранения файлов с плоской иерархией. В S3 каждый файл получает постоянный URL-адрес, то есть к нему можно обратиться по прямой ссылке из любой точки мира.
Почему был выбран такой способ хранения файлов:
не требуется подключения к серверу для доступа к данным;
не требуется администрирования БД;
легкость репликации;
легкость миграции;
легкость расширения;
оплата только за фактическое использование, не за весь сервер;
возможность на основе S3 реализовать архитектуру
статического веб-сайта.
Этап - создание сайта
Цель этапа
Создание общедоступного сайта на русском и английском языках с машиночитаемыми формами отчетности по МСФО российских компаний
веб-сайт
Russian Consolidated Statements Database (https://rcsd-web.website.yandexcloud.net/) - двуязычный сайт, предоставляющий возможность полнотектстового локального поиска по компаниям; рендеринг исходных PDF-отчетов вместе с обработанными маркдаунами; возможность оставлять сообщения об опечатках или ошибках.
Веб-сайт не требует сервера, посколько обращается к файлам напрямую в S3 бакет.
Приведение показателей разных компаний к единой структуре и номенклатуре с целью обеспечить сопоставимость данных между отчетами.
Корреспонденция (гармонизация)
внешняя валидация на данных портала smart-lab
Проверка логической и математической согласованности показателей на основе контрольных соотношений IFRS Taxonomy с целью выявить потенциальные ошибки.
Артикуляция
ДАЛЬНЕЙШИЕ НАПРАВЛЕНИЯ
Сравнение эталонных данных портала Smart-Lab с результатами извлечения несколькими отобранными моделями с целью оценить качество извлечения. Ручной отбор документов "хорошего" и "плохого" качества и расчет ошибок (RMSE, MAPE, WER и CER).
Руководители проекта
Дмитрий Скугаревский
Идейный вдохновитель
Научный сотрудник Института проблем правоприменения ЕУ СПб