Che cos'è l'ottimizzatore dell'agente? (anteprima)

Importante

Agent Optimizer è attualmente in anteprima. Questa anteprima viene fornita senza un contratto di servizio e non è consigliabile per i carichi di lavoro di produzione. Alcune funzionalità potrebbero non essere supportate o potrebbero avere funzionalità limitate. Per ulteriori informazioni, vedere Condizioni supplementari per l'uso delle versioni di anteprima di Microsoft Azure.

L'ottimizzatore degli agenti in Foundry Agent Service migliora automaticamente gli agenti basati su prompt e gli agenti ospitati valutandone il comportamento e generando configurazioni migliori. A seconda del tipo di agente, queste configurazioni possono includere istruzioni migliorate, competenze, descrizioni degli strumenti e selezione del modello.

La creazione di agenti di intelligenza artificiale efficaci richiede un'ampia progettazione dei prompt. Si distribuisce un agente con istruzioni artigianali, lo si testa su scenari reali, si identificano i punti deboli, si rivedono le richieste e si ripete. Questo ciclo è lento, soggettivo e non è scalabile. L'utilità di ottimizzazione agente automatizza questo ciclo in modo che sia possibile concentrarsi sulla logica di base dell'agente.

Tipi di agente supportati

L'utilità di ottimizzazione usa lo stesso ciclo di miglioramento basato sulla valutazione per entrambi i tipi di agente, ma l'installazione, le destinazioni di ottimizzazione e l'esperienza di distribuzione differiscono.

Tipo di agente Cosa può migliorare l'ottimizzatore Come avviare un'esecuzione
Agente prompt Istruzioni, descrizioni degli strumenti per chiamate di funzione e selezione del modello Usa la procedura guidata di ottimizzazione nel portale Foundry. Non sono necessarie modifiche al codice.
Agente ospitato Istruzioni, competenze, descrizioni degli strumenti per chiamate di funzione e selezione del modello Usa Foundry Toolkit, che configura automaticamente il supporto per l'ottimizzazione, oppure rendi l'agente pronto per l'ottimizzazione e usa Azure Developer CLI.

Agenti rapidi

Per un agente prompt, l'Optimizer valuta una versione selezionata dell'agente e genera istruzioni alternative. Può anche migliorare le descrizioni per gli strumenti di chiamata alle funzioni e confrontare la richiesta tra più distribuzioni di modelli candidati.

Gli strumenti di chiamata alle funzioni dell'agente prompt vengono eseguiti sul lato client. Optimizer può migliorare le descrizioni degli strumenti e dei parametri che guidano le chiamate di funzione del modello, ma non può valutare l'esecuzione dello strumento durante l'ottimizzazione della descrizione degli strumenti.

Avviare la procedura guidata di ottimizzazione dalla scheda Ottimizza dell'agente nel portale di Foundry. La procedura guidata ti guida nella selezione della versione dell'agente, del dataset, dei criteri di valutazione e dei modelli di ottimizzazione prima di inviare l'esecuzione. È possibile generare un set di dati dalle tracce dell'agente, selezionare un set di dati Foundry esistente o caricare un set di dati nella procedura guidata.

Al termine dell'esecuzione, confrontare le variazioni del punteggio, esaminare il prompt prima e dopo le modifiche e verificare i risultati di ciascun valutatore. È quindi possibile alzare di livello un candidato selezionato a una nuova versione dell'agente di prompt dall'esecuzione dell'ottimizzazione.

Per un'esperienza completa nel portale, vedi Guida introduttiva: Ottimizzare un agente di prompt.

Agenti ospitati

Per un agente ospitato, Optimizer migliora la configurazione caricata dal codice in fase di esecuzione. L'agente richiede il pacchetto di ottimizzazione e una configurazione di base che espone le istruzioni e, facoltativamente, le competenze e le definizioni degli strumenti di chiamata a funzioni. Foundry Toolkit può generare automaticamente la struttura di questa integrazione. Per il flusso di lavoro dell'interfaccia della riga di comando per sviluppatori di Azure, aggiungere l'integrazione prima di eseguire Optimizer. L'utilità di ottimizzazione può quindi generare e valutare le configurazioni candidate senza modificare la logica di base dell'agente.

L'ottimizzazione degli agenti ospitati supporta set di dati JSONL locali e set di dati registrati nel progetto Foundry, inclusi i set di dati di valutazione generati dalle tracce. Dopo un'esecuzione, applicare il candidato selezionato alla configurazione locale, esaminare le modifiche e ridistribuire l'agente.

Per un'esperienza end-to-end con un agente ospitato, vedi Avvio rapido: Ottimizzazione di un agente ospitato.

Flusso di lavoro di ottimizzazione

Entrambi i tipi di agente seguono lo stesso percorso generale:

  1. Selezionare la configurazione di base dell'agente. Scegliere la versione dell'agente prompt o la configurazione dell'agente ospitato con cui confrontare i candidati.
  2. Selezionare un set di dati di valutazione. Usare attività rappresentative da un set di dati esistente o caricato. È anche possibile usare un set di dati registrato generato dalle tracce dell'agente.
  3. Selezionare criteri di valutazione. Scegliere analizzatori predefiniti o personalizzati che misurano i comportamenti da migliorare.
  4. Eseguire l'ottimizzatore. Scegliere le destinazioni e i modelli di ottimizzazione disponibili e quindi generare e valutare i candidati. Per gli agenti di prompt, controllare la stima dei costi nel portale prima di inviare l'esecuzione.
  5. Esamina i risultati. Confrontare i punteggi dei candidati con la baseline e quindi selezionare il candidato migliore. Quando disponibile, esaminare l'utilizzo del token misurato dopo l'esecuzione. Vedere Informazioni sui risultati dell'ottimizzazione.
  6. Applica il candidato selezionato. Alzare di livello un candidato agente di prompt a una nuova versione dell'agente oppure applicare la configurazione dell'agente ospitato e ridistribuire.

Gli agenti ospitati richiedono un'integrazione di codice compatibile con l'optimizer. Foundry Toolkit genera automaticamente la struttura di questa integrazione quando si avvia un'ottimizzazione. Per il flusso di lavoro dell'interfaccia della riga di comando per sviluppatori Azure, aggiungere il pacchetto di ottimizzazione e una configurazione di base prima di iniziare. Vedi Rendi l'agente pronto per l'ottimizzatore. Gli agenti prompt non richiedono questa integrazione del codice.

Come funziona l'ottimizzatore dell'agente

L'ottimizzatore dell'agente esegue un ciclo di valutazione e miglioramento a ciclo chiuso:

  1. Valutare la linea di base. Optimizer richiama l'agente su un set di dati di attività e assegna punteggi a ogni risposta in base ai criteri definiti o predefiniti. La baseline è il punteggio del tuo agente prima di apportare qualsiasi modifica.
  2. Generare candidati. L'ottimizzatore produce configurazioni alternative denominate candidate, ad esempio istruzioni riscritte, competenze individuate, descrizioni degli strumenti migliorate o selezioni di modelli diversi. I tipi candidati disponibili dipendono dal tipo di agente.
  3. Valutare i candidati. L'utilità di ottimizzazione testa ogni candidato rispetto allo stesso set di dati.
  4. Classificare e consigliare. Optimizer classifica i risultati in base al punteggio composito, un valore compreso tra 0,0 e 1,0 che rappresenta le prestazioni aggregate e contrassegna il candidato migliore con ★ . Si applica e si distribuisce la versione vincente.

L'intero processo viene eseguito nel cloud. Il tempo di esecuzione dipende dalle dimensioni del set di dati, dal numero di candidati e dai modelli selezionati.

Per gli agenti ospitati, dopo aver eseguito l'ottimizzazione dell'agente, non sono necessarie altre modifiche al codice tra le esecuzioni. load_config() restituisce la linea di base normalmente e fornisce una configurazione ottimizzata durante un'esecuzione senza flag di funzionalità o logica condizionale.

Avvertimento

Durante l'ottimizzazione, l'ottimizzatore valuta il tuo agente invocandolo per ogni attività nel tuo dataset. Se l'agente chiama strumenti esterni, ad esempio API, database o servizi di terze parti, queste chiamate vengono eseguite durante ogni esecuzione della valutazione. Per evitare effetti collaterali indesiderati (carichi, mutazioni di stato o limitazione della velocità), si consiglia di utilizzare endpoint di test o implementazioni di strumenti di simulazione durante l'ottimizzazione.

Destinazioni di ottimizzazione

Una destinazione di ottimizzazione è un aspetto specifico della configurazione dell'agente che l'ottimizzatore può migliorare. Le destinazioni disponibili dipendono dal tipo di agente. Per gli agenti ospitati, l'ottimizzatore attiva automaticamente i target applicabili in base alla configurazione di base e alle impostazioni eval.yaml.

Obiettivo Cosa migliora l'ottimizzatore Agente di prompt Agente virtuale
Ottimizzazione delle istruzioni Riscrive e perfeziona il prompt di sistema per ottenere un punteggio più alto. Usa la versione di prompt-agent selezionata come baseline. Attiva quando la linea di base ha un instructions.md file.
Miglioramento delle competenze Affina il contenuto di ogni abilità riutilizzabile, mantenendone invariato lo scopo. Non supportato. Viene attivato quando la baseline ha una directory skills/ con file SKILL.md.
Ottimizzazione degli strumenti Migliora le descrizioni degli strumenti per le chiamate di funzione e dei parametri in modo che il modello chiami gli strumenti in modo più accurato. Non modifica i tipi, le impostazioni predefinite o i campi obbligatori. Disponibile per gli strumenti di chiamata di funzione. Poiché il client esegue questi strumenti, l'esecuzione degli strumenti non viene valutata durante l'ottimizzazione. Viene attivato quando la linea di base ha un tools.json file. Sono supportati solo gli strumenti per le chiamate di funzione.
Selezione del modello Valuta l'agente tra più distribuzioni di modelli per trovare il compromesso migliore tra qualità e costo. Selezionare i modelli candidati nella procedura guidata di ottimizzazione. Aggiungere distribuzioni candidate a model_search_space in eval.yaml.

Per gli input di riferimento dell'agente ospitato, vedi Prepara l'agente per l'ottimizzatore. Per eseguire e configurare i target dell'agente ospitato, consulta Ottimizzare istruzioni, competenze, strumenti e modelli dell'agente.

Models

L'ottimizzatore dell'agente usa due modelli durante un'esecuzione di ottimizzazione. Entrambi devono essere distribuiti nel progetto Foundry.

Modello Chiave di configurazione dell'agente ospitato Flag CLI dell'agente ospitato Ruolo Modelli supportati
Modello Eval eval_model --eval-model Assegna punteggi alle risposte dell'agente in base ai criteri nel set di dati Qualsiasi modello di completamento della chat (ad esempio, gpt-4.1-mini)
Modello di ottimizzazione optimization_model --optimize-model Genera configurazioni candidate (istruzioni, competenze, strumenti, selezione del modello) gpt-5, gpt-5.1, gpt-5.2, gpt-5.4gpt-5.5, , DeepSeek-V4-ProDeepSeek-V-3.2

Il modello di valutazione viene eseguito una sola volta per ogni analizzatore, attività e valutazione candidata. Legge la risposta dell'agente e ogni criterio, quindi restituisce un punteggio binario. Il modello di ottimizzazione analizza i risultati di base e genera candidati migliorati tra le destinazioni configurate, incluse istruzioni, competenze, strumenti e modelli. Poiché ragiona sull’intero set di dati, un modello di ottimizzazione più potente produce in genere candidati migliori.

Per gli agenti basati su prompt, selezionare il modello di valutazione e i modelli candidati nella procedura guidata di ottimizzazione. Per gli agenti ospitati, specificare i modelli in eval.yaml o con i flag dell'interfaccia della riga di comando. L'impostazione optimization_model è necessaria per le esecuzioni con agente ospitato. Per i passaggi di configurazione, vedere Scegliere i modelli di valutazione e ottimizzazione.

Informazioni sui risultati dell'ottimizzazione

Questa sezione illustra la tabella dei risultati, il modo in cui viene calcolato il punteggio composito e come interpretare i miglioramenti.

Tip

Visualizza i risultati dell'ottimizzazione nel portale Foundry. Passare al progetto, selezionare Agenti, scegliere l'agente e quindi selezionare la scheda Ottimizza per visualizzare i confronti dei punteggi, richiedere o modificare la configurazione e i dettagli dell'analizzatore.

Per gli agenti di prompt, un'esecuzione completata mostra i punteggi della baseline e del candidato, un confronto prima/dopo del prompt e delle descrizioni del modello e degli strumenti, nonché i punteggi per valutatore.

Per gli agenti ospitati, l'interfaccia della riga di comando visualizza anche una tabella dei risultati:

Results:
  Candidate              Score  Eval  Strategy
  ──────────────────── ───────  ────  ────────
  baseline                0.93  View
  candidate_1             0.90  View  skill_policy-reviewer
  candidate_2 ★           0.94  View  skill_policy-reviewer, tools
  candidate_3             0.94  View  skill_policy-reviewer, system_prompt, tools
  candidate_4             0.93  View  skill_policy-reviewer, tools

  Candidate IDs:
      baseline             cand_a8a951...
      candidate_1          cand_8d5c85...
    ★ candidate_2          cand_a0ea2e...
      candidate_3          cand_2ae7bb...
      candidate_4          cand_0f6485...

  Apply the best candidate locally, then deploy:
    azd ai agent optimize apply --candidate cand_a0ea2e...
    azd deploy

Colonne della tabella dei risultati

Column Description
Candidato Nome della configurazione. baseline è il tuo agente attuale prima dell'ottimizzazione.
Punteggio Punteggio composito per tutte le attività e i criteri, compreso tra 0,0 e 1,0.
Eval Collegamento al processo di valutazione nel portale Foundry.
Strategia Destinazioni di mutazione incluse nel candidato, ad esempio skill_policy-reviewer, tools.

Contrassegna ★ il candidato con il punteggio composito più alto. Questo è il candidato consigliato da distribuire.

Come vengono calcolati i punteggi

Ogni valutatore nel tuo dataset produce un punteggio grezzo per la risposta dell'agente. L'ottimizzatore elabora questi punteggi per produrre il punteggio composito visualizzato nei risultati:

  • Riscalatura: Il punteggio grezzo di ciascun valutatore viene riscalato su 0–1.
  • Inverti se necessario: se un valutatore è configurato in modo che un valore inferiore è migliore, il punteggio viene invertito affinché tutti i valutatori adottino la semantica "più alto è migliore".
  • Media: viene calcolata la media dei punteggi riscalati di tutti i valutatori e di tutte le attività per ottenere il punteggio composito.

Punteggio composito: La media di tutti i punteggi riscalati dei valutatori per tutte le attività.

Interpretare i miglioramenti del punteggio

Miglioramento Interpretazione
Minore di 0,03 Rumore. Non un miglioramento significativo.
Da 0.03 a 0.10 Miglioramento moderato. Vale la pena implementarlo.
Da 0.10 a 0.20 Miglioramento significativo.
Maggiore di 0,20 Miglioramento importante. Probabilmente derivato da una base di partenza scadente.

Compromessi dei token

Le istruzioni ottimizzate sono spesso più lunghe e più dettagliate, che possono aumentare l'utilizzo dei token di risposta. Tenere presente questi fattori:

  • Indica se l'aumento del token è proporzionale al miglioramento del punteggio
  • Indica se l'aumento dei costi rientra nel budget
  • Indica se le risposte sono inutilmente verbose o aggiungere valore con la lunghezza aggiuntiva

Per informazioni dettagliate sull'intervallo di costi di pre-esecuzione e sull'utilizzo misurato post-esecuzione, vedere Stime dei costi di Agent Optimizer e utilizzo dei token.

Limitazioni e disponibilità

  • L'ottimizzatore di agenti supporta gli agenti di prompt e gli agenti ospitati in anteprima.
  • Le esecuzioni di ottimizzazione dell'agente di prompt iniziano nel portale Foundry. È possibile alzare di livello un candidato selezionato a una nuova versione dell'agente dall'esecuzione completata.
  • L'ottimizzazione dell'agente ospitato è disponibile in tutte le aree in cui sono disponibili gli agenti ospitati, ad eccezione della Norvegia orientale.
  • L'ottimizzazione dell'agente ospitato richiede il protocollo Responses.