Обработка больших Excel-файлов через агента
2025–2026 • CATME Converter • MCP-сервис
Прайс на сотни тысяч товаров нужно загрузить в каталог. Обычные скрипты уже тормозят, а отдельная система для больших данных была бы избыточна.
С этой задачей я столкнулся в CATME PIM, когда работал с прайсами книжных поставщиков. Вместе с ИИ я разрабатывал конвертер, который готовит данные из больших таблиц для дальнейшей обработки. Затем выбрал его как основу отдельного продукта — сервиса, с которым человек работает через своего агента.
Указать, где лежит прайс
Человек может дать агенту публичную ссылку на XLSX в Яндекс Диске. Converter сам забирает файл и готовит данные для дальнейшей работы: скачивать большой прайс на свой компьютер и затем загружать его в сервис не нужно. Файл с компьютера тоже можно передать напрямую.
Агент создаёт заказ, передаёт источник, следит за готовностью, получает результат и проверяет его. Для управления заказом у сервиса есть MCP — подключение, через которое агент обращается к его операциям. Тяжёлая обработка выполняется на сервере; устанавливать сам конвертер на компьютер пользователя не нужно.
Сохранить строки и поля
Если при переносе потерялась часть прайса, дальнейшая обработка будет опираться на неполные данные. Поэтому я разделил конвертацию и работу со смыслом товара. Конвертер сохраняет табличные данные в NDJSON — текстовый файл, в котором каждая товарная запись записана отдельно. Очистка названий, сопоставление поставщиков и обогащение каталога выполняются следующим шагом, например в CATME PIM.
Я задал требования к переносу: исходный файл остаётся неизменным, результат можно сверить по числу записей и контрольной сумме. Строки читаются и записываются по мере обработки, поэтому весь результат не приходится держать в памяти. Если расположение заголовков неясно, его нужно уточнить, чтобы строка с товаром не стала заголовком.
Локально в CATME PIM так был обработан прайс Читай-Города: XLSX размером 453 МБ с 683 900 строками. После конвертации данные удалось разобрать по полям и загрузить в базу. Это исходная работающая возможность, вокруг которой я стал собирать отдельный сервис.
Довести результат до человека
В удалённом сервисе недостаточно выполнить конвертацию. Агенту нужно понять, готов ли заказ, получить именно свой файл и убедиться, что скачивание завершилось. Вместе с агентами разработки я выстраивал весь этот путь: приём файла, обработку, закрытую выдачу, проверку и подтверждение получения. Результат выдаётся архивом с данными и сведениями для проверки его состава и целостности.
Я также убрал из пользовательского сценария ручной перенос секретных токенов. Человек подтверждает доступ в браузере, а агент работает с разрешённым заказом. Архив доступен его владельцу; права на управление сервером для этого не нужны. После подтверждения получения доступ к выдаче закрывается.
Получить данные и продолжить работу
Для выдачи результата мы разработали разные способы доставки. Первый вариант сохранял архив на подключённый к сервису Яндекс Диск и возвращал ссылку на скачивание. В варианте с личным доступом архив выдаётся только владельцу через его агента. Агент сохраняет его на компьютере человека и проверяет перед подтверждением получения.
В архиве — табличные данные и сведения для проверки их состава и целостности. Встроенные в Excel изображения в этот результат не входят. Данные можно передать в каталог, базу или следующую программу, а агент может продолжить работу с ними. Конвертация становится одним из шагов задачи, которую человек уже решает вместе со своим ИИ.