testing-course-samples
Use when asked to validate, test, smoke-test, or run the course's notebook and code samples against a live Microsoft Foundry / Azure OpenAI configuration. Covers environment setup (.env, az login, packages), the scripts/validate-notebooks.ps1 runner, interpreting PASS/FAIL results, and which lessons need extra resources (Azure AI Search, GitHub MCP, Foundry Local, Playwright).
- License 许可
- MIT
- 最近更新
- 2026-11-07
- Stars
- ★ 8.0w
- Forks
- 2.6w
01 前言 Front Matter
- name
- testing-course-samples
- description
- Use when asked to validate, test, smoke-test, or run the course's notebook and code samples against a live Microsoft Foundry / Azure OpenAI configuration. Covers environment setup (.env, az login, packages), the scripts/validate-notebooks.ps1 runner, interpreting PASS/FAIL results, and which lessons need extra resources (Azure AI Search, GitHub MCP, Foundry Local, Playwright).
03 SKILL.md 正文
Testarea Exemplelor din Curs
Verificați dacă caietele de lecție și exemplele de cod funcționează cu o configurare live
Microsoft Foundry / Azure OpenAI. Repozitoriul include un executabil la
scripts/validate-notebooks.ps1 care
rulează fiecare caiet Python fără interfață și afișează o matrice PASS/FAIL.
Când să utilizați
- "Validarea tuturor caietelor / exemplelor în raport cu abonamentul meu Azure."
- "Testare rapidă a cursului după actualizarea pachetelor sau schimbarea modelelor."
- "Care lecții mai trec / eșuează live?"
Nu utilizați pentru GitHub Action AI Smoke Test (care validează agenții deployed
găzduiți — vezi tests/README.md). Această abilitate
rulează caietele local.
Condiții preliminare (verificați întâi)
- Python 3.12+ cu dependențele cursului:
python -m pip install -r requirements.txtplus executorul:python -m pip install nbconvert ipykernel. .envla rădăcina repo-ului (copiat din.env.example) cu cel puțin:AZURE_AI_PROJECT_ENDPOINT— punctul final al proiectului Foundry (https://<account>.services.ai.azure.com/api/projects/<project>)AZURE_AI_MODEL_DEPLOYMENT_NAME— un deployment neînvechit (de exemplugpt-5-mini)AZURE_OPENAI_ENDPOINT(https://<account>.openai.azure.com) șiAZURE_OPENAI_DEPLOYMENTpentru lecțiile care apelează direct Azure OpenAI (Lecția 06, 02-azure-openai, 14 handoff/human-loop).
az loginfinalizat — exemplele se autentifică cuAzureCliCredential(Entra ID, fără cheie).- Verificați existența deployment-ului modelului:
az cognitiveservices account deployment list -g <rg> -n <account> -o table.
Rularea validării
# All Python notebooks (skips .NET, .venv, site-packages, translations, skill assets)
pwsh scripts/validate-notebooks.ps1
# A single lesson, with a longer per-cell timeout
pwsh scripts/validate-notebooks.ps1 -Filter '08-*' -Timeout 600
# Just list what would run (no execution)
pwsh scripts/validate-notebooks.ps1 -List
# Explicit interpreter (if `python` is not on PATH, e.g. Windows Store alias)
pwsh scripts/validate-notebooks.ps1 -Python "C:/path/to/python.exe"
Scriptul scrie copii executate, jurnale pe caiet și results.json în
$env:TEMP\aiab-nbval și iese cu numărul erorilor.
Eșecurile tranzitorii (limitele de rată HTTP 429 pe abonamente partajate, o
ezitare ocazională a token-ului AzureCliCredential, sau un timeout) sunt reîncercate automat
(-Retries, implicit 2, cu retragere -RetryDelaySeconds, implicit 20). Dacă un
deployment de model produce frecvent eroarea 429, verificați cota GlobalStandard
TPM a abonamentului (az cognitiveservices usage list -l <region>) — creșterea capacității unui
singur deployment nu ajută dacă cota abonamentului este epuizată.
Interpretarea rezultatelor
PASS— caietul a rulat complet fără eroare într-o celulă.FAIL— este afișat primul rând*Error/*Exception; deschideți fișierullog_*.txtcorespunzător din directorul de ieșire pentru urmărirea completă a erorii.- O singură eroare a unui caiet este limitată la
-Timeout(pe celulă), astfel încât o celulă uman-in-the-loop blocată apare caStdinNotImplementedErrorși nu rămâne blocată.
Lecții care necesită resurse suplimentare (se așteaptă să eșueze fără ele)
| Lecția | Cerință suplimentară |
|---|---|
| 05 Agentic RAG | Azure AI Search (AZURE_SEARCH_SERVICE_ENDPOINT, cheie) — are o rută fallback în memorie |
| 11 MCP / GitHub | Server GitHub MCP + PAT |
| 13 memorare (cognee) | cognee configurat cu un furnizor de model |
| 15 folosire browser | Browsere Playwright instalate (playwright install) + AZURE_OPENAI_CHAT_DEPLOYMENT_NAME |
| 17 agent local | Runtime Foundry Local + model Qwen descărcat (pe dispozitiv, fără cloud) |
Caiete *-dotnet-* |
Kernel .NET Interactive (exclus implicit; folosiți -IncludeDotnet) |
Raportare înapoi
Rezumați într-un tabel PASS/FAIL grupat pe lecție. Separați regresiile reale
(bug-uri de cod/configurație de reparat) de lipsurile din mediu (Search/Foundry Local/PAT lipsă),
și citați log_*.txt care eșuează pentru fiecare eșec real.
<!-- CO-OP TRANSLATOR DISCLAIMER START --> Declinare a responsabilității: Acest document a fost tradus folosind serviciul de traducere AI Co-op Translator. În timp ce ne străduim pentru acuratețe, vă rugăm să rețineți că traducerile automate pot conține erori sau inexactități. Documentul original în limba sa nativă trebuie considerat sursa autorizată. Pentru informații critice, se recomandă traducerea profesională realizată de un om. Nu ne asumăm responsabilitatea pentru eventualele neînțelegeri sau interpretări greșite care decurg din utilizarea acestei traduceri. <!-- CO-OP TRANSLATOR DISCLAIMER END -->
04 同仓库更多 Skills
testing-course-samples
暂无简介
microsoft-docs
暂无简介
local-ai-agents
暂无简介
jupyter-notebook
當使用者要求建立、搭建或編輯 Jupyter 筆記本(`.ipynb`)用於實驗、探索或教學時使用;優先使用隨附範本並執行輔助腳本 `new_notebook.py` 來產生一個乾淨的起始筆記本。
deploying-scalable-agents
暂无简介
azure-openai-to-responses
暂无简介