Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Important
Elemente, die in diesem Artikel als Vorschau gekennzeichnet sind, befinden sich derzeit in der Vorschau. Diese Vorschauversion wird ohne Service Level Agreement bereitgestellt, und Microsoft empfiehlt ihren Einsatz nicht für Produktionsworkloads. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar. Weitere Informationen finden Sie unter Zusätzliche Nutzungsbedingungen für Microsoft Azure-Vorschauversionen.
Important
Interaktive Schulung erfordert explizite Zugriffsgenehmigung. Fordern Sie den Zugriff über das Vorschau-Registrierungsformular an, und warten Sie vor dem Erstellen einer Schulungssitzung auf die Genehmigung.
In dieser Schnellstartanleitung klonen Sie das Beispiel-Repository und führen ein RL-Rezept (Verstärkungslernen) anhand von GSM8K-Matheaufgaben aus. Das Rezept generiert Antworten, bewertet ihre Korrektheit und aktualisiert einen LoRA-Adapter (Low-Rank Adaption) für Qwen3.8-27B in Microsoft Foundry.
Sie führen den Python Treiber lokal aus; Foundry führt die Modellvorgänge aus. In diesem kurzen Durchlauf wird überprüft, ob Schulung, Auswertung und das Speichern von Prüfpunkten funktionieren. Es handelt sich nicht um einen Benchmark zur Modellqualität, und Sie benötigen keine lokale GPU.
Wenn Sie kein Azure-Abonnement besitzen, können Sie ein kostenloses Konto erstellen.
Prerequisites
- Ein Foundry-Projekt mit genehmigtem interaktivem Schulungsvorschauzugriff und Kapazität für
Qwen/Qwen3.8-27B. Überprüfen Sie unterstützte Modelle und Regionen. - Die Rolle " Foundry User " für Schulungen oder die Rolle " Foundry Owner ", wenn Sie auch das fein abgestimmte Modell bereitstellen. Siehe rollenbasierte Zugriffssteuerung für Microsoft Foundry.
- Python 3.11 oder höher, Git und ein schreibbares lokales Verzeichnis.
- Verwenden Sie die Azure CLI für den folgenden Anmeldebefehl.
- Netzwerkzugriff zum Herunterladen Python Pakete, des öffentlichen Datasets und des Tokenizers des Modells.
- Ein genehmigtes Budget für das Laden von Modellen, Schulung, Sampling und Evaluierung.
Klonen Sie das Beispiel-Repository
Klonen Sie microsoft-foundry/fine-tuning und öffnen Sie ihr interaktives Training-Cookbook:
git clone https://github.com/microsoft-foundry/fine-tuning.git
cd fine-tuning/interactive_training
Lassen Sie dieses Verzeichnis für die verbleibenden Befehle geöffnet. Es enthält das Kochbuchs pyproject.toml und Python-Paket.
Cookbook installieren
Erstellen Sie eine virtuelle Umgebung, und installieren Sie das Cookbook. Die Befehle Linux und Windows verwenden den CPU Torch-Paketindex für treiberseitige Abhängigkeiten.
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
Informationen zu: Cookbook-Installation.
Überprüfen Sie die Installation, ohne eine Remotesitzung zu erstellen:
python -m pip check
python -m interactive_training.recipes.math_rl.train_azure --help
Erwarten Sie keine fehlerhaften Abhängigkeiten und Rezepthilfe, in der project_endpoint, max_steps und max_train_examples aufgeführt sind.
Konfigurieren Sie Ihr Projekt und melden Sie sich an
Melden Sie sich mit der für Ihr Projekt genehmigten Identität an, und wählen Sie dann deren Abonnement aus:
az login
az account set --subscription "<subscription-id>"
Referenz: Melden Sie sich mit Azure CLI an.
Kopieren Sie den Projektendpunkt aus Ihrem Foundry-Projekt. Verwenden Sie die Projekt-URL, keine Modellbereitstellungs-URL oder nur den Hostnamen des Kontos. Ersetzen Sie <account> und <project> durch Ihre Projektwerte:
export AZURE_AI_PROJECT_ENDPOINT=\
"https://<account>.services.ai.azure.com/api/projects/<project>"
Das Rezept verwendet DefaultAzureCredential, sofern AZURE_AI_API_KEY nicht festgelegt ist. Andere konfigurierte Anmeldeinformationen können vor den CLI-Anmeldeinformationen ausgewählt werden. Wenn die Variable für den Schlüssel festgelegt ist, hat sie Vorrang vor Ihrer Anmeldung bei der Azure CLI.
Rezept ausführen
Führen Sie das GSM8K-Rezept mit zwei Schulungsdurchläufen, 16 Schulungsbeispielen und acht zurückgehaltenen Evaluierungsbeispielen aus. Das Rezept erstellt eine Sitzung, nimmt Stichproben von Antworten, berechnet Belohnungen, aktualisiert den Adapter und speichert Checkpoints.
Warning
Dieser Befehl erstellt eine Remote-Trainingssitzung und kann Gebühren verursachen.
max_steps=2 schränkt Schulungsiterationen ein, nicht die Modellladezeit, Auswertungsaufrufe, Gesamttoken oder Kosten. Fahren Sie nur fort, wenn ein Budget genehmigt wurde.
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
Referenz: Schnellstart für mathematische RL-Rezepte.
Die Anweisung verwendet key=value Argumente, nicht --key value. Lassen Sie das Terminal und die Netzwerkverbindung geöffnet, bis die Ausführung abgeschlossen ist.
Jede Iteration verwendet acht Eingabeaufforderungen mit vier Antworten pro Eingabeaufforderung.
max_tokens=1200 stellt ein Vervollständigungsbudget für die Begründung und die endgültige Antwort bereit; Antworten können weiterhin abgeschnitten werden.
Die Ergebnisse werden im first-math-check Verzeichnis unter runs. Der Befehl lehnt das Überschreiben eines vorhandenen Verzeichnisses ab. Wählen Sie eine neue log_path für eine andere unabhängige Ausführung aus. Löschen Sie ihre Ergebnisse nicht, um einen Fehler zu umgehen.
Prüfen Sie, was erfolgreich war
Suchen Sie in ./runs/first-math-check/, relativ zum Cookbook-Verzeichnis:
| Stage | Evidence | Was es beweist |
|---|---|---|
| Launcher-Setup |
run_meta.json wird geschrieben; die Sitzungs-ID kann anfangs null sein. |
Die lokale Einrichtung startet, nicht, dass Azure die Sitzung akzeptiert. |
| Modell geladen | Konsole Session ready: session_id=...; azure.session_id wird aktualisiert. |
Die Sitzungserstellung ist abgeschlossen. |
| Schleife läuft |
config.json, metrics.jsonl, Trainingsmetriken und Verlaufs-HTML. |
Sampling-, Klassifizierungs- und Aktualisierungsvorgänge werden ausgeführt. |
| Gespeicherter Status |
checkpoints.jsonl hat state_path/sampler_path Einträge gespeichert. |
Speichervorgänge abgeschlossen; verlassen Sie sich nicht auf einen Checkpoint-Namen, der vor Abschluss des Speichervorgangs gedruckt wird. |
| Normaler Abschluss |
final Hauptbuchzeile nach trainierten Batches, endgültigen Holdout-Metriken und erfolgreichem Beenden des Prozesses. |
Der begrenzte Workflow wird abgeschlossen; überprüfen Sie Warnungen und überprüfen Sie die Bereinigung separat. |
Für diesen frischen synchronen GSM8K-Lauf erfolgt die Erstauswertung vor dem ersten Update; die endgültige Auswertung folgt dem endgültigen Speichern. Überprüfen Sie test/env/all/correct und test/env/all/total_episodes; überprüfen Sie alle Warnungen zu verworfenen Auswertungen. Eine Nullbewertung kann ein echtes Versagen aufgrund von Formatierung oder Tokenbudget sein, auch wenn die Infrastruktur funktioniert. Fehlende Metriken sind keine Nullbewertung.
Für diese zweistufige Überprüfung gibt es keine erforderliche Genauigkeitszunahme oder zugesagte Laufzeit . Um eine Verbesserung nachzuweisen, verwenden Sie einen festen zurückgehaltenen Testsatz und den Evaluierungsleitfaden.
Zeigen Sie die lokalen Artefakte an:
python dashboard_server.py --root ./runs
# Open http://127.0.0.1:8000/
Referenz: Dashboard starten.
Behalten Sie das Dashboard auf der Standard-Loopbackadresse bei, da es keine Authentifizierung aufweist und Prompts und Antworten anzeigen kann. Drücken Sie STRG+C im Dashboardterminal, um sie zu beenden; dadurch wird Ihre Remote-Trainingssitzung nicht beendet.
Bereinigen von Ressourcen
Das Recipe versucht, seine Trainingssitzung zu schließen, wenn die Schleife beendet wird. Auf Bereinigungswarnungen prüfen; Eine gedruckte Session closed Nachricht allein bestätigt nicht, dass die Remoteberechnung freigegeben wurde.
Verwenden Sie die aufgezeichnete Sitzungs-ID und den Beispielleitfaden für die Sitzungsverwaltung , um Ihre Sitzung zu überprüfen. Wenn sie aktiv ist, bewahren Sie die erforderlichen Prüfpunkte auf und laden Sie nur Ihre eigene Sitzung aus.
Bewahren Sie Ihre Konfigurations-, Metrik- und Prüfpunktverweise für die Wiederherstellung auf. Durch das Löschen lokaler Dateien werden keine Remote-Compute-Ressourcen freigegeben. Dieses Rezept erstellt keine Serving-Bereitstellung.
Probieren Sie andere Rezepte aus
Nachdem Sie diese Schnellstartanleitung abgeschlossen haben, probieren Sie andere Rezepte im Repository mit Fine-Tuning-Beispielen aus. Der Leitfaden für interaktives Training enthält Beispiele für überwachte Feinabstimmung, Präferenzoptimierung, Destillation und andere RL-Aufgaben.
Befolgen Sie die Einrichtungs- und Datasetanweisungen der einzelnen Rezepte. Bestätigen Sie den Modellzugriff und ein genehmigtes Budget, bevor Sie eine andere Ausführung starten.