Les commandes et le code restent en anglais dans toutes les langues. Remplacez les espaces réservés en majuscules par les valeurs de votre compte et de votre tâche payante ; ne collez pas de vraies clés dans des carnets ou des journaux partagés.
Élaborer une recette d’entraînement complète
- Tâche Objectif linguistique ou métier
- Entrées Entraînement, validation et test réservé
- Environnement Calcul et stockage compatibles
- Résultats Critères acceptés et sortie valide
Tâche: Objectif linguistique ou métier. Entrées: Entraînement, validation et test réservé. Environnement: Calcul et stockage compatibles. Résultats: Critères acceptés et sortie valide
Entraîner un modèle indépendant pour l’allemand
Commencez par la configuration complète du mode Automatique du chapitre sur la configuration. Créez un répertoire de projet contenant votre modèle élève compatible, les données d’entraînement examinées, des jeux de validation et de test final indépendants, ainsi que la grille d’évaluation de l’allemand. Choisissez un modèle de référence inclus dans votre offre fournisseur. Le SDK devrait proposer des prérequis et des thèmes, établir une référence initiale et apporter des améliorations dans les limites des budgets approuvés.
- Le JSON ci-dessous illustre le format des données en anglais ; insérez votre texte allemand réel et examiné dans les fichiers de données, à raison d’un objet par ligne.
- Utilisez la configuration complète du mode Automatique comme fichier de projet exécutable, et non un extrait de recette.
- Mesurez séparément la compréhension, la rédaction, la traduction et le raisonnement. Rien ne garantit qu’un petit modèle élève égalera son enseignant pour chaque tâche.
{"text":"Customer: My invoice total is incorrect. Category: billing"}
{"text":"Customer: I cannot sign in. Category: account_access"}
{"text":"Customer: The application closes when I upload a file. Category: technical_issue"}
# Full Automatic German-language workflow.
# 1. Put a compatible local model in german-project/models/student/.
# 2. Save the complete project configuration as german-project/training.json.
# 3. Add independent train/validation/test files and the reviewed german rubric.
# 4. Replace provider/reference placeholders using your included model catalogue.
fpai-training doctor --config ./german-project/training.json
fpai-training plan --config ./german-project/training.json --dry-run
# The plan must break the objective into prerequisites and measurable topics.
fpai-training run --config ./german-project/training.json
fpai-training evaluate --run ./german-project/runs/german-001 --split test
fpai-training export --run ./german-project/runs/german-001 --format safetensors
# Evaluate comprehension, writing, translation and reasoning separately.
# A passed classifier does not prove all German-language capabilities.
Adapter le projet à une tâche métier
Les exemples JSON suivants sont des extraits de configuration, pas des fichiers de projet complets. Copiez la configuration complète du mode Automatique ou Avancé, remplacez les sections indiquées par l’extrait, conservez l’identité, le modèle, l’enseignant, l’environnement et les budgets limités, puis validez le fichier entier. La classification et la traduction nécessitent des thèmes, des données et des critères d’acceptation différents.
- Pour la classification de demandes d’assistance, indiquez précision et rappel par classe, F1 macro, équilibre des classes et cas ambigus.
- Pour la traduction, évaluez le sens, la terminologie, les noms, les nombres et le ton avec des exemples bilingues indépendants.
- Lorsque teacher_sharing vaut none, les données client restent locales. Si l’objectif est impossible à atteindre sans un partage interdit, arrêtez-vous et expliquez-le au lieu de téléverser les données.
{
"schema_version": "1.0", "mode": "automatic",
"objective": "Classify support messages into billing, account_access or technical_issue.",
"model": {"path": "./models/student", "adapter": "transformers-causal-lm", "revision": null},
"teacher": {"provider": "openai", "reference_model_id": 123},
"data": {"sources": ["./data/train.jsonl"], "teacher_sharing": "none", "validation_path": "./data/validation.jsonl", "test_path": "./data/test.jsonl", "deduplicate": true, "seed": 42},
"runtime": {"target": "customer_datacenter", "devices": "auto", "distributed": {"backend": "none", "nodes": 1}},
"training": {"method": "auto"},
"curriculum": {"topics": ["intent", "ambiguous_requests", "class_balance"], "max_improvement_cycles": 3, "stop_on_regression": true},
"budgets": {"max_training_minutes": 120, "max_teacher_requests": 100, "max_storage_gib": 20},
"checkpoints": {"every_steps": 100, "keep_last": 3, "resume_validation": "strict"},
"evaluation": {"rubric": "./rubric.json", "baseline_required": true},
"output": {"directory": "./runs/support-001", "format": "adapters"}
}
{
"objective": "Translate English support replies into German while preserving names, numbers and meaning.",
"curriculum": {"topics": ["terminology", "meaning", "names_and_numbers", "tone"], "max_improvement_cycles": 3, "stop_on_regression": true},
"evaluation": {"rubric": "./rubrics/translation.json", "baseline_required": true},
"data": {"sources": ["./data/translation-train.jsonl"], "validation_path": "./data/translation-validation.jsonl", "test_path": "./data/translation-test.jsonl", "teacher_sharing": "approved_only"},
"output": {"directory": "./runs/translation-001", "format": "safetensors"}
}
{"prompt":"My invoice total is wrong. Which category applies?","target":"billing","criterion":"support_category"}
{"prompt":"I cannot sign in. Which category applies?","target":"account_access","criterion":"support_category"}
{
"schema_version": "1.0",
"name": "support-category-evaluation",
"scale": {"minimum": 0, "maximum": 1},
"criteria": [
{"id": "support_category", "description": "Match the expected category.", "metric": "macro_f1", "minimum_score": 0.85}
],
"regression": {"maximum_score_drop": 0.02},
"final_test": {"path": "./data/test.jsonl", "allow_training_use": false}
}
Choisir la bonne infrastructure et livrer en toute sécurité
Ces exemples d’environnement sont également des extraits destinés à une configuration complète et examinée. FusionPointAI Hosting, un centre de données client et un environnement Colab compatible fournissent des ressources de calcul ; sélectionner un nom n’alloue pas de GPU, n’achète pas de crédits de notebook et ne rend pas un autre environnement compatible. Le SDK charge et entraîne le modèle élève dans cet environnement. Enregistrez les sorties avant la fin d’un notebook éphémère.
- Exemple hébergé : utilisez l’environnement de calcul sous contrat, son stockage approuvé et les droits d’accès du compte ; l’hébergement peut constituer un élément commercial distinct.
- Exemple Colab : stockez la clé API dans les secrets du notebook, vérifiez le GPU et le stockage disponibles, puis copiez les points de contrôle valides vers un stockage durable approuvé avant la fin de la session.
- Exemple distribué : utilisez un coordinateur autorisé et des communications authentifiées entre les nœuds, avec des environnements épinglés identiques et des valeurs de rendez-vous et de rang convenues. Le lanceur ne doit gérer que les processus de ce projet.
{
"runtime": {"target": "fusionpointai_hosting", "devices": "auto", "distributed": {"backend": "none", "nodes": 1}},
"budgets": {"max_training_minutes": 60, "max_teacher_requests": 500, "max_storage_gib": 20},
"output": {"directory": "./runs/hosted-001", "format": "safetensors"}
}
{
"runtime": {"target": "colab", "devices": [0], "distributed": {"backend": "none", "nodes": 1}},
"checkpoints": {"every_steps": 50, "keep_last": 2, "resume_validation": "strict"},
"budgets": {"max_training_minutes": 30, "max_teacher_requests": 100, "max_storage_gib": 10},
"output": {"directory": "./runs/colab-001", "format": "adapters"}
}
{
"runtime": {"target": "customer_datacenter", "devices": [0, 1], "distributed": {"backend": "ddp", "nodes": 2}},
"checkpoints": {"every_steps": 100, "keep_last": 3, "resume_validation": "strict"},
"output": {"directory": "./runs/distributed-001", "format": "safetensors"}
}
# Export a validated adapter or full model, not teacher weights.
fpai-training evaluate --run ./german-project/runs/support-001 --split test
fpai-training export --run ./german-project/runs/support-001 --format adapters
# Inspect artifact-manifest.json, pinned base/tokenizer and evaluation-report.json.
# Reload the package in a fresh compatible runtime before changing live inference.
# Export does not deploy, allocate hosting, or upload to an external model hub.