Il test set è un banco di prova, non un componente dell’agente
L’oggetto elementare della valutazione automatica in Copilot Studio è il test case: una singola interazione che simula come un utente parlerebbe con l’agente. Può essere una domanda isolata o un’intera conversazione, e può includere la risposta che ti aspetti. Un gruppo di test case si chiama test set e vive nella pagina Evaluation dell’agente.
Parti da una disambiguazione che l’esame sfrutta volentieri: un test set non è un topic, non è un tool, non è una knowledge source e non è un agent flow. Non aggiunge capacità all’agente e non ne modifica il comportamento. È materiale di prova che interroga l’agente dall’esterno, ne registra le risposte, le confronta con le attese o con uno standard di qualità e assegna un esito a ciascun test case. Topic e tool entrano in scena solo come oggetto della verifica, quando vuoi controllare se l’agente ha davvero usato la risorsa giusta.
Due limiti concettuali da ricordare. Primo: la valutazione misura correttezza e prestazioni, non etica o sicurezza dell’AI — un agente può superare tutti i test e produrre comunque una risposta inappropriata, quindi le revisioni di responsible AI e i filtri di content safety restano necessari. Secondo: al momento l’agent evaluation non supporta i Fabric data agent.
Popolare il test set
Puoi comporre i test case a mano, importarli o farli generare. Selezionando New evaluation trovi diverse strade:
- Quick question set: Copilot Studio genera automaticamente un primo gruppo ridotto di domande partendo da description, instructions e capabilities dell’agente. Serve per valutazioni piccole e rapide o come nucleo di un set più grande.
- Full question set: la generazione parte da una risorsa che l’agente ha già, e qui devi scegliere fra Knowledge e Topics. Knowledge funziona meglio per gli agenti in generative orchestration e crea domande da una knowledge source (testo, Word, Excel, PDF, contenuti SharePoint); Topics funziona meglio per la classic orchestration e crea domande dai topic. Un cursore decide quante domande generare.
- Use your test chat conversation: riusa le domande dell’ultima sessione di test chat.
- Import da file: prepari tu il contenuto e lo carichi.
- Or, write some questions yourself: scrittura manuale, caso per caso.
- Dati di produzione, partendo dai themes nell’area Analytics dell’agente: passi il mouse su un tema e scegli Evaluate. È il modo per valutare un’area circoscritta dello scope usando domande vere degli utenti.
Il file di import è un CSV o un TXT con due intestazioni, in quest’ordine:
Question,Expected response
What are your business hours?,"We're open from 9 a.m. to 5 p.m. from Monday to Friday."
La colonna Expected response è facoltativa in fase di import, ma senza di essa i metodi di confronto non possono girare.
Attenzione a due dettagli operativi. La generazione dei test case usa le credenziali dell’account connesso per raggiungere knowledge source e tool: i casi generati possono quindi contenere dati sensibili, e qualsiasi maker con accesso all’agente vede i test set collegati. E la generazione fallisce se una delle domande prodotte viola le impostazioni di content moderation dell’agente. Ricorda inoltre che generare domande dalle risorse esistenti verifica bene come l’agente usa ciò che ha, ma non è adatto a scoprire i buchi informativi.
Singola risposta o conversazione
Dopo New evaluation scegli il tipo di test set, e la scelta condiziona tutto il resto.
Single response prova l’agente su una domanda slegata alla volta: la pone, registra la risposta, poi ricomincia da zero con la successiva. È il tipo giusto quando ti interessano risposte a domande specifiche, quali capacità vengono invocate e la formulazione esatta usata.
Conversation valuta il comportamento su un’interazione più lunga, dove ogni risposta dipende dal contesto precedente: serve a capire se l’agente mantiene il contesto, chiede chiarimenti e porta a termine attività multi-step. I test case si popolano tramite Quick conversation set, Full conversation set (dove puoi chiedere conversazioni brevi o lunghe) oppure Use your test chat. Un set conversazionale contiene molti meno test case di uno a singola risposta e ogni caso è limitato a un piccolo numero di coppie domanda-risposta. Nell’editor di conversazione modifichi i messaggi utente e le reference response dell’agente, e con Add a user question allunghi lo scambio.
Il punto che l’esame verifica: non tutti i metodi sono disponibili per entrambi i tipi. Un test set di tipo Conversation accetta soltanto General quality, Keyword match, Tool use e Custom.
Scegliere il metodo di valutazione
Ogni test set può usare più metodi insieme, aggiunti con Add test method.
General quality è il metodo predefinito di ogni nuovo test set e il solo che non richiede risposte attese: un LLM giudica la risposta su relevance, groundedness, completeness e abstention, e per essere considerata di alta qualità la risposta deve soddisfare tutti questi criteri. È la scelta quando non esiste una risposta esatta prevista.
Quando invece la risposta deve somigliare a un originale approvato, servono due metodi diversi che si confondono facilmente. Compare meaning confronta il significato con la risposta attesa tramite similarità di intento, ignorando la formulazione: è utile quando una risposta può essere espressa in modi corretti diversi. Text similarity confronta il testo, cioè parole e struttura della frase, con una metrica di cosine similarity: è il metodo per i casi in cui la formulazione precisa conta, come un documento legale generato, e si usa tipicamente accanto a Compare meaning. Se la risposta deve coincidere per intero, carattere per carattere, il metodo è Exact match, adatto a numeri, codici e frasi fisse. Keyword match verifica solo la presenza di termini attesi, con la scelta fra Any e All. Tool use controlla se l’agente ha usato i tool o i topic previsti. Custom ti fa definire nome, evaluation instructions e label con esito pass o fail.
Ultimo particolare da non sbagliare: se manchi le risposte attese o le keyword richieste da un metodo, quel test case non risulta Fail ma Invalid. Gli esiti possibili sono Pass, Fail, Invalid ed Error, e dal rapporto fra Pass e Fail nasce il Pass rate del test set. Negli ambienti Government Community Cloud, infine, il metodo basato sulla similarità del testo non è disponibile e non si può associare un user profile al test set, pur restando possibile eseguire le valutazioni.