Skip to content

Valutare l'uso degli strumenti e le chiamate di funzione

Come annotare e valutare le chiamate agli strumenti di un agente nei vari formati di traccia (OpenAI, Anthropic, ReAct, LangChain) con le valutazioni per turno di Potato.

Quando un agente chiama uno strumento, che sia una ricerca, una calcolatrice, un'API o un database, ogni chiamata è una decisione valutabile: era lo strumento giusto? gli argomenti erano corretti? il risultato è stato usato bene? La valutazione dell'uso degli strumenti trasforma quelle decisioni in etichette per singolo passo sulla traccia dell'agente.

È la controparte umana dei benchmark automatici sulle chiamate di funzione: una chiamata può essere sintatticamente valida e comunque sbagliata per il task.

Cosa giudicare a ogni chiamata di strumento

  • Scelta dello strumento: era lo strumento adatto, o ne serviva un altro (o nessuno)?
  • Argomenti: i parametri erano corretti e completi?
  • Necessità: la chiamata serviva davvero, o era ridondante?
  • Uso del risultato: l'agente ha interpretato e usato correttamente l'output?

Leggere le tracce di qualsiasi framework

Potato converte 15 formati di traccia in una vista per passi comune, così puoi valutare l'uso degli strumenti indipendentemente da come è stato costruito l'agente: chiamate a strumenti e funzioni di OpenAI e Anthropic, tracce pensiero-azione-osservazione di ReAct, LangChain, LangFuse e altri. Vedi Annotazione Agentiva.

Impostare la valutazione per passo

Associa una valutazione a ogni passo (cioè a ogni chiamata di strumento), con una domanda di approfondimento condizionale per i casi sbagliati:

yaml
annotation_schemes:
  - annotation_type: trajectory_eval
    name: tool_call_correctness
    description: "For each tool call, judge whether it was the right call."
    steps_key: agentic_steps
    correctness_options: ["Correct", "Wrong tool", "Wrong arguments", "Unnecessary"]
  - annotation_type: text
    name: notes
    description: "If not correct, what should it have done?"
    label_requirement:
      required: false

Accorgimenti sulla qualità

  • Mostra l'output dello strumento, non solo la chiamata, altrimenti gli annotatori non possono giudicare come è stato usato il risultato.
  • Formatta il JSON di argomenti e risposte in modo leggibile (Potato lo fa già nella vista della traccia dell'agente).
  • Tieni distinto «strumento sbagliato» da «strumento giusto, argomenti sbagliati»: indicano correzioni diverse sul modello.

Approfondimenti