Ismerkedés az interaktív képzéssel (előzetes verzió) a Microsoft Foundryben

Important

A cikkben előnézetként megjelölt elemek jelenleg előzetes verzióban érhetők el. Ez az előzetes verzió szolgáltatásszintű szerződés nélkül érhető el, és Microsoft nem javasolja éles számítási feladatokhoz. Előfordulhat, hogy bizonyos funkciók nem támogatottak, vagy korlátozott képességekkel rendelkeznek. További információ: Kiegészítő használati feltételek a Microsoft Azure előzetes verzióhoz.

Important

Az interaktív képzéshez kifejezett hozzáférési jóváhagyás szükséges. Kérjen hozzáférést az előnézeti hozzáférésre szolgáló regisztrációs űrlapon keresztül, és várjon jóváhagyásra, mielőtt létrehoz egy tréningmunkamenetet.

Ebben a gyorsútmutatóban klónozza a mintatárházat, és futtat egy megerősítéses tanulási (RL) receptet a GSM8K matematikai feladatain. A receptúra válaszokat hoz létre, pontozza a helyességüket, és frissíti a Qwen3.8-27B-hez tartozó LoRA adaptert a Microsoft Foundryban.

Ön helyileg futtatja a Python illesztőprogramot; a Foundry futtatja a modellműveleteket. Ez a rövid futtatás ellenőrzi, hogy a betanítás, a kiértékelés és az ellenőrzőpontok mentése működik-e. Ez nem modellminőségi viszonyítási alap, és nincs szükség helyi GPU-ra.

Ha nem rendelkezik Azure-előfizetéssel, hozzon létre egy ingyenes fiókot.

Prerequisites

  • Foundry-projekt jóváhagyott interaktív betanítási előzetes hozzáféréssel és ehhez kapacitással: Qwen/Qwen3.8-27B. Ellenőrizze a támogatott modelleket és régiókat.
  • A betanításhoz a Foundry User szerepkör, vagy a Foundry Owner szerepkör, ha a finomhangolt modellt is üzembe helyezi. Lásd a Microsoft Foundry szerepköralapú hozzáférés-vezérlését.
  • Python 3.11-et vagy újabb verziót, a Gitet és egy írható helyi könyvtárat.
  • Használja az Azure CLI-t az alábbi bejelentkezési parancshoz.
  • Hálózati hozzáférés Python csomagok, a nyilvános adatkészlet és a modell tokenizerjének letöltéséhez.
  • Jóváhagyott költségvetés modellbetöltéshez, tanításhoz, mintavételezéshez és értékeléshez.

A minták tárolójának klónozása

Klónozza a(z) microsoft-foundry/fine-tuning elemet, és nyissa meg interaktív betanítási útmutatóját:

git clone https://github.com/microsoft-foundry/fine-tuning.git
cd fine-tuning/interactive_training

Tartsa nyitva ezt a könyvtárat a további parancsokhoz. Tartalmazza a szakácskönyv pyproject.toml elemét és a Python-csomagot.

Telepítse a cookbookot

Hozzon létre egy virtuális környezetet, és telepítse a cookbookot. A Linux és Windows parancsok a CPU Torch-csomag indexét használják a meghajtóoldali függőségekhez.

python -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install -e . \
    --index-url https://pypi.org/simple \
    --extra-index-url https://download.pytorch.org/whl/cpu

Hivatkozás: Cookbook telepítése.

Ellenőrizze a telepítést távoli munkamenet létrehozása nélkül:

python -m pip check
python -m interactive_training.recipes.math_rl.train_azure --help

Ne várjon hibás függőségeket, és a receptekhez tartozó súgó felsorolja a project_endpoint, max_steps és max_train_examples elemeket.

Konfigurálja a projektjét, majd jelentkezzen be

Jelentkezzen be a projekthez jóváhagyott identitással, majd válassza ki a hozzá tartozó előfizetést:

az login
az account set --subscription "<subscription-id>"

Hivatkozás: Bejelentkezés az Azure CLI-vel.

Másolja ki a projektvégpontot az Foundry-projektből. Használja a projekt URL-címét, ne a modell üzembehelyezési URL-címét és ne csak a fiók gazdagépnevét. Cserélje le a(z) <project> és <account> elemeket a projekt értékeire:

export AZURE_AI_PROJECT_ENDPOINT=\
"https://<account>.services.ai.azure.com/api/projects/<project>"

A recept DefaultAzureCredential értéket használ, kivéve, ha AZURE_AI_API_KEY be van állítva. A CLI-hitelesítő adatok előtt más konfigurált hitelesítő adatok is kiválaszthatók. Ha a kulcsváltozó be van állítva, elsőbbséget élvez a Azure CLI bejelentkezésével szemben.

Receptúra futtatása

Futtassa a GSM8K folyamatot két betanítási iterációval, 16 betanítási példával és nyolc visszatartott értékelési példával. A folyamat létrehoz egy munkamenetet, mintát vesz a válaszokból, kiszámítja a jutalmakat, frissíti az adaptert, és menti a kontrollpontokat.

Warning

Ez a parancs létrehoz egy távoli betanítási munkamenetet, és díjakat vonhat maga után. max_steps=2 korlátozza a betanítási iterációkat, nem pedig a modellbetöltési időt, a kiértékelési hívásokat, az összes tokent vagy a költségeket. Csak jóváhagyott költségvetéssel folytassa.

python -m interactive_training.recipes.math_rl.train_azure \
    project_endpoint="$AZURE_AI_PROJECT_ENDPOINT" \
    model_name="Qwen/Qwen3.8-27B" renderer_name=qwen3_8_low_reasoning \
    env=gsm8k learning_rate=2e-5 temperature=1.0 max_tokens=1200 \
    lora_rank=32 group_size=4 groups_per_batch=8 \
    loss_fn=importance_sampling seed=42 \
    max_steps=2 max_train_examples=16 max_test_examples=8 \
    eval_every=1 save_every=1 \
    log_path=./runs/first-math-check behavior_if_log_dir_exists=raise

Hivatkozás: Math RL recept – rövid útmutató.

A recept nem a --key value-t, hanem a key=value argumentumokat használja. A futtatás befejezéséig tartsa nyitva a terminált és a hálózati kapcsolatot.

Minden iteráció nyolc promptot használ, és promptonként négy választ tartalmaz. A max_tokens=1200 keretet biztosít a következtetéshez és a végső válaszhoz; a válaszok továbbra is csonkolódhatnak.

Az eredmények a(z) runs alatti first-math-check könyvtárba kerülnek. A parancs nem hajlandó felülírni egy meglévő könyvtárat. Válasszon új log_path egy másik független futtatáshoz; ne törölje az eredményeket a hiba kikerülése érdekében.

Ellenőrizze, mi sikerült

Keresse itt: ./runs/first-math-check/, a szakácskönyv könyvtárához viszonyítva:

Stage Evidence Mit bizonyít ez
Indító beállításai run_meta.json ki van írva; a munkamenet-azonosító kezdetben lehet null. A helyi beállítás akkor indul el, nem akkor, amikor az Azure engedélyezi a munkamenetet.
Modell betöltve A konzol Session ready: session_id=...; azure.session_id frissítve van. A munkamenet létrehozása befejeződött.
A ciklus fut config.json, metrics.jsonl, tanítási metrikák és trajektória-HTML. A mintavételezési, osztályozási és frissítési műveletek folyamatban vannak.
Mentett állapot checkpoints.jsonl state_path / sampler_path bejegyzést mentett. A mentési műveletek befejeződtek; ne támaszkodjon a mentés befejezése előtt kiírt ellenőrzőpont nevére.
Normál befejezés final főkönyvi sor a betanított kötegek, a végleges visszatartott metrikák és a folyamat sikeres befejezése után. A határolt munkafolyamat befejeződik; ellenőrizze a figyelmeztetéseket, és külön ellenőrizze az erőforrások felszabadítását.

A friss szinkron GSM8K-futtatás esetében a kezdeti értékelés az első frissítés előtt történik; a végső értékelés a végleges mentést követi. Ellenőrizze test/env/all/correct és test/env/all/total_episodes; vizsgálja meg az esetleges kihagyott kiértékelésekre vonatkozó figyelmeztetéseket. A nulla pontszám a formázás vagy a tokenkeret valódi hibája lehet, még akkor is, ha az infrastruktúra működik. A hiányzó metrikák nem jelentenek nulla pontszámot.

Ehhez a kétlépéses ellenőrzéshez nincs előírt pontosságnövekedés vagy ígért futási idő. A javulás igazolásához használjon rögzített visszatartott készletet és az értékelési útmutatót.

A helyi artefaktumok megtekintése:

python dashboard_server.py --root ./runs
# Open http://127.0.0.1:8000/

Hivatkozás: Irányítópult futtatása.

Tartsa az irányítópultot az alapértelmezett loopback címén, mert nincs hitelesítése, és megjelenítheti a promptokat és a válaszokat. Nyomja le a Ctrl+C billentyűkombinációt a dashboard terminálban a leállításához; ez nem szünteti meg a távoli tanítási munkamenetet.

Erőforrások tisztítása

A receptúra megpróbálja bezárni a tanítási munkamenetet, amikor a ciklus befejeződik. Keressen tisztítási figyelmeztetéseket; a kinyomtatott Session closed üzenet önmagában nem erősíti meg, hogy a távoli számítási erőforrás felszabadult.

A munkamenet vizsgálatához használja a rögzített munkamenet-azonosítót és a minta munkamenet-kezelési útmutatót. Ha aktív marad, őrizze meg a szükséges ellenőrzőpontokat, és csak a saját munkamenetét szüntesse meg.

Őrizze meg a konfigurációt, a metrikákat és az ellenőrzőpont-hivatkozásokat a helyreállításhoz. A helyi fájlok törlése nem szabadít fel távoli számítási erőforrásokat. Ez a recept nem hoz létre kiszolgálási telepítést.

Próbáljon ki más recepteket

A rövid útmutató elvégzése után próbáljon ki más recepteket a finomhangolási mintatárházban. Az interaktív betanítási cookbook példákat tartalmaz a felügyelt finomhangolásra, a preferenciaoptimalizálásra, a desztillációra és más RL-feladatokra.

Kövesse az egyes receptek beállítási és adatkészlet-utasításait. Egy újabb futtatás megkezdése előtt ellenőrizze a modell hozzáférését és a jóváhagyott költségvetést.