Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
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'utilità di ottimizzazione agente in Foundry Agent Service migliora automaticamente gli agenti ospitati valutando il comportamento e generando configurazioni migliori. Queste configurazioni includono principalmente istruzioni di sistema migliorate e competenze individuate.
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.
Come funziona l'ottimizzatore dell'agente
L'ottimizzatore dell'agente esegue un ciclo di valutazione e miglioramento a ciclo chiuso:
- 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.
- Generare candidati. L'ottimizzatore produce configurazioni alternative denominate candidate, ovvero istruzioni riscritte o competenze individuate, progettate per migliorare i punteggi.
- Valutare i candidati. L'utilità di ottimizzazione testa ogni candidato rispetto allo stesso set di dati.
- 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 ★ .
- Metti in campo il vincitore. Un singolo comando promuove il candidato vincente e salva la configurazione nell'ambiente dell'agente.
L'intero processo viene eseguito nel cloud. Avvialo con azd ai agent optimize (richiede l'estensione CLI di azd). L'esecuzione richiede da 5 a 20 minuti a seconda delle dimensioni del set di dati.
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.
Tip
Per ottenere risultati ottimali, generare un set di dati personalizzato per l'agente con azd ai agent eval generate prima di eseguire l'ottimizzazione. L'ottimizzatore rileva automaticamente il tag generato eval.yaml. Per informazioni dettagliate, vedere Creare un set di dati di valutazione.
Destinazioni di ottimizzazione
Una destinazione di ottimizzazione è un aspetto specifico della configurazione dell'agente che l'ottimizzatore può migliorare. L'ottimizzatore dell'agente determina automaticamente quali target attivare in base alla configurazione di base dell'agente e alle impostazioni eval.yaml.
Ottimizzazione delle istruzioni
L’ottimizzatore riscrive e perfeziona il system prompt del tuo agente. Analizza le prestazioni di base e genera varianti immediate che ottengono punteggi più alti.
Quando viene attivato: L'ottimizzazione delle istruzioni viene eseguita quando l'agente ha un instructions.md file nella directory di configurazione di base. Si tratta della destinazione di ottimizzazione più comune e funziona bene per migliorare la qualità della risposta, rispettare i requisiti delle attività e ridurre output imprecisi.
Miglioramento delle competenze
L'ottimizzatore migliora le competenze riutilizzabili che l'agente utilizza. Perfeziona il contenuto delle skill esistenti (il contenuto di implementazione in ciascun file SKILL.md) mantenendo invariate le descrizioni delle skill. L'agente carica queste competenze tramite load_config() e le aggiunge al set di istruzioni.
Quando viene attivato: Il miglioramento delle competenze viene eseguito quando l'agente ha una skills/ directory nella configurazione di base. Usare le competenze per gli agenti che necessitano di comportamenti strutturati e ripetibili. Ad esempio, un addetto all'assistenza che segue una specifica procedura di escalation o un agente di viaggio che verifica le politiche di spesa.
Ottimizzazione degli strumenti
L’optimizer migliora le descrizioni degli strumenti e dei parametri per aiutare il modello a chiamare gli strumenti con maggiore precisione. Non modifica i tipi di parametri, le impostazioni predefinite o i campi obbligatori, ma vengono perfezionate solo le descrizioni in linguaggio naturale.
Quando si attiva: L'ottimizzazione degli strumenti viene eseguita quando il tuo agente include un file tools.json nella configurazione di riferimento. L'ottimizzatore analizza quali chiamate agli strumenti hanno esito positivo o negativo e genera descrizioni e descrizioni dei parametri più chiare.
Selezione del modello
L'ottimizzatore valuta il tuo agente su più distribuzioni del modello in un unico ciclo di esecuzione per individuare il miglior compromesso tra qualità e costo. Ad esempio, può determinare se gpt-4.1-mini gestisce il carico di lavoro a un costo inferiore o se gpt-4.1 fornisce un miglioramento qualitativo che giustifica il costo aggiuntivo del token.
Quando viene attivato: La selezione del modello viene eseguita quando si include optimization_config.model_search_space nell'oggetto eval.yaml con un elenco di distribuzioni di modelli da valutare. L'utilità di ottimizzazione assegna un punteggio a ogni opzione del modello rispetto allo stesso set di dati e mostra i compromessi.
Annotazioni
Se l'elenco dei modelli include l'attuale implementazione del modello del tuo agente, questa viene automaticamente rimossa dai candidati (la baseline rappresenta già quel modello). Se dopo questa rimozione non rimangono modelli, viene visualizzato un errore di convalida.
Configura i modelli candidati nel tuo eval.yaml:
# eval.yaml
options:
optimization_config:
model_search_space:
- gpt-4.1
- gpt-4.1-mini
- gpt-4o
È possibile combinare la selezione del modello con l'istruzione e l'ottimizzazione delle competenze nella stessa esecuzione. L'utilità di ottimizzazione determina automaticamente le destinazioni da migliorare in base alla configurazione di base e alle optimization_config impostazioni.
Risoluzione della configurazione
All'avvio dell'agente, la load_config() funzione controlla diverse origini in ordine: JSON inline durante la valutazione candidata, l'API resolver per un candidato recuperato, la directory locale .agent_configs/ dopo l'applicazione di un candidato e infine None quando non è presente alcuna origine di configurazione.
L'agente funziona sempre con o senza ottimizzazione. Non servono feature flag né logica condizionale. Chiamare load_config() e usare i valori restituiti. Per l’ordine completo di risoluzione e i dettagli di implementazione, consulta Prepara l’agente per l’ottimizzatore.
Cosa viene ottimizzato
| Campo | Description | Obiettivo |
|---|---|---|
instructions |
Richiesta di sistema e istruzioni | istruzione, competenza |
skills |
Catalogo delle competenze rilevate | skill |
model |
Nome della distribuzione del modello | model |
tools |
Definizioni degli strumenti (descrizioni, parametri) | strumento |
Models
L'ottimizzatore dell'agente usa due modelli durante un'esecuzione di ottimizzazione. Entrambi devono essere distribuiti nel progetto Foundry.
| Modello | Chiave di configurazione | Opzione CLI | 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 volta per ogni attività per candidato. 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 (istruzioni, competenze, strumenti e modelli). Poiché ragiona sull’intero set di dati, un modello di ottimizzazione più potente produce in genere candidati migliori.
# eval.yaml
options:
eval_model: gpt-4.1-mini
optimization_model: gpt-5.1
Importante
È necessario specificare optimization_modele il modello di ottimizzazione deve appartenere all'elenco supportato in precedenza.
Informazioni sui risultati dell'ottimizzazione
Questa sezione descrive la struttura della tabella dei risultati, il modo in cui vengono calcolati i punteggi, i miglioramenti del punteggio e come diagnosticare i problemi comuni.
Tip
È anche possibile visualizzare i risultati di ottimizzazione nel portale foundry. Passare al progetto, selezionare Agenti, scegliere l'agente e quindi selezionare la scheda Ottimizza per visualizzare confronti dei punteggi, grafici e opzioni di distribuzione.
Al termine dell'esecuzione dell'ottimizzazione, viene visualizzata 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
Limitazioni e disponibilità
- L'utilità di ottimizzazione agente è disponibile in tutte le aree in cui sono disponibili agenti ospitati, ad eccezione della Norvegia orientale.
- L'utilità di ottimizzazione agente è supportata per gli agenti ospitati che usano il protocollo Responses.