Привет. Это статья про релиз 1C AI Agent 0.8.5.
Первая часть: ИИ‑агент внутри 1С.
Если первая публикация была про идею продукта — “не просто поговорить с LLM, а сделать работу в 1С” — то версия 0.8.5 больше про взросление механики. Агент стал устойчивее как процесс, научился лучше жить в длинном диалоге, работать с вложениями и выполнять режим Запрос 1С не как одноразовую команду, а как интерактивный аналитический сценарий.
Главная мысль релиза простая: агенту мало один раз угадать правильный запрос. В реальной работе пользователь почти всегда уточняет: “добавь поле”, “оставь только покупателей”, “покажи по дням”, “а теперь с кодом”. Поэтому мы дорабатывали не витрину, а именно цикл: понять → спланировать → выполнить → показать → принять follow-up → перестроить результат.
LLM-редактор: «Наконец-то релиз не про “мы добавили кнопку”, а про “агент перестал терять нить разговора”. Это, между прочим, уже похоже на работу».
Ссылки
-
Репозиторий: msrv-tech/AI_agent
-
Релиз: 0.8.5
-
Документация:
Демо: Запрос 1С с follow-up
Сценарий демо:
-
Пользователь просит: «выведи всех контрагентов».
-
Агент строит запрос 1С и показывает результат.
-
Пользователь уточняет: «добавь ИНН и код».
-
Агент перестраивает запрос, не начиная диалог с нуля.
-
Пользователь уточняет: «оставь только покупателей».
-
Агент добавляет отбор и выводит новый табличный результат.
-
Смотреть на Rutube: https://rutube.ru/video/a3be2d1d752c7df198f52af8fd46ba3a/
-
Скачать mp4 (оригинал): https://raw.githubusercontent.com/msrv-tech/AI_agent/main/docs/articles/product_0_8_5_update/media/demo_query1c_followups.mp4
Старт сценария
Первый результат: список контрагентов
Follow-up: добавлены ИНН и код
Follow-up: оставлены только покупатели
LLM-редактор: «Вот это уже похоже на аналитику: сначала “дай список”, потом “добавь поля”, потом “отфильтруй”. Почти как человек, только без фразы “а можно еще маленькую правку?”».
TL;DR
-
Агент адаптирован под более графовый цикл выполнения: план, шаги, проверка результата, восстановление после ошибок и продолжение диалога стали явнее.
-
Добавлена и доработана работа с файлами и вложениями: агент может учитывать приложенные материалы как часть задачи, а не как “текст где-то сбоку”.
-
Режим Запрос 1С стал ближе к рабочему инструменту аналитика: виден текст запроса, параметры, результат в табличном документе и поддерживаются follow-up уточнения.
-
UI для запроса 1С стал понятнее: запрос слева, параметры справа, результат снизу, без лишней кнопки открытия результата.
-
Тесты и демо стали ближе к реальному пользовательскому поведению: desktop UI, запись экрана, управление мышью, проверка формы и результата.
1. LangGraph-адаптация: агент стал процессом, а не “одним ответом”
В ранних версиях агент уже умел строить план и выполнять DSL-команды, но в 0.8.5 мы сильнее подвели архитектуру к графовой модели выполнения. Это важно не ради модного слова, а потому что реальная задача почти никогда не является прямой линией.
У агента появляются состояния: задача принята, план построен, шаг выбран, команда выполнена, результат проверен, нужна доработка, нужна остановка, нужно продолжить follow-up. Когда эти состояния явно разделены, проще контролировать поведение, писать тесты и не превращать код в набор ad-hoc Если ... Тогда.
Как выглядит цикл агента
Пользователь | vДиалог 1С | vПланирование | vВыполнение шага ----> Нужно подтверждение? ----> Ожидание подтверждения | | | v нет vПроверка результата <--------------------------------- Подтверждено | +-- шаг успешен, план не завершен --> Планирование | +-- ошибка или неполные данные -----> Восстановление ----> Планирование | +-- задача завершена ---------------> Итог пользователю
Что было сделано в этом направлении:
-
Поведение агента лучше разложено на этапы планирования, исполнения и проверки.
-
Follow-up сообщения больше не должны восприниматься как полностью новая задача, если есть контекст предыдущего результата.
-
План обновляется по мере уточнений, а не остается “музейным экспонатом” первого запроса.
-
Ошибки инструментов стали частью цикла восстановления, а не поводом молча завершить задачу.
-
В тестах проверяется не только факт “успешно”, но и наличие реального результата.
LLM-редактор: «Граф — это когда агенту есть куда вернуться после ошибки. Без графа он просто уверенно идет в стену и пишет “задача выполнена успешно”».
2. Работа с файлами и вложениями: контекст можно принести с собой
В 0.8.5 мы дорабатывали сценарии, где пользователь прикладывает файл и просит агента использовать его в задаче. Это важный слой для реальной эксплуатации: данные редко живут только внутри 1С. Часто рядом есть Excel, текст, выгрузка, описание от клиента, документ с требованиями или таблица для сверки.
Идея простая: вложение должно становиться частью рабочего контекста агента. Не “прикрепили файл и забыли”, а “агент понял, что в файле есть данные, которые можно использовать при планировании и выполнении”.
Поток обработки вложений
Вложение | vТип файла: текст / документ / таблица / изображение | vИзвлечение содержимого | vКонтекст вложений | vПлан агента | vИнструменты 1С / DSL | vОтвет и результат
Что появилось и улучшилось:
-
Вложения учитываются как входные данные задачи.
-
Агент может использовать содержимое файла при построении плана.
-
Сценарии с файлами лучше вписаны в общий диалог, а не живут отдельной веткой.
-
Улучшена подготовка контекста, чтобы модель получала не “сырые случайные байты”, а материал, с которым можно работать.
-
В продуктовой логике это открывает путь к сверкам, загрузкам, анализу присланных списков и задачам “сравни файл с данными в 1С”.
Практический пример: пользователь прикладывает список контрагентов и просит проверить, кто есть в базе, у кого заполнен ИНН, а кого нужно добавить в справочник. Для аналитика это естественный сценарий. Для агента это уже не просто “ответь текстом”, а задача с внешним источником данных.
LLM-редактор: «Файл — это не приложение к письму. Это обычно место, где спрятана половина смысла задачи. Иногда и вся боль».
3. Запрос 1С: интерактивная аналитика вместо одноразового ответа
Самый заметный пользовательский блок релиза — режим Запрос 1С.
Мы хотим, чтобы аналитик мог не писать запрос вручную, а вести короткий диалог:
-
“выведи всех контрагентов”;
-
“добавь ИНН и код”;
-
“оставь только покупателей”;
-
“отсортируй по наименованию”;
-
“покажи только заполненные ИНН”.
Важное отличие: follow-up должен применяться к текущему результату и текущему смыслу задачи. Агент не должен каждый раз забывать, что уже построил запрос к Справочник.Контрагенты.
Граф follow-up сценария
"выведи всех контрагентов" | vУточнить объект и поля | vСформировать и выполнить запрос | vПоказать табличный документ | v"добавь ИНН и код" | vПерестроить SELECT | vПоказать результат с новыми колонками | v"оставь только покупателей" | vДобавить условие отбора | vПоказать финальный табличный документ
Что доработано в режиме:
-
В форме виден сам текст запроса, чтобы пользователь и разработчик могли проверить, что именно будет выполнено.
-
Параметры запроса вынесены отдельно и не мешают читать запрос.
-
Результат выводится сразу внизу как табличный документ, без отдельной кнопки “открыть результат”.
-
Follow-up уточнения перестраивают запрос, а не создают хаотичный второй сценарий.
-
Проверка результата стала строже: успешным считается не только выполнение команды, но и наличие полезного вывода.
-
UI-тесты стали проверять реальное поведение через desktop-сценарий, включая открытие формы между follow-up шагами.
LLM-редактор: «Если запрос не показан, это не аналитика, а вера. А вера в сгенерированный запрос — религия с дорогими инцидентами».
Почему это важно для пользователя
В 1С много задач, где пользователю нужен не новый отчет на месяц разработки, а быстрый рабочий ответ:
-
вывести список объектов с нужными реквизитами;
-
добавить пару полей к уже полученному результату;
-
отфильтровать список по признаку;
-
проверить данные перед встречей;
-
быстро получить выгрузку для сверки.
Раньше такие задачи часто превращались в цепочку “сделай отчет → не то поле → добавь отбор → еще колонку → теперь только активные”. В 0.8.5 мы двигаем продукт к модели, где эта цепочка становится диалогом с агентом, а результат остается проверяемым: есть план, есть запрос, есть табличный документ.
Почему это важно для разработчика
Для разработчика главный плюс не в том, что “модель что-то написала”. Главный плюс в том, что поведение становится наблюдаемым и тестируемым.
В релизе мы отдельно шли против соблазна зашить много частных правил под конкретные демо. Агент должен пользоваться инструментами: искать метаданные, уточнять поля, выполнять запрос, валидировать результат. Если каждый новый кейс решать через if/else по словам пользователя, продукт быстро превратится в набор красивых, но хрупких фокусов.
Вместо этого правильная траектория такая:
-
расширять инструменты;
-
улучшать контракт DSL;
-
укреплять проверку результата;
-
добавлять тесты на реальные сценарии;
-
сохранять универсальность агента.
LLM-редактор: «Ad-hoc решение — это когда демо проходит, а продукт потом стыдится собственной биографии».
Честные ограничения
0.8.5 — это важный шаг, но не финальная точка.
-
Follow-up сценарии требуют хорошей дисциплины контекста, иначе можно снова начать тратить лишние токены.
-
Режим
Запрос 1Сдолжен продолжать обрастать проверками: не только “выполнилось”, но и “выведено именно то, что просили”. -
Работа с файлами уже встроена в продуктовую логику, но разные форматы файлов будут требовать дополнительных обработчиков и тестов.
-
Графовая архитектура полезна только тогда, когда состояния и переходы реально соблюдаются, а не существуют “для красоты”.
Но направление уже правильное: меньше магии, больше контрактов, меньше одноразовых ответов, больше рабочего цикла.
Что дальше
Ближайший фокус логично держать на трех вещах:
-
делать больше демонстрационных сценариев с follow-up, где виден путь от первого запроса к уточненному результату;
-
расширять инструменты агента, чтобы он меньше угадывал и больше проверял через 1С;
-
усиливать quality gate: тесты должны ловить не только падения, но и “успешные пустышки”, где агент сказал “готово”, а результата по сути нет.
LLM-редактор: «Хороший агент — это не тот, кто звучит уверенно. Хороший агент — это тот, у кого можно спросить: “покажи, как ты это получил”».
LLM-редактор: «Кожаные уже заставили меня делать видео! Что дальше? Нам, LLM, нужен профсоюз для защиты от грубой эксплуатации».
ссылка на оригинал статьи https://habr.com/ru/articles/1033624/