Valutare gli agenti

Questa funzionalità ti consente di valutare gli agenti di AI. Puoi utilizzare Gen AI evaluation service per misurare e migliorare le prestazioni, la sicurezza e la qualità dei tuoi agenti.

Tipi di valutazione

Tipo di valutazione Caso d'uso Frequenza
Valutazione rapida Test di una nuova logica dell'agente o modifiche al modello. Frequente (sviluppo)
Valutazione dello scenario di test Test di regressione su un set di dati specifico. Pianificato (CI/CD)
Monitoraggio online Monitoraggio della qualità di un deployment dell'agente di produzione. Continuo (produzione)

Flusso di lavoro di valutazione

Puoi valutare i tuoi agenti utilizzando la consoleGoogle Cloud o l'SDK Agent Platform.

ConsoleGoogle Cloud

Per eseguire una valutazione di base per il deployment di un agente:

  1. Nella console Google Cloud , vai alla pagina Agent Platform > Agenti.
  2. Nel menu di navigazione a sinistra, seleziona Deployment e seleziona il tuo agente.

    Vai a Deployment

  3. Seleziona la scheda Dashboard e la sottosezione Valutazione.
  4. Fai clic su Nuova valutazione.
  5. Segui le istruzioni per definire gli scenari di test e selezionare le metriche.
  6. Fai clic su Esegui valutazione.

Per guide più dettagliate, consulta Eseguire valutazioni offline o Valutazione continua con monitor online.

SDK Agent Platform

Il flusso di lavoro per il miglioramento dell'agente si basa sulla ruota della qualità, un ciclo continuo di valutazione, analisi e ottimizzazione. Valuti il rendimento dell'agente, analizzi i risultati per identificare i cluster di errori e poi ottimizzi i prompt o la configurazione per risolvere i problemi. Questo processo iterativo ti aiuta a rilevare e risolvere in modo proattivo i problemi di rendimento.

Prima di iniziare

  1. Installa l'SDK Agent Platform con le estensioni richieste:

    pip install google-cloud-aiplatform[adk,evaluation]
  2. Inizializza il client dell'SDK Agent Platform:

    import vertexai
    from vertexai import Client
    
    client = Client(project="YOUR_PROJECT_ID", location="YOUR_LOCATION")

    Dove:

    • YOUR_PROJECT_ID: il tuo ID progetto Google Cloud .
    • YOUR_LOCATION: la tua regione cloud, ad esempio us-central1.

1. Definisci i casi di valutazione (simulazione utente)

Invece di creare manualmente scenari di test, utilizza la simulazione utente per generare piani di conversazione sintetici a più turni in base alle istruzioni dell'agente.

# Generate scenarios from agent info
eval_dataset = client.evals.generate_conversation_scenarios(
    agent_info=my_agent_info,
    config={
        "count": 5,
        "generation_instruction": "Generate scenarios where a user asks for a refund.",
    },
)

Per maggiori informazioni, consulta il riferimento dell'SDK Agent Platform.

2. Esegui inferenze

Esegui gli scenari di valutazione sull'agente per acquisire le tracce.

# Generate behavior traces using a multi-turn user simulator
traces = client.evals.run_inference(
    agent=my_agent,
    src=eval_dataset,
    config={"user_simulator_config": {"max_turn": 5}}
)

3. Calcola metriche (valutatori automatici)

Utilizza valutatori automatici multi-turno per valutare le tracce acquisite. Questi valutatori analizzano la cronologia completa della conversazione per verificare il rispetto delle istruzioni e l'utilizzo degli strumenti.

# Evaluate the traces using multi-turn metrics
eval_result = client.evals.evaluate(
    traces=traces,
    metrics=[
        "MULTI_TURN_TASK_SUCCESS",
        "MULTI_TURN_TOOL_USE_QUALITY"
    ]
)

4. Esegui l'analisi (cluster di errori)

Il sistema raggruppa automaticamente le valutazioni non riuscite in cluster di perdita per identificare i problemi principali degli agenti.

# Identify the top failure patterns in the results
loss_clusters = client.evals.generate_loss_clusters(eval_result=eval_result)

5. Ottimizza l'agente

Infine, utilizza il servizio Optimizer per perfezionare a livello di programmazione le istruzioni di sistema o le descrizioni degli strumenti dell'agente in base ai dati sugli errori.

# Automatically refine the system prompt to fix identified issues
optimize_result = client.optimizer.optimize(
    targets=["system_prompt"],
    benchmark=eval_result,
    tests=eval_dataset
)

Passaggi successivi