Umělá inteligence
Autonomní agenti s AgentOps: pozorovatelnost, stopovatelnost a další pro vaši aplikaci AI

Růst autonomních agentů na základě základních modelů (FM) jako jsou velké jazykové modely (LLM) změnil, jak řešíme složité, vícekrokové problémy. Tyto agenti provádějí úkoly od zákaznické podpory po softwarové inženýrství, navigují v komplexních pracovních postupech, které kombinují rozumění, použití nástrojů a paměť.
Nicméně, jak tyto systémy rostou v schopnostech a komplexitě, objevují se výzvy v pozorovatelnosti, spolehlivosti a dodržování předpisů.
Zde vstupuje AgentOps; koncept vytvořený podle DevOps a MLOps, ale uzpůsobený pro správu životního cyklu agentů založených na FM.
Abyste získali základní pochopení AgentOps a jeho kritické role při umožnění pozorovatelnosti a stopovatelnosti pro autonomní agenty založené na FM, jsem čerpal inspiraci z nedávné práce Taxonomie AgentOps pro umožnění pozorovatelnosti agentů založených na základních modelech od Liming Dong, Qinghua Lu a Liming Zhu. Práce nabízí komplexní prozkoumání AgentOps, zdůrazňující jeho nutnost při správě životního cyklu autonomních agentů – od vytvoření a spuštění po hodnocení a monitorování. Autoři kategorizují stopovatelné artefakty, navrhují klíčové funkce pro platformy pozorovatelnosti a řeší výzvy, jako je komplexita rozhodnutí a dodržování předpisů.
Zatímco AgentOps (nástroj) získal významný úspěch jako jeden z předních nástrojů pro monitorování, ladění a optimalizaci AI agentů (jako autogen, crew ai), tento článek se zaměřuje na širší koncept AI Operations (Ops).
To řečeno, AgentOps (nástroj) nabízí vývojářům přehled o pracovních postupech agentů s funkcemi, jako jsou přehrávání relací, sledování nákladů LLM a monitorování dodržování předpisů. Jako jeden z nejpopulárnějších nástrojů Ops v AI, později v článku projdeme jeho funkčnost prostřednictvím tutoriálu.
Co je AgentOps?
AgentOps se týká procesů, nástrojů a rámců potřebných pro návrh, nasazení, monitorování a optimalizaci autonomních agentů založených na FM v produkci. Jeho cíle jsou:
- Pozorovatelnost: Poskytuje úplnou viditelnost do procesů spuštění a rozhodování agenta.
- Stopovatelnost: Zachycuje podrobné artefakty napříč životním cyklem agenta pro ladění, optimalizaci a dodržování předpisů.
- Spolehlivost: Zajišťuje konzistentní a důvěryhodné výstupy prostřednictvím monitorování a robustních pracovních postupů.
Ve své podstatě AgentOps rozšiřuje tradiční MLOps zdůrazňováním iterativních, vícekrokových pracovních postupů, integrace nástrojů a adaptivní paměti,同时 zachovává přísné sledování a monitorování.
Klíčové výzvy řešené AgentOps
1. Složitost agenticích systémů
Autonomní agenti zpracovávají úkoly napříč rozsáhlým akčním prostorem, vyžadující rozhodnutí na každém kroku. Tato složitost vyžaduje sofistikované plánovací a monitorovací mechanismy.
2. Požadavky na pozorovatelnost
Vysoké použití případů – jako je lékařská diagnóza nebo právní analýza – vyžadují jemnou stopovatelnost. Dodržování předpisů, jako je EU AI Act, dále zdůrazňuje potřebu robustních rámců pozorovatelnosti.
3. Ladění a optimalizace
Identifikace chyb v vícekrokových pracovních postupech nebo hodnocení mezitímních výstupů je obtížné bez podrobných stop agentových akcí.
4. Škálovatelnost a správa nákladů
Škálování agentů pro produkci vyžaduje monitorování metrik, jako je latence, použití tokenů a provozní náklady, aby se zajistila efektivita bez kompromisů na kvalitě.
Core Features of AgentOps Platforms
1. Vytvoření a přizpůsobení agenta
Vývojáři mohou konfigurovat agenty pomocí registru komponent:
- Role: Definují odpovědnosti (například výzkumník, plánovač).
- Guardrails: Nastavují omezení, aby se zajistilo etické a spolehlivé chování.
- Nástroje: Povolují integraci s API, databázemi nebo znalostními grafy.
Agenti jsou vytvořeni pro interakci se specifickými datovými sadami, nástroji a podněty,同时 zachovávají dodržování předem definovaných pravidel.
2. Pozorovatelnost a stopovatelnost
AgentOps zachycuje podrobné protokoly spuštění:
- Stopy: Zachycují každý krok v pracovním postupu agenta, od volání LLM po použití nástrojů.
- Spány: Rozdělují stopy na jemné kroky, jako je načtení, generování vnořených nebo vyvolání nástrojů.
- Artefakty: Sledují mezitímní výstupy, stavy paměti a šablony podnětů, aby usnadnily ladění.
Nástroje pozorovatelnosti, jako je Langfuse nebo Arize, poskytují panely, které vizualizují tyto stopy, pomáhají identifikovat úzká místa nebo chyby.
3. Správa podnětů
Inženýrství podnětů hraje důležitou roli při formování chování agenta. Klíčové funkce zahrnují:
- Verzování: Sleduje iterace podnětů pro srovnání výkonu.
- Detekce injekce: Identifikuje škodlivý kód nebo chyby vstupu v podnětech.
- Optimalizace: Techniky, jako je Chain-of-Thought (CoT) nebo Tree-of-Thought, zlepšují schopnosti rozumění.
4. Integrace zpětné vazby
Lidská zpětná vazba zůstává zásadní pro iterativní zlepšování:
- Explicitní zpětná vazba: Uživatelé hodnotí výstupy nebo poskytují komentáře.
- Implicitní zpětná vazba: Metriky, jako je čas na úkolu nebo kliknutí, se analyzují, aby se zhodnotila účinnost.
Tento zpětnovazebný smyček vylepšuje jak výkon agenta, tak i hodnocení standardů používaných pro testování.
5. Hodnocení a testování
Platformy AgentOps usnadňují přísné testování napříč:
- Benchmarks: Srovnávají výkon agenta s odvětvovými standardy.
- Krokování hodnocení: Hodnotí mezitímní kroky v pracovních postupech, aby se zajistila správnost.
- Trajectory Evaluation: Ověřuje rozhodovací cestu zvolenou agentem.
6. Paměť a integrace znalostí
Agenti využívají krátkodobou paměť pro kontext (například historii konverzace) a dlouhodobou paměť pro ukládání poznatků z předchozích úkolu. To umožňuje agentům dynamicky přizpůsobovat,同时 zachovávají koherenci v čase.
7. Monitorování a metriky
Komplexní monitorování sleduje:
- Latence: Měří doby odezvy pro optimalizaci.
- Použití tokenů: Monitoruje spotřebu zdrojů, aby se kontrolovaly náklady.
- Kvalitativní metriky: Hodnotí relevanci, přesnost a toxicitu.
Tyto metriky se vizualizují napříč dimenzemi, jako jsou uživatelské relace, podněty a pracovní postupy, umožňující okamžité zásahy.
Taxonomie stopovatelných artefaktů
Práce představuje systematickou taxonomii artefaktů, které podpinují pozorovatelnost AgentOps:
- Vytvoření artefaktů agenta: Metadata o rolích, cílech a omezeních.
- Artefakty spuštění: Protokoly volání nástrojů, fronty podúkolů a kroků rozumění.
- Hodnotící artefakty: Benchmarky, zpětnovazebné smyčky a metriky skóre.
- Stopovací artefakty: ID relací, ID stop a spány pro jemné monitorování.
Tato taxonomie zajišťuje konzistenci a jasnost napříč životním cyklem agenta, činí ladění a dodržování předpisů lépe zvládnutelnými.
AgentOps (nástroj) Průvodce
Tento průvodce vás provede nastavením a použitím AgentOps pro monitorování a optimalizaci vašich AI agentů.
Krok 1: Nainstalujte AgentOps SDK
Nainstalujte AgentOps pomocí vašeho preferovaného správce balíčků Pythonu:
pip install agentops
Krok 2: Inicializujte AgentOps
Nejprve importujte AgentOps a inicializujte jej pomocí vašeho API klíče. Uložte API klíč do souboru .env pro bezpečnost:
# Inicializujte AgentOps s API klíčem
import agentops
import os
from dotenv import load_dotenv
# Načtěte proměnné prostředí
load_dotenv()
AGENTOPS_API_KEY = os.getenv("AGENTOPS_API_KEY")
# Inicializujte klienta AgentOps
agentops.init(api_key=AGENTOPS_API_KEY, default_tags=["my-first-agent"])
Tento krok nastavuje pozorovatelnost pro všechny interakce LLM ve vaší aplikaci.
Krok 3: Zaznamenejte akce pomocí dekorátorů
Můžete instrumentovat konkrétní funkce pomocí dekorátoru @record_action, který sleduje jejich parametry, dobu spuštění a výstup. Zde je příklad:
from agentops import record_action
@record_action("custom-action-tracker")
def is_prime(number):
"""Zkontrolujte, zda je číslo prvočíslem."""
if number < 2:
return False
for i in range(2, int(number**0.5) + 1):
if number % i == 0:
return False
return True
Funkce bude nyní zaznamenána v panelu AgentOps, poskytující metriky pro dobu spuštění a sledování vstupu-výstupu.
Krok 4: Sledujte pojmenované agenty
Pokud používáte pojmenované agenty, použijte dekorátor @track_agent, aby vázali všechny akce a události na konkrétní agenty.
from agentops import track_agent @track_agent(name="math-agent") class MathAgent: def __init__(self, name): self.name = name def factorial(self, n): """Vypočtěte faktoriál rekurzivně.""" return 1 if n == 0 else n * self.factorial(n - 1)
Jakékoli akce nebo volání LLM uvnitř tohoto agenta jsou nyní spojeny s značkou "math-agent".
Krok 5: Podpora více agentů
Pro systémy, které používají více agentů, můžete sledovat události napříč agenty pro lepší pozorovatelnost. Zde je příklad:
@track_agent(name="qa-agent")
class QAAgent:
def generate_response(self, prompt):
return f"Odpovídám na: {prompt}";
@track_agent(name="developer-agent")
class DeveloperAgent:
def generate_code(self, task_description):
return f"# Kód pro provedení: {task_description}";
qa_agent = QAAgent()
developer_agent = DeveloperAgent()
response = qa_agent.generate_response("Explikujte pozorovatelnost v AI.")
code = developer_agent.generate_code("vypočtěte Fibonacciho posloupnost")
Každé volání se objeví v panelu AgentOps pod stopou příslušného agenta.
Krok 6: Konec relace
Abyste signifikovali konec relace, použijte metodu end_session. Volitelně zahrňte stav relace (Úspěch nebo Neúspěch) a důvod.
# Konec relace agentops.end_session(state="Úspěch", reason="Dokončený pracovní postup")
To zajišťuje, že všechny údaje jsou zaznamenány a přístupné v panelu AgentOps.
Krok 7: Vizualizace v panelu AgentOps
Navštivte Panel AgentOps pro prozkoumání:
- Přehrávání relací: Krok za krokem stopy spuštění.
- Analýzy: Metriky nákladů LLM, použití tokenů a latence.
- Detekce chyb: Identifikujte a ladíte selhání nebo rekurzivní smyčky.
Vylepšený příklad: Detekce rekurzivního myšlení
AgentOps také podporuje detekci rekurzivních smyček v pracovních postupech agentů. Rozšíříme předchozí příklad o detekci rekurzivity:
@track_agent(name="recursive-agent")
class RecursiveAgent:
def solve(self, task, depth=0, max_depth=5):
"""Simuluje rekurzivní řešení úkolu s omezením hloubky."""
if depth >= max_depth:
return f"Dosažena maximální rekurzivní hloubka pro úkol: {task}";
return self.solve(task, depth + 1)
recursive_agent = RecursiveAgent()
output = recursive_agent.solve("Optimalizujte databázové dotazy")
print(output)
AgentOps bude logovat rekurzi jako součást relace, pomáhající vám identifikovat nekonečné smyčky nebo nadměrnou hloubku.
Závěr
Autonomní AI agenti poháněné základními modely, jako jsou LLM, změnily, jak přistupujeme ke komplexním, vícekrokovým problémům napříč odvětvími. Nicméně, jejich sofistikovanost přináší jedinečné výzvy v pozorovatelnosti, stopovatelnosti a spolehlivosti. Zde vstupuje AgentOps jako nepostradatelný rámec, nabízející vývojářům nástroje pro monitorování, optimalizaci a zajištění dodržování předpisů pro AI agenty po celý jejich životní cyklus.












