Setting the file. One moment. Full Pipeline · Finetuning · microsoft/azure-skills · Skills Docs
End-to-end fine-tuning on Microsoft Foundry in 9 phases.
31.11
Training Types
- Microsoft Foundry resource with fine-tuning enabled
- Python 3.10+ with
openai and requests
- Azure CLI (
az) authenticated
- A clear task definition: what should the model do differently after fine-tuning?
Answer before touching data or models:
- What task? (e.g., “translate natural language to Python code”)
- What does good output look like? Write 5 examples by hand.
- What does bad output look like? Write 3 anti-examples.
- How will you measure success? Define evaluation dimensions (see
references/grader-design.md).
- Which base model? Pick 1-3 candidates from the supported model list.
- Convert to SFT JSONL format (see
references/dataset-formats.md)
- Split: 80% train, 10% validation, 10% held-out test
- Remove or fix low-quality examples
- Generate using LLM prompts (see
workflows/dataset-creation.md)
- Convert to SFT JSONL with
scripts/convert_dataset.py
- Use existing data as seed, generate synthetic variations
- Merge, deduplicate, and quality-filter
Checkpoint: You should have training.jsonl, validation.jsonl, and test.jsonl (never used for training).
- Deploy base model (or use existing deployment)
- Record scores — this is your “zero” that every fine-tune must beat
See references/training-types.md for the full decision framework.
Most projects start with SFT. Move to RFT/DPO only if SFT isn’t sufficient.
Use scripts/submit_training.py or the API directly. See references/hyperparameters.md for starting HP values.
Foundry CLI alternative (no Python):
- Wait for completion or use
scripts/monitor_training.py
- Analyze training curves with
scripts/check_training.py
- Read
references/training-curves.md to interpret results
- Check for overfitting — consider deploying an earlier checkpoint if detected
- Deploy fine-tuned model (see
references/deployment.md for format/SKU)
- Compare against baseline and previous experiments
- Delete deployment after evaluation
Follow workflows/iterative-training.md:
- Adjust hyperparameters based on training curves
- Try different data subsets or augmentations
- Test different base models
- Track everything in your leaderboard
When the model convincingly beats baseline:
- Deploy with production-appropriate capacity
- Monitor with Application Insights
- Periodically re-evaluate against test set for regression
- Retrain as new data becomes available
workflows/full-pipeline.md