Anvend Git-baserede arbejdsgange på optimeringseksperimenter

Fuldført

Optimeringseksperimenter kræver systematisk organisering for at spore, hvilke ændringer der blev testet, og hvilke resultater de gav. Git-baserede workflows gør det muligt sikkert at teste agentvarianter, dokumentere evalueringsresultater og sammenligne eksperimenter for at identificere, hvilken konfiguration der fungerer bedst.

  1. Opret branch: Opret eksperimentbranch for hver variant
  2. Tilføj testprompts: Gem testprompts i eksperimentmappen
  3. Kør evalueringsscript: Udrul agentversion, kør testprompts, indsaml svar
  4. Scoresvar: Evaluer svarene manuelt for kvalitetsmålinger
  5. Sammenlign og beslut: Gennemgå resultater på tværs af grene, sammenlæg succesfulde eksperimenter

Opret eksperimentgrene

Hvert optimeringseksperiment ligger i sin egen gren, hvor eksperimentelle ændringer holdes adskilt fra din produktionsagent. Opret én gren per eksperimentvariant for at isolere, hvad der ændrede sig—test en ny prompt, en anden model eller konfigurationsjustering én ad gangen. Denne kontrollerede tilgang lader dig tilskrive ydelsesændringer til specifikke ændringer i stedet for at blande flere ændringer i én gren.

Med Adventure Works Trail Guide Agent opretter du eksperimentgrene for at teste forskellige varianter:

main                              # Production baseline (prompt v1)
experiment/prompt-v2-concise      # Test shorter, more focused prompt
experiment/prompt-v2-detailed     # Test enhanced prompt with examples
experiment/gpt4o-mini-model       # Test GPT-4o-mini model
experiment/token-optimization     # Reduce token usage

Når et eksperiment viser sig at være succesfuldt gennem evaluering, samler du det til main. For mislykkede eksperimenter kan du enten beholde grenen som dokumentation for, hvad der ikke virkede (for at forhindre fremtidige teams i at gentage mislykkede tilgange) eller slette grenen for at fjerne rod (hvis evalueringsresultaterne allerede er forpligtede og dokumenterede).

Gem testprompts og kør evalueringsscriptet

Hver eksperimentgren organiserer filer i en ensartet struktur, der adskiller kode, prompts og evalueringsdata:

adventure-works-agent/
├── agent.py                                    # Agent creation script
├── run-agent.py                                # Script to run agent with test prompts
├── prompts/
│   ├── system-prompt-v1.txt                   # Production prompt
│   └── system-prompt-v2-concise.txt           # Experimental variant
├── test-prompts/
│   ├── scottish-highlands-march.txt           # Digital nomad weekend hike
│   ├── family-london-trails.txt               # Family with teenagers
│   ├── five-day-backpacking.txt               # Experienced hiker extended trip
│   ├── ambiguous-hiking-gear.txt              # Edge case: vague request
│   └── incomplete-scotland-trip.txt           # Edge case: missing details
└── experiments/
    ├── prompt-v2-concise/
    │   ├── agent-responses.json            # Raw agent outputs
    │   └── evaluation.csv                  # Manual quality scores and observations
    ├── gpt4o-mini-model/
    │   ├── agent-responses.json
    │   └── evaluation.csv
    └── token-optimization/
        ├── agent-responses.json
        └── evaluation.csv

Mappen prompts/ gemmer forskellige prompt-versioner som .txt filer, der indlæses, agent.py når man opretter agentversioner. Mappen test-prompts/ indeholder individuelle .txt filer for hvert testscenarie med beskrivende navne, der angiver, hvilket brugerbehov de repræsenterer. Scriptet run-agent.py indlæser disse testpromptfiler, kalder agenten for hver enkelt og fanger svar. Hvert eksperiment har sin egen mappe, der experiments/ kun indeholder dets resultater.

Testprompt-filerne indeholder dine 5-10 testscenarier fra Enhed 2. Scriptet run-agent.py automatiserer testarbejdsgange:

  1. Tjek eksperimentgrenen: git checkout experiment/prompt-v2-concise
  2. Deploy agent-version: python agent.py (opretter agent-version i Microsoft Foundry)
  3. Kør evaluering: python run-agent.py (indlæser testprompts, kalder agent for hver prompt, fanger svar, gemmer til agent-responses.json)

Scriptet fanger agentens svar fra API'et og gemmer dem til agent-responses.json. Derefter opretter du en evaluation.csv fil, hvor du manuelt scorer hvert svar i det samme format, som Microsoft Foundry-portalen bruger til evalueringseksporter.

Svarene på point manuelt

Gennemgå agentens svar, der er fanget i agent-responses.json. For hurtig manuel testning er en god praksis at vælge tre til fem evalueringskriterier, der betyder mest for din brug, plus et valgfrit åbent felt til yderligere kommentarer. Opret en evaluation.csv fil med disse kolonner, så den matcher portalens eksportformat:

Testprompt Agentrespons Intentionsresolution Relevans Jordforbindelse Kommentarer
Skotsk-Highlands-March For vandreture i de skotske højlande i marts... 5 5 4 Fremragende udstyrsanbefalinger
Familie-London-stier For nemme stier nær London med teenagere... 4 4 5 Godt begynderråd
Fem-dages rygsækrejse For en femdages rygsæktur... 5 5 5 Omfattende liste
tvetydig-vandreudstyr Hvilken slags vandretur planlægger du... 3 3 4 Stillede opklarende spørgsmål
Ufuldstændig-Scotland-Trip- Til vandreture i Skotland vil jeg anbefale... 4 4 4 Gjorde rimelige antagelser

Inkluder testprompt-filnavn, uddrag af agentens svar, dine kvalitetsscorer (skala 1-5) og kommentarer om responskvalitet.

Tips

Tilpas dit evalueringsformat med det, der kan evalueres via Microsoft Foundry-portalen, og med automatiske evalueringer. Når du bruger ensartede evalueringskriterier og filformater på tværs af manuelle tests, portalevalueringer og automatiserede tests, gør du det nemt at konsolidere testresultater fra forskellige teammedlemmer og evalueringsmetoder.

Sammenlign eksperimenter og beslut

Efter at have gennemført evalueringer på tværs af flere eksperimentgrene, brug dine CSV-data til at sammenligne præstationer og træffe evidensbaserede beslutninger. Tjek hver eksperimentgren og gennemgå den evaluation.csv for at se, hvordan den fungerede. Notér de vigtigste fund fra hver gren, og lav derefter en sammenligning for at identificere, hvilken variant der opfylder dine succeskriterier.

For Adventure Works-eksperimenterne kan du dokumentere din sammenligning:

Eksperimentgren Vigtige observationer Opfylder kriterierne?
hoved (baseline) Solide svar, lidt ordrighed Ja (4,2 i gennemsnit)
prompt-v2-concise Holder kvaliteten, mere fokuseret Ja (4,4 i gennemsnit)
GPT4O-mini-model Lavere kvalitet på komplekse prompts Nej (4,1 i gennemsnit, under 4,2 grænse)

Hvis det prompt-v2-concise opfylder din kvalitetsgrænse og forbedrer præcisionen, så brug Git til at sammenflette det vindende eksperiment:

git checkout main
git merge experiment/prompt-v2-concise
git tag promoted-to-prod-2026-02-17
git push origin main --tags

For eksperimenter, der ikke opfylder kriterierne, dokumenter hvorfor, før du beslutter, om du vil beholde eller slette grenen: "gpt4o-mini-model: Kvaliteten faldt under 4,2 på komplekse rejseplanlægningsprompts. Ikke anbefalet til produktion."

Med Git-workflows etableret til organisering af eksperimenter er du klar til at udføre de faktiske evalueringer ved at køre agenter mod testprompts og systematisk score resultaterne.