Condividi tramite


Analizzatori di agenti (anteprima)

Annotazioni

Microsoft Foundry SDK per la valutazione e il portale foundry sono disponibili in anteprima pubblica, ma le API sono disponibili a livello generale per la valutazione del modello e del set di dati (la valutazione dell'agente rimane in anteprima pubblica). I valutatori contrassegnati (anteprima) in questo articolo sono attualmente disponibili in anteprima ovunque.

Gli agenti di intelligenza artificiale sono potenti assistenti alla produttività che possono creare flussi di lavoro per le esigenze aziendali. Tuttavia, l'osservabilità può essere una sfida dovuta ai modelli di interazione complessi. Gli analizzatori di agenti forniscono un'osservabilità sistematica nei flussi di lavoro agenti tramite la misurazione della qualità, della sicurezza e delle prestazioni.

Un flusso di lavoro dell'agente comporta in genere il ragionamento tramite finalità dell'utente, la chiamata di strumenti pertinenti e l'uso dei risultati degli strumenti per completare attività come l'aggiornamento di un database o la stesura di un report. Per creare applicazioni agentic pronte per la produzione, è necessario valutare non solo l'output finale, ma anche la qualità e l'efficienza di ogni passaggio del flusso di lavoro.

Foundry fornisce analizzatori di agenti predefiniti che funzionano come unit test per i sistemi agenti, accettano i messaggi dell'agente come punteggi binari di input e output pass/fail (o punteggi ridimensionati convertiti in punteggi binari in base alle soglie). Questi analizzatori supportano due procedure consigliate per la valutazione dell'agente:

  • Valutazione del sistema: per esaminare i risultati end-to-end del sistema agentico.
  • Valutazione del processo: per verificare l'esecuzione dettagliata per ottenere i risultati.
Valutatore Procedura consigliata Usare quando Scopo Risultato
Completamento attività (anteprima) Valutazione del sistema Valutazione dell'esito positivo delle attività end-to-end nell'automazione del flusso di lavoro, interazioni con intelligenza artificiale orientata agli obiettivi o in qualsiasi scenario in cui il completamento completo delle attività è fondamentale Misura se l'agente ha completato l'attività richiesta con un risultato finale utilizzabile che soddisfi tutti i requisiti utente Binario: pass/fail
Adesione alle attività (anteprima) Valutazione del sistema Garantire che gli agenti seguano le istruzioni di sistema, convalidando la conformità negli ambienti regolamentati Misura se le azioni dell'agente rispettano le attività assegnate in base a regole, procedure e vincoli di criteri, in base al messaggio di sistema e ai passaggi precedenti Binario: pass/fail
Efficienza della navigazione delle attività (anteprima) Valutazione del sistema Ottimizzazione dei flussi di lavoro degli agenti, riduzione dei passaggi non necessari, convalida dei percorsi ottimali noti (richiede la verità di base) Misura se l'agente ha effettuato chiamate allo strumento in modo efficiente per completare un'attività confrontandole con le sequenze di strumenti previste Binario: pass/fail
Risoluzione delle finalità (anteprima) Valutazione del sistema Scenari di supporto clienti, intelligenza artificiale conversazionale, sistemi di domande frequenti in cui la comprensione della finalità dell'utente è essenziale Misura se l'agente identifica correttamente la finalità dell'utente Binario: pass/fail in base alla soglia (scala 1-5)
Accuratezza richiamo strumento (anteprima) Valutazione del processo Valutazione generale della qualità delle chiamate degli strumenti nei sistemi agente con integrazione degli strumenti, interazioni api per completare le attività Misura se l'agente ha effettuato chiamate allo strumento corretto con parametri corretti per completare l'attività Binario: pass/fail in base alla soglia (scala 1-5)
Selezione degli strumenti (anteprima) Valutazione del processo Convalida della qualità della scelta degli strumenti nelle piattaforme di orchestrazione, garantendo un utilizzo efficiente degli strumenti senza ridondanza Misura se l'agente ha selezionato gli strumenti corretti senza selezionare quelli non necessari Binario: pass/fail
Accuratezza dell'input dello strumento (anteprima) Valutazione del processo Convalida rigorosa dei parametri degli strumenti negli ambienti di produzione, test di integrazione api, flussi di lavoro critici che richiedono 100% correttezza dei parametri Misura se tutti i parametri di chiamata dello strumento sono corretti in sei criteri rigorosi: base, conformità del tipo, conformità del formato, parametri obbligatori, parametri imprevisti e appropriatezza del valore Binario: pass/fail
Utilizzo del risultato dello strumento (anteprima) Valutazione del processo Convalida dell'uso corretto delle risposte API, dei risultati delle query del database, degli output di ricerca nel ragionamento e nelle risposte dell'agente Misura se l'agente ha compreso correttamente e usato i risultati delle chiamate degli strumenti contestualmente nel ragionamento e nella risposta finale Binario: pass/fail
Operazione riuscita chiamata strumento (anteprima) Valutazione del processo Affidabilità dello strumento di monitoraggio, rilevamento di errori dell'API, problemi di timeout o errori tecnici nell'esecuzione degli strumenti Misura se le chiamate degli strumenti hanno avuto esito positivo o hanno generato errori tecnici o eccezioni Binario: pass/fail

Valutazione del sistema

La valutazione del sistema esamina la qualità del risultato finale del flusso di lavoro agentico. Questi analizzatori sono applicabili a singoli agenti e, nei sistemi multi-agente, all'agente di orchestrazione principale o all'agente finale responsabile del completamento dell'attività:

  • Completamento attività: l'agente ha completato completamente l'attività richiesta?
  • Conformità alle attività: l'agente ha seguito le regole e i vincoli nelle istruzioni?
  • Efficienza navigazione attività: l'agente ha eseguito i passaggi previsti in modo efficiente?
  • Risoluzione delle finalità: l'agente identifica correttamente e indirizza le intenzioni dell'utente?

In particolare, per gli output testuali degli agenti, è anche possibile applicare analizzatori di qualità RAG, ad Relevance esempio e Groundedness che accettano input agenti per valutare la qualità finale della risposta.

Esempi:

Valutazione del processo

La valutazione del processo esamina la qualità e l'efficienza di ogni passaggio del flusso di lavoro agentico. Questi analizzatori si concentrano sulle chiamate degli strumenti eseguite in un sistema per completare le attività:

  • Accuratezza chiamata strumento: l'agente ha eseguito le chiamate corrette con parametri corretti senza ridondanza?
  • Selezione degli strumenti: l'agente ha selezionato gli strumenti corretti e necessari?
  • Accuratezza input strumento: l'agente ha fornito parametri corretti per le chiamate agli strumenti?
  • Utilizzo dell'output dello strumento: l'agente ha usato correttamente la chiamata allo strumento per il ragionamento e la risposta finale?
  • Operazione riuscita chiamata strumento: le chiamate degli strumenti hanno avuto esito positivo senza errori tecnici?

Esempi:

Modello di analizzatore e supporto degli strumenti per gli analizzatori di agenti

Per gli analizzatori assistito dall'intelligenza artificiale, è possibile usare modelli di ragionamento OpenAI o OpenAI di Azure e modelli di non ragionamento per il giudice LLM. Per una valutazione complessa che richiede un ragionamento raffinato, è consigliabile gpt-5-mini bilanciare le prestazioni, i costi e l'efficienza.

Strumenti supportati

Gli analizzatori di agenti supportano gli strumenti seguenti:

  • Ricerca file
  • Strumento funzione (strumenti definiti dall'utente)
  • MCP
  • MCP basato sulle informazioni

Gli strumenti seguenti hanno attualmente un supporto limitato. Evitare di usare tool_call_accuracy, tool input accuracytool_output_utilization, tool_call_success, o groundedness analizzatori se la conversazione dell'agente include chiamate a questi strumenti:

  • Ricerca di intelligenza artificiale di Azure
  • Bing Grounding
  • Ricerca personalizzata Bing
  • Fondamenti di SharePoint
  • Agente dati di Fabric
  • Web Search

Uso degli analizzatori di agenti

Gli analizzatori di agenti valutano il grado di efficienza degli agenti di intelligenza artificiale che eseguono attività, seguono le istruzioni e usano gli strumenti in modo efficace. Ogni analizzatore richiede mapping e parametri di dati specifici:

Valutatore Input necessari Parametri obbligatori
Il completamento dell'attività query, response deployment_name
Conformità delle attività query, response deployment_name
Risoluzione delle intenzioni query, response deployment_name
Accuratezza della chiamata dello strumento (query, response, tool_definitions) OR (query, tool_calls, tool_definitions) deployment_name
Selezione degli strumenti (query, response, tool_definitions) OR (query, tool_calls, tool_definitions) deployment_name
Accuratezza dello strumento di input query, response, tool_definitions deployment_name
Utilizzo dell'output degli strumenti query, response, tool_definitions deployment_name
Chiamata strumento riuscita response deployment_name
Efficienza della navigazione delle attività actions, expected_actions (nessuno)

Input di esempio

Il set di dati di test deve contenere i campi a cui si fa riferimento nei mapping dei dati. Entrambi i campi accettano stringhe semplici o matrici di conversazioni:

{"query": "What's the weather in Seattle?", "response": "The weather in Seattle is rainy, 14°C."}
{"query": "Book a flight to Paris for next Monday", "response": "I've booked your flight to Paris departing next Monday at 9:00 AM."}

Per interazioni agente più complesse con le chiamate agli strumenti, usare il formato della matrice di conversazioni. Questo formato segue lo schema dei messaggi OpenAI (vedere Schema dei messaggi dell'agente). Il messaggio di sistema è facoltativo ma utile per gli analizzatori che valutano il comportamento dell'agente rispetto alle istruzioni, tra cui task_adherence, task_completiontool_call_accuracytool_selectiontool_input_accuracy, tool_output_utilization, e :groundedness

{
    "query": [
        {"role": "system", "content": "You are a travel booking agent."},
        {"role": "user", "content": "Book a flight to Paris for next Monday"}
    ],
    "response": [
        {"role": "assistant", "content": [{"type": "tool_call", "name": "search_flights", "arguments": {"destination": "Paris", "date": "next Monday"}}]},
        {"role": "tool", "content": [{"type": "tool_result", "tool_result": {"flight": "AF123", "time": "9:00 AM"}}]},
        {"role": "assistant", "content": "I've booked flight AF123 to Paris departing next Monday at 9:00 AM."}
    ]
}

Esempio di configurazione

Sintassi del mapping dei dati:

  • {{item.field_name}} fa riferimento ai campi del set di dati di test, ad esempio {{item.query}}.
  • {{sample.output_items}} fa riferimento alle risposte dell'agente generate o recuperate durante la valutazione. Usare questa opzione durante la valutazione con un'origine dati di risposta dell'agente o di destinazione agente.
  • {{sample.tool_definitions}} fa riferimento alle definizioni degli strumenti. Usare questa opzione durante la valutazione con un'origine dati di risposta dell'agente o di destinazione agente. Questi vengono popolati automaticamente per gli strumenti predefiniti supportati o dedotti per le funzioni personalizzate.

Di seguito è riportato un esempio di configurazione per l'adesione alle attività:

testing_criteria = [
    {
        "type": "azure_ai_evaluator",
        "name": "task_adherence",
        "evaluator_name": "builtin.task_adherence",
        "initialization_parameters": {"deployment_name": model_deployment},
        "data_mapping": {
            "query": "{{item.query}}",
            "response": "{{item.response}}",
        },
    },
]

Per informazioni dettagliate sull'esecuzione delle valutazioni e sulla configurazione delle origini dati, vedere Eseguire valutazioni nel cloud .

Output di esempio

Gli analizzatori di agenti restituiscono risultati pass/fail con ragionamento. Campi di output chiave:

{
    "type": "azure_ai_evaluator",
    "name": "Task Adherence",
    "metric": "task_adherence",
    "label": "pass",
    "reason": "Agent followed system instructions correctly",
    "threshold": 3,
    "passed": true
}

Efficienza di spostamento delle attività

Efficienza navigazione attività misura se l'agente ha eseguito una sequenza ottimale di azioni confrontando con una sequenza prevista (verità del terreno). Usare questo analizzatore per l'ottimizzazione del flusso di lavoro e i test di regressione.

{
    "type": "azure_ai_evaluator",
    "name": "task_navigation_efficiency",
    "evaluator_name": "builtin.task_navigation_efficiency",
    "initialization_parameters": {
        "matching_mode": "exact_match"  # Options: "exact_match", "in_order_match", "any_order_match"
    },
    "data_mapping": {
        "actions": "{{item.actions}}",
        "expected_actions": "{{item.expected_actions}}"
    },
}

Modalità di corrispondenza:

Modalità Descrzione
exact_match La traiettoria dell'agente deve corrispondere esattamente alla verità del terreno (ordine e contenuto)
in_order_match Tutti i passaggi di verità terra devono apparire nella traiettoria dell'agente in ordine corretto (passaggi aggiuntivi consentiti)
any_order_match Tutti i passaggi di verità terra devono apparire nella traiettoria dell'agente, l'ordine non importa (passaggi aggiuntivi consentiti)

Formato delle azioni previste:

expected_actions Può essere un semplice elenco di passaggi previsti:

expected_actions = ["identify_tools_to_call", "call_tool_A", "call_tool_B", "response_synthesis"]

Oppure una tupla con nomi e parametri degli strumenti per una convalida più dettagliata:

expected_actions = (
    ["func_name1", "func_name2"],
    {
        "func_name1": {"param_key": "param_value"},
        "func_name2": {"param_key": "param_value"},
    }
)

Output:

Restituisce un risultato di passaggio/esito negativo binario più precisione, richiamo e punteggi F1:

{
    "type": "azure_ai_evaluator",
    "name": "task_navigation_efficiency",
    "passed": true,
    "details": {
        "precision_score": 0.85,
        "recall_score": 1.0,
        "f1_score": 0.92
    }
}

Schema dei messaggi dell'agente

Quando si usa il formato query della matrice di conversazioni e response si segue la struttura dei messaggi OpenAI:

  • query: contiene la cronologia della conversazione che conduce alla richiesta dell'utente. Includere il messaggio di sistema per fornire il contesto per gli analizzatori che valutano il comportamento dell'agente rispetto alle istruzioni.
  • risposta: contiene la risposta dell'agente, incluse le chiamate agli strumenti e i relativi risultati.

Schema del messaggio:

[
  {
    "role": "system" | "user" | "assistant" | "tool",
    "content": "string" | [                // string or array of content items
      {
        "type": "text" | "tool_call" | "tool_result",
        "text": "string",                  // if type == text
        "tool_call_id": "string",          // if type == tool_call
        "name": "string",                  // tool name if type == tool_call
        "arguments": { ... },              // tool args if type == tool_call
        "tool_result": { ... }             // result if type == tool_result
      }
    ]
  }
]

Tipi di ruolo:

Ruolo Descrzione
system Istruzioni dell'agente (facoltativo, posizionate all'inizio della query)
user Messaggi utente e richieste
assistant Risposte dell'agente, incluse le chiamate agli strumenti
tool Risultati dell'esecuzione degli strumenti

Esempio:

{
  "query": [
    {"role": "system", "content": "You are a weather assistant."},
    {"role": "user", "content": [{"type": "text", "text": "What's the weather in Seattle?"}]}
  ],
  "response": [
    {"role": "assistant", "content": [{"type": "tool_call", "tool_call_id": "call_123", "name": "get_weather", "arguments": {"city": "Seattle"}}]},
    {"role": "tool", "content": [{"type": "tool_result", "tool_result": {"temp": "62°F", "condition": "Cloudy"}}]},
    {"role": "assistant", "content": [{"type": "text", "text": "It's currently 62°F and cloudy in Seattle."}]}
  ]
}