Штучний інтелект
Автономні агенти з AgentOps: спостережливість, слідування та більше для вашого застосунку AI

Ріст автономних агентів за допомогою моделей基础 (FMs) як великих мовних моделей (LLMs) змінив спосіб вирішення складних багатокрокових проблем. Ці агенти виконують завдання, починаючи від підтримки клієнтів і закінчуючи розробкою програмного забезпечення, керуючись складними робочими процесами, які поєднують міркування, використання інструментів і пам’ять.
Однак, оскільки ці системи зростають у можливостях і складності, виникають проблеми зі спостережливістю, надійністю і відповідністю вимогам.
Саме тут вступає в дію AgentOps; це концепція, створена за зразком DevOps і MLOps, але адаптована для управління життєвим циклом агентів на основі FMs.
Для надання фундаментального розуміння AgentOps і його критичної ролі в забезпеченні спостережливості і слідування для автономних агентів на основі FMs, я використав знання з недавньої статті Таксономія AgentOps для забезпечення спостережливості агентів на основі моделей фундації Ліма Дона, Ціня Лу і Ліма Чжу. Стаття пропонує всебічне дослідження AgentOps, підкреслюючи його необхідність у управлінні життєвим циклом автономних агентів – від створення і виконання до оцінки і моніторингу. Автори категоризують слідові артефакти, пропонують ключові функції для платформ спостережливості і розглядають проблеми, такі як складність прийняття рішень і відповідність вимогам законодавства.
Хоча AgentOps (інструмент) здобув значну популярність як один з провідних інструментів для моніторингу, налагодження і оптимізації агентів AI (наприклад, autogen, crew ai), ця стаття зосереджена на ширшій концепції операцій з AI (Ops).
Тим не менше, AgentOps (інструмент) пропонує розробникам можливість отримувати інформацію про робочі процеси агентів за допомогою функцій, таких як повторне відтворення сесій, моніторинг витрат LLM і моніторинг відповідності вимогам. Як один з найпопулярніших інструментів Ops в AI, пізніше в статті ми пройдемо через його функціональність за допомогою навчального посібника.
Що таке AgentOps?
AgentOps відноситься до процесів, інструментів і рамок, необхідних для проектування, розгортання, моніторингу і оптимізації автономних агентів на основі FMs у виробництві. Його цілі:
- Спостережливість: Надання повної видимості виконання і процесів прийняття рішень агентом.
- Слідування: Захоплення детальних артефактів на протяженні всього життєвого циклу агента для налагодження, оптимізації і відповідності вимогам.
- Надійність: Забезпечення послідовних і надійних виходів шляхом моніторингу і надійного виконання робочих процесів.
У своєму ядрі AgentOps розширює традиційні MLOps, підкреслюючи ітеративні, багатокрокові робочі процеси, інтеграцію інструментів і адаптивну пам’ять, зберігаючи при цьому суворе відстеження і моніторинг.
Ключові проблеми, які вирішує AgentOps
1. Складність агентських систем
Автономні агенти обробляють завдання в широкому просторі дій, що вимагає прийняття рішень на кожному етапі. Ця складність вимагає складних механізмів планування і моніторингу.
2. Вимоги до спостережливості
Високі ставки випадків – такі як медична діагностика або юридичний аналіз – вимагають детального слідування. Відповідність вимогам законодавства, таким як закон ЄС про AI, ще більше підкреслює необхідність потужних рамок спостережливості.
3. Налагодження і оптимізація
Визначення помилок у багатокрокових робочих процесах або оцінка проміжних виходів є складним завданням без детального слідування дій агента.
4. Масштабованість і управління витратами
Масштабування агентів для виробництва вимагає моніторингу метрик, таких як затримка, використання токенів і операційні витрати, для забезпечення ефективності без компрометації якості.
Ключові функції платформ AgentOps
1. Створення і налаштування агентів
Розробники можуть конфігурувати агентів за допомогою реєстру компонентів:
- Ролі: Визначення обов’язків (наприклад, дослідник, планувальник).
- Ограничення: Встановлення обмежень для забезпечення етичного і надійного поведінки.
- Набори інструментів: Уможливлення інтеграції з API, базами даних або графами знань.
Агенти створюються для взаємодії з конкретними наборами даних, інструментами і підказками, зберігаючи при цьому відповідність попередньо визначеним правилам.
2. Спостережливість і слідування
AgentOps захоплює детальні журнали виконання:
- Сліди: Запис кожного кроку у робочому процесі агента, від викликів LLM до використання інструментів.
- Спани: Розбиття слідів на детальні кроки, такі як отримання, генерація вкладень або виклик інструментів.
- Артефакти: Відстеження проміжних виходів, станів пам’яті і шаблонів підказок для полегшення налагодження.
Інструменти спостережливості, такі як Langfuse або Arize, пропонують панелі управління, які візуалізують ці сліди, допомагаючи ідентифікувати вузькі місця або помилки.
3. Управління підказками
Інженерія підказок грає важливу роль у формуванні поведінки агента. Ключові функції включають:
- Версіонування: Відстеження ітерацій підказок для порівняння продуктивності.
- Виявлення ін’єкції: Ідентифікація шкідливого коду або помилок вводу в підказках.
- Оптимізація: Техніки, такі як ланцюг думок (CoT) або дерево думок, покращують здатність до міркування.
4. Інтеграція зворотного зв’язку
Людський зворотний зв’язок залишається важливим для ітеративних поліпшень:
- Явний зворотний зв’язок: Користувачі оцінюють виходи або надають коментарі.
- Неявний зворотний зв’язок: Метрики, такі як час виконання завдання або показники кліку, аналізуються для оцінки ефективності.
Цей цикл зворотного зв’язку поліпшує як продуктивність агента, так і тести, які використовуються для оцінки.
5. Оцінка і тестування
Платформи AgentOps полегшують суворе тестування по:
- Бенчмарки: Порівняння продуктивності агента з галузевими стандартами.
- Оцінка крок за кроком: Оцінка проміжних кроків у робочих процесах для забезпечення правильності.
- Оцінка траєкторії: Валідування шляху прийняття рішень, прийнятого агентом.
6. Інтеграція пам’яті і знань
Агенти використовують короткочасну пам’ять для контексту (наприклад, історії розмови) і довгочасну пам’ять для зберігання знань з попередніх завдань. Це дозволяє агентам адаптуватися динамічно, зберігаючи при цьому узгодженість у часі.
7. Моніторинг і метрики
Комплексний моніторинг відстежує:
- Затримка: Вимірювання часу відповіді для оптимізації.
- Використання токенів: Моніторинг витрат ресурсів для контролю витрат.
- Метрики якості: Оцінка актуальності, точності і токсичності.
Ці метрики візуалізуються по різних вимірах, таких як сесії користувачів, підказки і робочі процеси, що дозволяє здійснювати втручання в режимі реального часу.
Таксономія слідових артефактів
Стаття вводить систематичну таксономію артефактів, які підтримують спостережливість AgentOps:
- Артефакти створення агента: Метадані про ролі, цілі і обмеження.
- Артефакти виконання: Журнали викликів інструментів, черги підзадач і кроків міркування.
- Артефакти оцінки: Бенчмарки, цикли зворотного зв’язку і метрики оцінювання.
- Артефакти слідування: Ідентифікатори сесій, ідентифікатори слідів і спани для детального моніторингу.
Ця таксономія забезпечує узгодженість і ясність на протяженні всього життєвого циклу агента, роблячи налагодження і відповідність вимогам законодавства більш керованими.
AgentOps (інструмент) Крок за кроком
Це буде проводити вас через налаштування і використання AgentOps для моніторингу і оптимізації ваших агентів AI.
Крок 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
# Завантаження змінних середовища
load_dotenv()
AGENTOPS_API_KEY = os.getenv("AGENTOPS_API_KEY")
# Ініціалізація клієнта AgentOps
agentops.init(api_key=AGENTOPS_API_KEY, default_tags=["my-first-agent"])
Цей крок налаштовує спостережливість для всіх взаємодій LLM у вашому застосунку.
Крок 3: Запис дій за допомогою декораторів
Ви можете інструментувати конкретні функції за допомогою декоратора @record_action, який відстежує їхні параметри, час виконання і вихід. Ось приклад:
from agentops import record_action
@record_action("custom-action-tracker")
def is_prime(number):
"""Перевірка, чи є число простим."""
if number < 2:
return False
for i in range(2, int(number**0.5) + 1):
if number % i == 0:
return False
return True
Функція тепер буде записана в панелі управління AgentOps, забезпечуючи метрики часу виконання і відстеження вхідних/вихідних даних.
Крок 4: Відстеження названих агентів
Якщо ви використовуєте названі агенти, використовуйте декоратор @track_agent, щоб пов’язати всі дії і події з конкретними агентами.
from agentops import track_agent @track_agent(name="math-agent") class MathAgent: def __init__(self, name): self.name = name def factorial(self, n): """Рекурсивний розрахунок факторіалу.""" return 1 if n == 0 else n * self.factorial(n - 1)
Будь-які дії або виклики LLM всередині цього агента тепер асоціюються з тегом "math-agent".
Крок 5: Підтримка多 агентів
Для систем, які використовують кілька агентів, ви можете відстежувати події по агентам для кращої спостережливості. Ось приклад:
@track_agent(name="qa-agent")
class QAAgent:
def generate_response(self, prompt):
return f"Відповідь на: {prompt}";
@track_agent(name="developer-agent")
class DeveloperAgent:
def generate_code(self, task_description):
return f"# Код для виконання: {task_description}";
qa_agent = QAAgent()
developer_agent = DeveloperAgent()
response = qa_agent.generate_response("Роз'ясніть спостережливість у AI.")
code = developer_agent.generate_code("Розрахувати послідовність Фібоначчі")
Кожний виклик буде відображатися в панелі управління AgentOps під своїм слідом агента.
Крок 6: Закінчення сесії
Для сигналізації про закінчення сесії використовуйте метод end_session. Опційно, вкажіть стан сесії (Успіх або Помилка) і причину.
# Кінець сесії agentops.end_session(state="Успіх", reason="Завершено робочий процес")
Це забезпечує реєстрацію всіх даних і доступ до них у панелі управління AgentOps.
Крок 7: Візуалізація в панелі управління AgentOps
Відвідайте Панель управління AgentOps, щоб дослідити:
- Повторне відтворення сесій: Крок за кроком слідування виконання.
- Аналітика: Метрики витрат LLM, використання токенів і затримки.
- Виявлення помилок: Ідентифікація і налагодження невдач або рекурсивних циклів.
Покращений приклад: Виявлення рекурсивної думки
AgentOps також підтримує виявлення рекурсивних циклів у робочих процесах агентів. Давайте розширим попередній приклад з виявленням рекурсії:
@track_agent(name="recursive-agent")
class RecursiveAgent:
def solve(self, task, depth=0, max_depth=5):
"""Симуляція рекурсивного вирішення завдань з контролем глибини."""
if depth >= max_depth:
return f"Максимальна глибина рекурсії досягнута для завдання: {task}"
return self.solve(task, depth + 1)
recursive_agent = RecursiveAgent()
output = recursive_agent.solve("Оптимізація запитів до бази даних")
print(output)
AgentOps буде реєструвати рекурсію як частину сесії, допомагаючи вам ідентифікувати нескінченні цикли або надмірну глибину.
Висновок
Автономні агенти AI, що працюють на основі моделей фундації, такі як LLM, змінили спосіб нашого підходу до складних багатокрокових проблем у різних галузях. Однак їхня складність приносить унікальні проблеми зі спостережливістю, слідуванням і надійністю. Саме тут вступає в дію AgentOps як незамінна рамка, пропонуючи розробникам інструменти для моніторингу, оптимізації і забезпечення відповідності вимогам законодавства для агентів AI на протяженні всього їхнього життєвого циклу.












