Přehled trasování agentů

Důležité

Položky označené (Preview) v tomto článku jsou aktuálně ve verzi Public Preview. Tato verze Preview je poskytována bez smlouvy o úrovni služeb a nedoporučujeme ji pro produkční úlohy. Některé funkce nemusí být podporované nebo můžou mít omezené možnosti. Další informace najdete v tématu Supplementální podmínky použití pro Microsoft Azure Verze Preview.

Poznámka

Trasování je obecně dostupné pouze pro rychlé agenty. Workflow, hostovaní a vlastní agenti jsou ve verzi Previewu.

Microsoft Foundry poskytuje platformu pozorovatelnosti pro monitorování a trasování agentů AI. Zaznamenává klíčové podrobnosti během spuštění agenta, jako jsou vstupy, výstupy, využití nástrojů, opakování, latence a náklady. Pochopení důvodů vykonávání vašeho agenta je důležité pro řešení potíží a ladění. Pochopení složitých agentů však představuje problémy z několika důvodů:

  • Při generování odpovědi může být velký počet kroků, což znesnadňuje sledování všech těchto kroků.
  • Posloupnost kroků se může lišit v závislosti na vstupu uživatele.
  • Vstupy a výstupy v každé fázi můžou být dlouhé a zaslouží si podrobnější kontrolu.
  • Každý krok modulu runtime agenta může zahrnovat také vnoření. Agent může například vyvolat nástroj, který používá jiný proces, který pak vyvolá jiný nástroj. Pokud si všimnete podivného nebo nesprávného výstupu z spuštění agenta nejvyšší úrovně, může být obtížné přesně určit, kde byl problém zaveden.

Výsledky trasování to řeší tím, že vám umožní zobrazit vstupy a výstupy jednotlivých primitivních prvků zapojených do konkrétního spuštění agenta, zobrazeného v pořadí, ve kterém byly vyvolány, což usnadňuje pochopení a ladění chování agenta AI.

Požadavky

Pokud chcete použít kompletní trasování, potřebujete:

Poznámka

Trasování ukládá telemetrická data do Azure Monitor Application Insights, což může vést k nákladům na základě objemu dat a nastavení jejich uchovávání. Podrobnosti o cenách najdete v tématu Ceny Služby Application Insights.

OpenTelemetry v Foundry

OpenTelemetry (OTel) poskytuje standardizované protokoly pro shromažďování a směrování telemetrických dat. Foundry používá sémantické konvence OpenTelemetry, takže trasování jsou konzistentní napříč podporovanými nástroji a integracemi.

Trasování klíčových konceptů

Tady je stručný přehled klíčových konceptů, než začnete:

Klíčové koncepty Popis
Sledování Trasování zachycuje cestu požadavku nebo pracovního postupu prostřednictvím aplikace zaznamenáváním událostí a změn stavu (volání funkcí, hodnoty, systémové události). Viz trasování OpenTelemetry.
Rozsahy Úseky jsou stavební bloky trasování, které představují jednotlivé operace v rámci jednoho trasování. Každý rozsah zachycuje počáteční a koncové časy, atributy a dají se vnořit, aby zobrazovaly hierarchické relace, takže můžete zobrazit celý zásobník volání a posloupnost operací.
Atributy Atributy jsou páry klíč-hodnota připojené k trasám a rozsahům a poskytují kontextová metadata, jako jsou parametry funkce, návratové hodnoty nebo uživatelské anotace. Tato obohacení dat trasování je činí informativnějšími a užitečnějšími pro analýzu.
Sémantické konvence OpenTelemetry definuje sémantické konvence pro standardizaci názvů a formátů pro atributy trasování dat, což usnadňuje interpretaci a analýzu napříč nástroji a platformami. Další informace najdete v tématu sémantické konvence OpenTelemetry.
Vývozci trasování Exportéři trasování odesílají data trasování do back-endových systémů pro ukládání a analýzu. V Foundry jsou trasování uložena v Azure Monitor Application Insights. Informace o povolení a zobrazení trasování najdete v tématu Jak nastavit trasování v Microsoft Foundry.

Jak funguje trasování v Foundry

Trasování vám pomůže odpovědět na otázky jako "Odkud tato odpověď pochází?" a "Který krok způsobil chybu nebo nárůst latence?".

Na vyšší úrovni trasování zaznamenává:

  • Vstupy uživatelů a výstupy agenta.
  • Využití nástrojů, včetně volání a výsledků nástrojů
  • Spotřeba tokenů
  • Časové signály, jako je doba trvání a latence.

Jakmile je trasování pro váš projekt povolené, můžete zkontrolovat trasování na portálu Foundry a v Azure Monitor Application Insights. Pro podrobné nastavení a možnosti zobrazení se podívejte na Jak nastavit trasování v Microsoft Foundry.

Rozšíření OpenTelemetry s pozorovatelností s více agenty

Microsoft ve spolupráci s Cisco Outshift zavedly nové sémantické konvence pro systémy s více agenty založené na OpenTelemetry a W3C Trace Context. Tyto konvence standardizují telemetrii pro pracovní postupy s více agenty, což umožňuje konzistentní protokolování metrik pro kvalitu, výkon, bezpečnost a náklady, včetně vyvolání nástrojů a spolupráce.

Tato vylepšení jsou integrovaná do:

  • Slévárna
  • Microsoft Agent Framework
  • LangChain
  • LangGraph
  • OpenAI Agents SDK

Další informace najdete v tématu Integrace trasování.

Následující tabulka popisuje sémantické konvence pro pozorovatelnost s více agenty. Rozsahy zachytávají diskrétní operace, podřízené rozsahy zobrazují vnořené operace v rámci nadřazeného rozsahu, atributy poskytují metadata a události označují významné události během provádění.

Typ Kontext nebo nadřazený rozsah Název/atribut/událost Účel
Span spustit_úlohu Zaznamenává plánování úkolů a šíření událostí a poskytuje přehled o tom, jak se úkoly rozkládají a distribuují.
Dětský rozsah invoke_agent interakce_mezi_agenty Trasuje komunikaci mezi agenty.
Dětský rozsah invoke_agent agent.state.management Efektivní kontext, krátkodobá nebo dlouhodobá správa paměti
Dětský rozsah invoke_agent plánování agenta Zaznamená interní kroky plánování agenta.
Dětský rozsah invoke_agent Orchestrace agentů Zachytává koordinaci mezi agenty.
Atribut invoke_agent definice_nástrojů Popisuje účel nebo konfiguraci nástroje.
Atribut invoke_agent llm_spans Zaznamenává rozsah volání modelu.
Atribut Spustit_nástroj tool.call.arguments (nástroj.volání.argumenty) Zaznamená argumenty předané během vyvolání nástroje.
Atribut Spustit_nástroj tool.call.results Zaznamenává výsledky vrácené nástrojem.
Událost Vyhodnocení (název, typ.chyby, štítek) Umožňuje strukturované vyhodnocení výkonu a rozhodování agentů.

Osvědčené postupy

  • Používejte konzistentní atributy span: Použijte stejné názvy a formáty atributů ve všech agentech a nástrojích, které zjednodušují dotazování a analýzu.
  • Korelace identifikátorů běhu vyhodnocení: Propojení dat trasování s běhy vyhodnocení pro analýzu kvality a výkonu v jednom pohledu.
  • Redigovat citlivý obsah: Odstraňte nebo zamaskujte osobní údaje, tajemství a přihlašovací údaje z promptů, argumentů nástrojů a atributů rozsahu, než dosáhnou telemetrie.

Zabezpečení a ochrana osobních údajů

Trasování může zaznamenávat citlivé informace (například vstupy uživatelů, výstupy modelu a argumenty a výsledky nástrojů). Pomocí těchto postupů můžete snížit riziko:

  • Neukládejte tajné kódy, přihlašovací údaje ani tokeny do výzev, argumentů nástrojů ani atributů span.
  • Redigujte nebo minimalizujte osobní údaje a další citlivý obsah, než se zobrazí v telemetrii.
  • Zacházejte s daty trasování jako s produkční telemetrií a použijte stejné řízení přístupu a zásady uchovávání informací, které používáte pro protokoly a metriky.

Řešení potíží

Pokud se stopy nezobrazují na portálu Foundry nebo v Application Insights:

  • Ověřte, že je váš projekt Foundry připojený k prostředku Application Insights.
  • Zkontrolujte, jestli váš účet má požadovaná oprávnění k dotazování telemetrie.
  • Ujistěte se, že kód agenta zahrnuje potřebnou instrumentaci. Informace o nastavení specifické pro architekturu najdete v tématu Integrace trasování.

Tip

Trasování je dostupné ve všech oblastech, kde je Foundry podporováno. Trasování uchovávání dat a vzorkování postupujte podle konfigurace Application Insights. Podrobnosti najdete v tématu Data retention and archive in Azure Monitor Logs.