AgentScope 2.0.10: корпоративный агент ломается на чтении таблиц

Разбор AgentScope 2.0.10: таблицы Word, дубли заголовков Excel и TTS. Почему агент ломается на входных данных и как сократить время до результата.

  • Что вошло в релиз
  • Почему таблица ломает RAG
  • Голос: та же проблема контракта
  • Что это значит для бизнеса

Повод

  1. Команда AgentScope, открытого мультиагентного фреймворка от инженеров Alibaba, выпустила версию 2.0.10. Новых функций в ней почти нет.

  2. Два исправления касаются того, как RAG-модуль читает таблицы из Word и Excel, ещё три относятся к синтезу и распознаванию речи.

  3. Мне этот релиз интереснее громких анонсов: по нему видно, где агент ломается в реальной компании.

  4. По моему опыту, чаще всего он ломается на входе, когда разбирает документ.

  5. От качества этого разбора зависит, через сколько недель агент начнёт приносить пользу.

Что вошло в релиз

В списке изменений версии 2.0.10 стоит внимательно прочитать пять пунктов: - #2961: RAG сохраняет столбцы Word-таблицы, которые парсер раньше пропускал; - #2948: RAG корректно обрабатывает повторяющиеся и пустые заголовки столбцов в Excel; - #2980: аудио из TTS получает метку того формата, в котором синтез реально выполнен; - #2990: TTS учитывает инструкции к речи, переданные в конкретном вызове; - #2925: расшифровка аудио от DashScope (облачной платформы моделей Alibaba) приходит текстом.

В документации команда параллельно анонсировала SOP-сценарии (агент выполняет заранее описанную стандартную процедуру по шагам), TeamPipeline для работы группы агентов и поддержку моделей MiniMax. Для бизнеса важнее первые два пункта.

Почему таблица ломает RAG

RAG (retrieval-augmented generation) устроен так: система режет документы на фрагменты, превращает их в векторы и по вопросу находит самые близкие куски, по которым модель пишет ответ.

Модель видит только то, что ей передал парсер.

Если парсер испортил таблицу, модель уверенно ответит по испорченным данным.

Возьмём два типичных сбоя

В договоре из Word у таблицы объединены ячейки, и парсер выбрасывает столбец: значения сдвигаются, и цена попадает в графу «срок поставки». В прайсе поставщика из Excel два столбца называются «Цена» (опт и розница), а у третьего нет заголовка.

Если строки складываются в словарь по имени столбца, вторая «Цена» перезаписывает первую, а безымянный столбец пропадает.

Система не выдаёт ошибку, и агент называет менеджеру неверную цифру.

Исправления #2961 и #2948 закрывают именно этот класс ошибок.

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

Оценить, где ИИ даст эффект в вашем процессе

Голос: та же проблема контракта

Исправления в TTS выглядят мелкими, но устроены так же

Если аудио помечено одним форматом, а записано в другом, плеер в колл-центре или в мобильном приложении его не воспроизведёт.

Если синтез игнорирует инструкцию «говори медленно и официально»

, бот озвучит юридически важную фразу бодрым рекламным тоном

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

Что это значит для бизнеса

На демо агент отвечает по чистому PDF, и результат впечатляет

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

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

Отсюда простое правило для руководителя.

Метрика agent-проекта - TTU, time to use: сколько дней проходит до момента, когда сотрудник получает от агента правильный ответ по своим реальным документам.

Пока в тестовом наборе нет ваших собственных «грязных» файлов, демо ничего не доказывает.

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

Как мы закрываем это технически

  1. В проектах KT.Team мы начинаем с входных данных и только потом выбираем модель. Нормализация до векторизации.

  2. Атрибуты товаров мы собираем в PIM-системе (Akeneo, Pimcore): у каждого поля там есть тип, единица измерения и место в таксономии.

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

  4. На этом же слое строятся фасеты и тексты карточек, и одни и те же данные работают на поиск и на ответы агента. Структурный доступ вместо выгрузок.

  5. Когда данные живут в 1С, мы даём агенту доступ через MCP (протокол, по которому модель вызывает внешние инструменты) к конкретным методам: «остаток по артикулу», «статус заказа».

  6. Модель тогда не читает Excel-выгрузку и не может прочитать её неправильно. Регрессионный набор уродливых файлов.

  7. Мы собираем у заказчика реальные документы с объединёнными ячейками, пустыми заголовками и дублями столбцов.

  8. Каждое обновление парсера или фреймворка, включая патчи вроде 2.0.10, мы прогоняем на этом наборе до выкладки. Шлюз между агентом и моделями. LLM & Security Gateway маршрутизирует запросы между GigaChat, YandexGPT, Qwen и Claude, логирует ответы и маскирует персональные данные.

  9. Модель можно заменить без переписывания агента, а любой ответ можно восстановить при разборе ошибки.

Вердикт

AgentScope 2.0.10 - скучный релиз, и этим он полезен. Мейнтейнеры чинят то, на чём спотыкаются живые внедрения: столбцы таблиц, заголовки Excel, форматы аудио. Компании, которая выбирает агентный фреймворк, я советую искать в changelog именно такие исправления: они говорят о зрелости больше, чем список поддерживаемых моделей. Агент, который правильно читает ваш прайс, начнёт приносить деньги раньше агента с более сильной моделью, читающего тот же прайс со сдвигом на один столбец.

Обсудить статью: AgentScope 2.0.10: корпоративный агент…

Укажите email или телефон, чтобы мы могли вам ответить.

Отправить через: