Brukes når du blir bedt om å validere, teste, røykteste eller kjøre kursets notatbok og kodeeksempler mot en aktiv Microsoft Foundry / Azure OpenAI-konfigurasjo
复制下面这句话,粘贴给 Claude Code、Codex、Cursor 等 AI 编程工具,它会读取安装说明并在你确认后完成安装。
请阅读 https://ai.atlankj.com/install/asset/gh-testing-course-samples-7eef29afa25e ,按照其中的说明把「testing-course-samples」安装到你(当前 AI 工具)中。执行前先告诉我将运行的命令和写入的位置,等我确认。
查看 AI 将读取的安装说明正在读取 GitHub 原文…
内容来自 GitHub 原始文件,由原作者维护。在 GitHub 查看
Valider at leksjons-notatbøker og kodeeksempler kjører mot en levende
Microsoft Foundry / Azure OpenAI-oppsett. Repositoriet leverer en kjører på
scripts/validate-notebooks.ps1 som
kjører hver Python-notatbok hodeløst og skriver ut en PASS/FAIL-matrise.
Bruk ikke denne for AI Smoke Test GitHub Action (som validerer utrullerte
hostede agenter — se tests/README.md). Denne skillen
kjører notatbøkene lokalt.
python -m pip install -r requirements.txt
pluss kjøremiljø: python -m pip install nbconvert ipykernel..env i repos rot (kopier fra .env.example) med minst:
AZURE_AI_PROJECT_ENDPOINT — Foundry prosjektendepunkt
(https://<account>.services.ai.azure.com/api/projects/<project>)AZURE_AI_MODEL_DEPLOYMENT_NAME — en ikke-utdatert utrulling (f.eks. gpt-5-mini)AZURE_OPENAI_ENDPOINT (https://<account>.openai.azure.com) og AZURE_OPENAI_DEPLOYMENT
for leksjoner som kontakter Azure OpenAI direkte (Leksjon 06, 02-azure-openai, 14 handoff/human-loop).az login fullført — eksemplene autentiserer med AzureCliCredential (Entra ID, uten nøkkel).az cognitiveservices account deployment list -g <rg> -n <account> -o table.# Alle Python-notatbøker (hopper .NET, .venv, site-packages, oversettelser, ferdighetsressurser)
pwsh scripts/validate-notebooks.ps1
# En enkelt leksjon, med lengre tidsavbrudd per celle
pwsh scripts/validate-notebooks.ps1 -Filter '08-*' -Timeout 600
# Bare list opp hva som ville kjøres (ingen kjøring)
pwsh scripts/validate-notebooks.ps1 -List
# Eksplisitt tolker (hvis `python` ikke er i PATH, f.eks. Windows Store-alias)
pwsh scripts/validate-notebooks.ps1 -Python "C:/path/to/python.exe"
Skriptet skriver ut kjørte kopier, per-notatbok logger, og results.json til
$env:TEMP\aiab-nbval og avslutter med antall feil.
Midlertidige feil (felles-abonnement HTTP 429 rate limits, en tilfeldig
AzureCliCredential token-hickup, eller timeout) blir forsøkt på nytt automatisk
(-Retries, standard 2, med -RetryDelaySeconds backoff, standard 20). Hvis en
modellutrulling jevnlig får 429, sjekk abonnementets GlobalStandard
TPM-kvote (az cognitiveservices usage list -l <region>) — det hjelper ikke å øke
kapasiteten til én enkelt utrulling når abonnementets kvote er brukt opp.
PASS — notatboken kjørte fra start til slutt uten cellfeil.FAIL — den første *Error / *Exception linjen vises; åpne matchende
log_*.txt i utdata-mappen for full traceback.-Timeout (per celle), så en hengende
human-in-the-loop-celle fremstår som StdinNotImplementedError i stedet for å henge.| Leksjon | Ekstra krav |
|---|---|
| 05 Agentic RAG | Azure AI Search (AZURE_SEARCH_SERVICE_ENDPOINT, nøkkel) — har en minnebasert fallback |
| 11 MCP / GitHub | GitHub MCP-server + PAT |
| 13 minne (cognee) | cognee konfigurert med modell-leverandør |
| 15 nettleser-bruk | Playwright nettlesere installert (playwright install) + AZURE_OPENAI_CHAT_DEPLOYMENT_NAME |
| 17 lokal agent | Foundry Local runtime + en nedlastet Qwen-modell (på enheten, ikke sky) |
*-dotnet-* notatbøker | .NET Interactive-kjerne (utelatt som standard; bruk -IncludeDotnet) |
Oppsummer som en PASS/FAIL-tabell gruppert etter leksjon. Skill ut ekte regresjoner
(kode-/konfigurasjonsfeil som må fikses) fra miljømangler (manglende Search/Foundry Local/PAT),
og vis den feilede log_*.txt for hver reell feil.
Ansvarsfraskrivelse: Dette dokumentet er oversatt ved hjelp av AI-oversettelsestjenesten Co-op Translator. Selv om vi streber etter nøyaktighet, vær oppmerksom på at automatiske oversettelser kan inneholde feil eller unøyaktigheter. Det opprinnelige dokumentet på originalspråket skal betraktes som den autoritative kilden. For kritisk informasjon anbefales profesjonell menneskelig oversettelse. Vi er ikke ansvarlige for eventuelle misforståelser eller feiltolkninger som oppstår ved bruk av denne oversettelsen.