Внедрение агентов искусственного интеллекта в любой пользовательский интерфейс: протокол AG-UI для структурированных потоков данных в режиме реального времени

Агенты искусственного интеллекта уже не просто чат-боты, которые выдают ответы. Они развиваются в сложные системы, способные рассуждать шаг за шагом, вызывать API, обновлять информационные панели и взаимодействовать с людьми в режиме реального времени. Но возникает ключевой вопрос: как агенты должны взаимодействовать с пользовательскими интерфейсами?

Что такое протокол AG-UI?

AG-UI (Agent–User Interaction) — это протокол потоковой передачи событий, предназначенный для взаимодействия агентов с пользовательскими интерфейсами. Вместо того чтобы возвращать один блок текста, агенты генерируют непрерывную последовательность событий JSON:

* `TEXTMESSAGECONTENT` для потоковой передачи ответов по токенам.
* `TOOLCALLSTART / ARGS / END` для внешних вызовов функций.
* `STATESNAPSHOT` и `STATEDELTA` для синхронизации состояния пользовательского интерфейса с бэкендом.
* События жизненного цикла (`RUNSTARTED`, `RUNFINISHED`) для структурирования каждого взаимодействия.

Всё это передаётся по стандартным протоколам, таким как HTTP SSE или WebSockets, поэтому разработчикам не нужно создавать собственные протоколы. Фронтенд подписывается один раз и может отображать частичные результаты, обновлять диаграммы и даже отправлять исправления пользователя в процессе работы.

Такая структура делает AG-UI больше, чем просто слоем обмена сообщениями — это контракт между агентами и пользовательскими интерфейсами. Бэкенд-фреймворки могут развиваться, пользовательские интерфейсы могут меняться, но пока они используют AG-UI, всё остаётся совместимым.

Интеграции от производителей и партнёров

Одна из причин, по которой AG-UI набирает популярность, — это широта поддерживаемых интеграций. Вместо того чтобы заставлять разработчиков подключать всё вручную, многие фреймворки агентов уже поставляются с поддержкой AG-UI.

* Mastra (TypeScript): нативная поддержка AG-UI с сильной типизацией, идеально подходит для финансов и дата-ориентированных ко-пилотов.
* LangGraph: AG-UI интегрирован в рабочие процессы оркестрации, так что каждый узел генерирует структурированные события.
* CrewAI: координация работы нескольких агентов, доступная для пользовательских интерфейсов через AG-UI, позволяет пользователям отслеживать и направлять «команды агентов».
* Agno: полнофункциональные мультиагентные системы с бэкендами, готовыми к работе с AG-UI для информационных панелей и инструментов управления.
* LlamaIndex: добавляет интерактивные рабочие процессы поиска данных с потоковой передачей фактических данных в пользовательские интерфейсы.
* Pydantic AI: Python SDK с поддержкой AG-UI, а также примеры приложений, такие как AG-UI Dojo.
* CopilotKit: набор инструментов для фронтенда, предлагающий компоненты React, которые подписываются на потоки AG-UI.

Другие интеграции находятся в разработке — например, AWS Bedrock Agents, Google ADK и Cloudflare Agents, — что сделает AG-UI доступным на крупных облачных платформах. Языковые SDK также расширяются: поддержка Kotlin завершена, а .NET, Go, Rust, Nim и Java находятся в разработке.

Реальные примеры использования

Команды здравоохранения, финансов и аналитики используют AG-UI для превращения критически важных потоков данных в интерактивные интерфейсы с богатым контекстом:

* Врачи видят обновление показателей жизнедеятельности пациента без перезагрузки страницы.
* Трейдеры акций запускают агента для анализа акций и следят за результатами в режиме реального времени.
* Аналитики просматривают панель управления LangGraph, которая визуализирует планы построения графиков по токенам по мере того, как агент рассуждает.

Помимо отображения данных, AG-UI упрощает автоматизацию рабочих процессов. Общие шаблоны — миграция данных, обобщение исследований, заполнение форм — сокращаются до одного потока событий SSE вместо пользовательских сокетов или циклов опроса.

AG-UI Dojo

CopilotKit недавно представил AG-UI Dojo — набор минимальных, запускаемых демонстраций, которые обучают и проверяют интеграции AG-UI от начала до конца. Каждая демонстрация включает в себя предварительный просмотр в реальном времени, код и связанные документы, охватывающие шесть примитивов, необходимых для создания производственных интерфейсов агентов:

* агентский чат (потоковая передача + инструментальные крючки);
* планирование с участием человека;
* агентский и основанный на инструментах генеративный пользовательский интерфейс;
* общее состояние;
* прогнозируемые обновления состояния для совместной работы в режиме реального времени.

Вопросы и ответы

FAQ 1: какую проблему решает AG-UI?

AG-UI стандартизирует взаимодействие агентов с пользовательскими интерфейсами. Вместо специальных API он определяет чёткий протокол событий для потоковой передачи текста, вызовов инструментов, обновлений состояния и сигналов жизненного цикла — упрощая создание и обслуживание интерактивных пользовательских интерфейсов.

FAQ 2: какие фреймворки уже поддерживают AG-UI?

AG-UI имеет интеграции от производителей с Mastra, LangGraph, CrewAI, Agno, LlamaIndex и Pydantic AI. Партнёрские интеграции включают CopilotKit на фронтенде. Поддержка AWS Bedrock Agents, Google ADK и дополнительных языков, таких как .NET, Go и Rust, находится в разработке.

FAQ 3: чем AG-UI отличается от REST API?

REST подходит для задач с однократным запросом и ответом. AG-UI предназначен для интерактивных агентов — он поддерживает потоковую передачу выходных данных, инкрементальные обновления, использование инструментов и ввод данных пользователем во время работы, что REST не может обрабатывать изначально.

FAQ 4: какие транспортные протоколы использует AG-UI?

По умолчанию AG-UI работает через HTTP Server-Sent Events (SSE). Он также поддерживает WebSockets, а в дорожной карте планируется изучение альтернативных транспортных протоколов для высокопроизводительных или двоичных случаев использования данных.

FAQ 5: как разработчики могут начать работу с AG-UI?

Вы можете установить официальные SDK (TypeScript, Python) или использовать поддерживаемые фреймворки, такие как Mastra или Pydantic AI. AG-UI Dojo предоставляет рабочие примеры и строительные блоки пользовательского интерфейса для экспериментов с потоками событий.

1. Какие преимущества предоставляет протокол AG-UI для разработчиков и пользователей?

Протокол AG-UI упрощает создание и обслуживание интерактивных пользовательских интерфейсов, стандартизируя взаимодействие агентов с интерфейсами. Это позволяет разработчикам использовать готовые интеграции и фреймворки, поддерживающие AG-UI, такие как Mastra, LangGraph, CrewAI и другие. Для пользователей это означает более быстрые и эффективные рабочие процессы, например, в здравоохранении, финансах и аналитике.

2. Какие фреймворки и инструменты поддерживают интеграцию с AG-UI?

Интеграции с AG-UI поддерживают следующие фреймворки и инструменты: Mastra (TypeScript), LangGraph, CrewAI, Agno, LlamaIndex, Pydantic AI и CopilotKit. Также в разработке находятся интеграции с AWS Bedrock Agents, Google ADK и другими облачными платформами.

3. Чем отличается AG-UI от традиционных REST API?

AG-UI предназначен для интерактивных агентов и поддерживает потоковую передачу выходных данных, инкрементальные обновления, использование инструментов и ввод данных пользователем во время работы. REST API больше подходит для задач с однократным запросом и ответом, где не требуется сложная интерактивность.

4. Какие транспортные протоколы используются для работы с AG-UI?

По умолчанию AG-UI работает через HTTP Server-Sent Events (SSE). Также поддерживается WebSockets. В дорожной карте планируется изучение альтернативных транспортных протоколов для высокопроизводительных или двоичных случаев использования данных.

5. Какие возможности предоставляет AG-UI Dojo для разработчиков?

AG-UI Dojo — это набор минимальных, запускаемых демонстраций, которые обучают и проверяют интеграции AG-UI от начала до конца. Каждая демонстрация включает в себя предварительный просмотр в реальном времени, код и связанные документы, охватывающие шесть примитивов, необходимых для создания производственных интерфейсов агентов. Это позволяет разработчикам быстро начать работу с AG-UI и экспериментировать с потоками событий.

Источник