Искусственный интеллект
Автономные агенты с AgentOps: наблюдаемость, отслеживаемость и больше для вашего приложения ИИ

Рост автономных агентов, основанных на фундаментальных моделях (ФМ), таких как большие языковые модели (БЯМ), изменил способ решения сложных, многоступенчатых задач. Эти агенты выполняют задачи, начиная от поддержки клиентов и заканчивая разработкой программного обеспечения, ориентируясь в сложных рабочих процессах, которые сочетают рассуждения, использование инструментов и память.
Однако по мере роста возможностей и сложности этих систем возникают проблемы с наблюдаемостью, надежностью и соблюдением требований.
Это где вступает в действие AgentOps; концепция, разработанная по аналогии с DevOps и MLOps, но адаптированная для управления жизненным циклом агентов на основе ФМ.
Что такое AgentOps?
AgentOps относится к процессам, инструментам и фреймворкам, необходимым для проектирования, развертывания, мониторинга и оптимизации автономных агентов на основе ФМ в производстве. Его цели:
- Наблюдаемость: Предоставление полной видимости в процессах выполнения и принятия решений агентом.
- Отслеживаемость: Захват подробных артефактов на протяжении всего жизненного цикла агента для отладки, оптимизации и соблюдения требований.
- Надежность: Обеспечение последовательных и достоверных выходных данных через мониторинг и прочные рабочие процессы.
В своей основе AgentOps расширяет традиционный MLOps, подчеркивая итеративные, многоступенчатые рабочие процессы, интеграцию инструментов и адаптивную память, сохраняя при этом строгий учет и мониторинг.
Ключевые проблемы, решаемые AgentOps
1. Сложность агентных систем
Автономные агенты обрабатывают задачи в огромном пространстве действий, требуя решений на каждом шаге. Эта сложность требует сложных механизмов планирования и мониторинга.
2. Требования к наблюдаемости
Высокие ставки в использовании – такие как медицинская диагностика или юридический анализ – требуют детальной отслеживаемости. Соблюдение нормативных требований, таких как закон ЕС об ИИ, еще больше подчеркивает необходимость прочных фреймворков наблюдаемости.
3. Отладка и оптимизация
Определение ошибок в многоступенчатых рабочих процессах или оценка промежуточных выходных данных является сложной задачей без подробных следов действий агента.
4. Масштабируемость и управление затратами
Масштабирование агентов для производства требует мониторинга метрик, таких как задержка, использование токенов и операционные затраты, для обеспечения эффективности без компрометации качества.
Основные функции платформ AgentOps
1. Создание и настройка агентов
Разработчики могут настроить агентов, используя реестр компонентов:
- Роли: Определите обязанности (например, исследователь, планировщик).
- Ограничения: Установите ограничения для обеспечения этичного и надежного поведения.
- Наборы инструментов: Включите интеграцию с API, базами данных или графами знаний.
Агенты создаются для взаимодействия с конкретными наборами данных, инструментами и подсказками, сохраняя при этом соблюдение предопределенных правил.
2. Наблюдаемость и отслеживание
AgentOps захватывает подробные журналы выполнения:
- Следы: Записывают каждый шаг в рабочем процессе агента, от вызовов БЯМ до использования инструментов.
- Отрезки: Разбивают следы на детальные шаги, такие как извлечение, генерация вложений или вызов инструментов.
- Артефакты: Отслеживают промежуточные выходные данные, состояния памяти и шаблоны подсказок для помощи в отладке.
Инструменты наблюдаемости, такие как Langfuse или Arize, предоставляют панели управления, которые визуализируют эти следы, помогая выявить узкие места или ошибки.
3. Управление подсказками
Инженерия подсказок играет важную роль в формировании поведения агента. Ключевые функции включают:
- Версионирование: Отслеживают итерации подсказок для сравнения производительности.
- Обнаружение внедрения: Выявляют вредоносный код или ошибки ввода внутри подсказок.
- Оптимизация: Техники, такие как Chain-of-Thought (CoT) или Tree-of-Thought, улучшают возможности рассуждения.
4. Интеграция обратной связи
Обратная связь человека остается важной для итеративных улучшений:
- Явная обратная связь: Пользователи оценивают выходные данные или предоставляют комментарии.
- Неявная обратная связь: Метрики, такие как время на задаче или коэффициент кликов, анализируются для оценки эффективности.
Этот цикл обратной связи совершенствует как производительность агента, так и эталонные показатели, используемые для тестирования.
5. Оценка и тестирование
Платформы AgentOps облегчают строгое тестирование по:
- Эталонам: Сравнивают производительность агента с отраслевыми стандартами.
- Оценкам шаг за шагом: Оценивают промежуточные шаги в рабочих процессах, чтобы обеспечить правильность.
- Оценке траектории: Проверяют путь принятия решений, пройденный агентом.
6. Интеграция памяти и знаний
Агенты используют краткосрочную память для контекста (например, истории разговора) и долгосрочную память для хранения выводов из прошлых задач. Это позволяет агентам адаптироваться динамически, сохраняя при этом последовательность во времени.
7. Мониторинг и метрики
Комплексный мониторинг отслеживает:
- Задержку: Измеряют время ответа для оптимизации.
- Использование токенов: Мониторят потребление ресурсов для контроля затрат.
- Метрики качества: Оценивают актуальность, точность и токсичность.
Эти метрики визуализируются по различным измерениям, таким как сессии пользователей, подсказки и рабочие процессы, позволяя проводить реальные вмешательства.
Таксономия отслеживаемых артефактов
Статья вводит систематическую таксономию артефактов, лежащих в основе наблюдаемости AgentOps:
- Артефакты создания агента: Метаданные о ролях, целях и ограничениях.
- Артефакты выполнения: Журналы вызовов инструментов, очередей подзадач и шагов рассуждения.
- Артефакты оценки: Эталоны, циклы обратной связи и метрики оценки.
- Артефакты отслеживания: Идентификаторы сессий, идентификаторы следов и отрезки для детального мониторинга.
Эта таксономия обеспечивает последовательность и ясность на протяжении всего жизненного цикла агента, делая отладку и соблюдение требований более управляемыми.
AgentOps (инструмент) – обзор
Этот обзор проведет вас через настройку и использование AgentOps для мониторинга и оптимизации ваших ИИ-агентов.
Шаг 1: Установите SDK AgentOps
Установите AgentOps, используя ваш менеджер пакетов Python:
pip install agentops
Шаг 2: Инициализируйте AgentOps
Сначала импортируйте AgentOps и инициализируйте его, используя ваш ключ API. Храните ключ API в файле .env для безопасности:
# Инициализируйте AgentOps с ключом API import agentops import os from dotenv import load_dotenv <p># Загрузите переменные окружения load_dotenv() AGENTOPS_API_KEY = os.getenv("AGENTOPS_API_KEY")</p> <p># Инициализируйте клиент AgentOps agentops.init(api_key=AGENTOPS_API_KEY, default_tags=["my-first-agent"])</p>
Этот шаг настраивает наблюдаемость для всех взаимодействий БЯМ в вашем приложении.
Шаг 3: Запишите действия с помощью декораторов
Вы можете инструментировать конкретные функции, используя декоратор @record_action, который отслеживает их параметры, время выполнения и выходные данные. Вот пример:
from agentops import record_action <p>@record_action("custom-action-tracker") def is_prime(number): """Проверьте, является ли число простым.""" if number &lt; 2: return False for i in range(2, int(number**0.5) + 1): if number % i == 0: return False return True</p>
Функция теперь будет записана в панели управления AgentOps, предоставляя метрики для времени выполнения и отслеживания входных и выходных данных.
Шаг 4: Отслеживайте именованные агенты
Если вы используете именованные агенты, используйте декоратор @track_agent, чтобы связать все действия и события с конкретными агентами.
from agentops import track_agent <p>@track_agent(name="math-agent") class MathAgent: def __init__(self, name): self.name = name</p> <p>def factorial(self, n): """Рассчитайте факториал рекурсивно.""" return 1 if n == 0 else n * self.factorial(n - 1)</p>
Любые действия или вызовы БЯМ внутри этого агента теперь ассоциируются с тегом “math-agent”.
Шаг 5: Поддержка нескольких агентов
Для систем, использующих несколько агентов, вы можете отслеживать события между агентами для лучшей наблюдаемости. Вот пример:
@track_agent(name="qa-agent")
class QAAgent:
def generate_response(self, prompt):
return f"Отвечаю на: {prompt}"
<p>@track_agent(name="developer-agent")
class DeveloperAgent:
def generate_code(self, task_description):
return f"# Код для выполнения: {task_description}"</p>
<p>qa_agent = QAAgent()
developer_agent = DeveloperAgent()</p>
<p>response = qa_agent.generate_response("Объясните наблюдаемость в ИИ.")
code = developer_agent.generate_code("вычислить последовательность Фибоначчи")</p>
Каждый вызов будет отображаться в панели управления AgentOps под соответствующим именем агента.
Шаг 6: Завершите сессию
Чтобы сигнализировать о конце сессии, используйте метод end_session. Необязательно, включите состояние сессии (Успех или Неудача) и причину.
# Конец сессии agentops.end_session(state="Success", reason="Завершен рабочий процесс")
Это обеспечивает запись всех данных и их доступность в панели управления AgentOps.
Шаг 7: Визуализируйте в панели управления AgentOps
Посетите панель управления AgentOps, чтобы изучить:
- Повторное воспроизведение сессий: Шаг за шагом следы выполнения.
- Аналитика: Метрики стоимости БЯМ, использования токенов и задержки.
- Обнаружение ошибок: Выявите и отладьте неудачи или рекурсивные циклы.
Улучшенный пример: обнаружение рекурсивных мыслей
AgentOps также поддерживает обнаружение рекурсивных циклов в рабочих процессах агентов. Давайте расширим предыдущий пример с обнаружением рекурсии:












