Оглавление

Разработчики AI-агентов получили мощный инструмент для анализа их поведения и производительности. Компания Google анонсировала BigQuery Agent Analytics — плагин для Agent Development Kit (ADK), который позволяет собирать и анализировать данные о взаимодействии пользователей с AI-агентами.

От взаимодействия к пониманию

В мире агентного искусственного интеллекта создание агента — это только половина дела. Вторая, не менее важная задача — понимать, как пользователи взаимодействуют с ним. Какие запросы они задают чаще всего? Где возникают проблемы? Какие сценарии приводят к успешным результатам? Ответы на эти вопросы критически важны для улучшения агентов и создания качественного пользовательского опыта.

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

Архитектура решения

BigQuery Agent Analytics состоит из трех ключевых компонентов:

  • Плагин ADK: Одна строка кода позволяет передавать данные о деятельности агента, включая запросы, ответы, вызовы инструментов LLM и другую информацию, в таблицу BigQuery.
  • Предопределенная схема BigQuery: Готовая оптимизированная схема таблицы хранит детальную информацию о пользовательских взаимодействиях, ответах агента и использовании инструментов.
  • Эффективная потоковая передача: Плагин использует BigQuery Storage Write API для потоковой передачи событий в реальном времени.

Преимущества для разработчиков

Интеграция аналитических данных агента в BigQuery открывает возможности для глубокого анализа и генерации действенных инсайтов:

  • Визуализация использования и взаимодействий: Отслеживание ключевых операционных метрик, таких как потребление токенов и использование инструментов, для мониторинга затрат и распределения ресурсов.
  • Оценка качества агента с помощью продвинутого ИИ: Использование возможностей BigQuery для анализа качества данных разговоров с большей точностью.
  • Интерактивный анализ данных: Создание разговорного агента данных, который работает непосредственно с обсервабельными данными, позволяя задавать вопросы о деятельности агента на естественном языке.

Техническая реализация

Процесс настройки аналитического конвейера максимально упрощен:

  1. Добавление кода: Плагин требует использования компонента application(apps) ADK при создании агента.
  2. Настройка потоковой передачи и предварительной обработки: Полный контроль над передаваемыми данными с возможностью фильтрации событий и кастомизации предварительной обработки.

Пример кода инициализации плагина:

# --- Initialize the Plugin ---
bq_logging_plugin = BigQueryAgentAnalyticsPlugin(
 project_id=PROJECT_ID,
 dataset_id=DATASET_ID,
 table_id="agent_events" # Optional
)

# --- Initialize Model and the root agent ---
llm = Gemini(
 model="gemini-2.5-flash",
)

root_agent = Agent(
 model=llm,
 name='my_adk_agent',
 instruction="You are a helpful assistant"
)

# --- Create the App ---
app = App(
 name="my_adk_agent",
 root_agent=root_agent,
 plugins=[bq_logging_plugin], # Register the plugin here
)

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

import json
import re

from google.adk.plugins.bigquery_agent_analytics_plugin import BigQueryLoggerConfig

def redact_dollar_amounts(event_content: Any) -> str:
 """
 Custom formatter to redact dollar amounts (e.g., $600, $12.50)
 and ensure JSON output if the input is a dict.
 """
 text_content = ""
 if isinstance(event_content, dict):
 text_content = json.dumps(event_content)
 else:
 text_content = str(event_content)

 # Regex to find dollar amounts: $ followed by digits, optionally with commas or decimals.
 # Examples: $600, $1,200.50, $0.99
 redacted_content = re.sub(r'\$\d+(?:,\d{3})*(?:\.\d+)?', 'xxx', text_content)
 return redacted_content

config = BigQueryLoggerConfig(
 enabled=True,
 event_allowlist=["LLM_REQUEST", "LLM_RESPONSE"], # Only log these events
 shutdown_timeout=10.0, # Wait up to 10s for logs to flush on exit
 client_close_timeout=2.0, # Wait up to 2s for BQ client to close
 max_content_length=500, # Truncate content to 500 chars (default)
 content_formatter=redact_dollar_amounts, # Redact the dollar amounts in the logging content
)

plugin = BigQueryAgentAnalyticsPlugin(..., config=config)

Наконец-то появляются инструменты, которые превращают разработку AI-агентов из искусства в науку. Возможность анализировать реальное поведение пользователей в BigQuery — это именно то, чего не хватало рынку. Пока конкуренты сосредоточены на создании всё более умных моделей, Google делает ставку на инструменты observability, и это стратегически верный ход. В конце концов, даже самый гениальный агент бесполезен, если непонятно, как и зачем его улучшать.

Плагин доступен в preview для пользователей ADK, с поддержкой других агентных фреймворков в ближайшем будущем.

По материалам Google Cloud Blog.