ML Experimentation
MicrosoftOfficialPublished by Microsoft
- Skill
- Guidelines
- Data and AI
- CC-BY-4.0
- No issues found
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
This skill provides a structured reference for machine learning experimentation, focusing on reproducibility, environment management, and production readiness. It helps teams establish consistent conventions for repository structure, dataset and model abstractions, and evaluation flows. By grounding ML projects in established engineering playbooks, it ensures that experiments are comparable and that models are assessed against clear criteria before moving to production.
What it does
- Provides conventions for virtual environment management and repository structure.
- Outlines requirements for experiment tracking and reproducibility.
- Defines dataset and model abstractions to ensure consistency.
- Offers a checklist for assessing ML engagement fundamentals.
- Provides a structured readiness review for moving models to production.
- Clarifies ownership boundaries between experimentation, data operations, and other domains.
When to use it
- When setting up infrastructure for a new machine learning project.
- When establishing repository and environment conventions for an ML team.
- When assessing whether a trained model meets the criteria for production deployment.
- When needing to ensure experiments are repeatable and comparable across a team.
- When evaluating the maturity of an ML engagement.
Advantages
- Promotes consistent engineering practices across ML projects.
- Improves reproducibility by standardizing environment and data tracking.
- Provides a clear, structured path for production readiness assessments.
- Helps teams balance rapid research exploration with operational requirements.
- Reduces ambiguity in team roles and project lifecycle stages.
Usage examples
- “How should we structure our ML repository to ensure reproducibility?”
- The agent will provide guidance on folder structures, virtual environment configuration, and the necessity of tracking datasets, parameters, and code versions.
- “Is our model ready for production?”
- The agent will guide you through the ML Model Production Checklist, helping you evaluate readiness domains and make informed decisions based on your specific use case.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/microsoft/ml-experimentation/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip ml-experimentation.zip -d .agents/skills
Documentation by Microsoft
ML Experimentation Reference Pack
Goal
Ground machine learning experimentation in the Microsoft CSE engineering playbook so that environment setup, repository structure, experiment tracking, dataset and model abstractions, evaluation flow, and production-readiness review are applied consistently and attributed accurately.
This pack is machine learning specific. It assumes a model is being trained, tracked, evaluated, or assessed for production. General experiment framing, hypothesis formation, and vetting belong to experiment-design.
Inputs
The ML experimentation setup under discussion: environments, repository layout, tracking framework, or evaluation flow
The model under assessment and its training and evaluation history, when readiness is the question
Existing dataset versioning, parameter tracking, and environment capture practice
The engagement stage, since the production checklist has a lifecycle precondition
Reference index
Read only the reference that matches the active concern.
| Reference | Read this when |
|---|---|
| model-experimentation.md | Standing up virtual environments, repository and notebook structure, experiment tracking and reproducibility, dataset and model abstractions, or evaluation flow |
| ml-checklists.md | Checking ML engagement fundamentals or assessing whether a trained model is ready to move toward production |
| provenance.md | Confirming what is upstream guidance, what is HVE Core derivation or repository convention, and where upstream is silent |
Success criteria
Reproducibility keeps all four elements: dataset names and versions, parameters, code, and environment. Tracking a dataset name without its version is a labelling practice, not reproducibility.
Datasets and evaluation are defined consistently enough that experiments are comparable. A tracking framework alone does not deliver comparability.
Checklist section headings and readiness domains are preserved, and applicability caveats travel with them.
Experiment reproducibility stays distinct from pipeline replayability, which belongs to
dataops, the DataOps skill for tier behavior, pipeline invariants, validation placement, tests, drift, and operational signals.
Constraints
Reproduce only the minimum text necessary for a specific technical point, and paraphrase everything else. Attribute every reference and describe accurately what each reference reproduces.
Preserve checklist section headings as structural identifiers and summarize what each section covers. Do not restore the upstream item lists or reconstruct either checklist locally; link readers to the upstream page for item wording.
Label repository conventions as substitutions rather than upstream recommendations. The
uvenvironment convention is a repository substitution, not a playbook recommendation.Do not convert a checklist into an unconditional gate. Upstream scopes the production checklist to teams that have already trained a model and permits use-case-specific decisions.
Ownership boundaries
| Concern | Owner |
|---|---|
| Experiment framing, hypothesis formation, vetting criteria, and red flags | experiment-design |
| Pipeline mechanics, data tiering, replay semantics, and DS/MLOps test technique | dataops |
| Data validation, drift detection, and their asymmetric remediation | dataops |
| Ethical and Responsible AI review | rai-planner |
| Telemetry naming and data sensitivity classification | telemetry-foundations and privacy-standards |
Stop rules
Stop and route to
experiment-design, the general experiment selection, hypothesis, vetting, scope, and evaluation skill, when the request is about whether an experiment is worth running rather than how to run it.Stop and state the lifecycle precondition when the production checklist is invoked for a model that has not been built or trained.
Stop and state the gap when upstream does not cover the request, such as a universal framework, tool, or metric choice made without project context.
Attribution
This pack declares CC-BY-4.0.
Both references derive from Microsoft CSE Code With Engineering Playbook documentation pages, which are licensed CC BY 4.0. Upstream guidance is summarized rather than reproduced; section headings and tool and file names are carried across as identifiers. The upstream project applies MIT through a separate LICENSE-CODE file to code samples only, which this pack does not reproduce. Each reference cites its own upstream URL, states that changes were made, and describes what it reproduces.
Explanatory framing, the lifecycle caveat, the readiness-domain grouping, the routing table, and the uv substitution are repository-original.
See provenance.md for the consolidated source map and derivation labels.
Files
- ATTRIBUTION.mdAdded by AutoGineer987 B
- LICENSEAdded by AutoGineer16.6 KiB
- SKILL.md6.7 KiB
- references/ml-checklists.md6.2 KiB
- references/model-experimentation.md8.2 KiB
- references/provenance.md6.1 KiB
references/model-experimentation.md
title: Model experimentation conventions description: CSE model-experimentation practice areas covering virtual environments, source and folder structure, experiment tracking, dataset and model abstractions, and model evaluation
Source
Microsoft CSE Code-with-Engineering-Playbook, Model Experimentation, documentation licensed CC BY 4.0. Content below is derived from that page and has been changed: it follows the five practice areas in upstream order, paraphrases the goals, the guidance, and the expected outcomes, and condenses the challenges narrative and the abstraction discussion. The notice recorded in THIRD-PARTY-NOTICES carries the attribution CC BY 4.0 requires. Tool and file names are preserved as identifiers.
Why a semi-structured process
Model experimentation carries uncertainty about both expected results and future operationalization. The upstream response is a semi-structured process that balances engineering and research practice against rapid model and data exploration.
Five stated goals:
| Goal | What it means |
|---|---|
| Performance | Arrive at the solution that performs best. |
| Operationalization | Keep production in view so the result stays feasible to operate. |
| Code quality | Hold code and artifacts to a consistent standard. |
| Reproducibility | Sustain research momentum by making experiments trackable and repeatable. |
| Collaboration | Encourage the team to work together on shared problems. |
The corresponding challenges are worth naming, because they explain the conventions: trial-and-error work resists planning and estimation; teams want to move fast and keep early attempts rough; brainstorming together needs an agreed process; research code that never ships still has to be maintainable; and changing approach can reshape operationalization considerably, for example GPU versus CPU, batch versus online, parallel versus sequential, and the runtime environment.
The five practice areas
Virtual environments
In languages like Python and R, always work inside a virtual environment. Doing so keeps results repeatable, keeps team members aligned, eases the path to a product, and keeps local development behaving like the compute the code will run on. Committed configuration files let anyone rebuild the same environment from source.
Which framework fits depends on how complicated the development environment is and how much friction the tool adds. Upstream names three options: venv, which ships with Python and is the simplest to pick up but does nothing about dependencies; Conda, a widely used manager for packages, dependencies, and environments that spans several stacks, holds several versions of one environment side by side, and draws on its own package repository; and Poetry, which resolves dependencies through pyproject.toml and lock files and pays off in robust, reproducible environments where dependency conflicts are frequent.
HVE Core substitution. This repository uses uv. That is a repository convention, not an upstream recommendation. When advising a team that is still choosing, preserve upstream's selection rationale rather than presenting uv as the playbook answer.
Expected outcomes:
Documentation covering how to create the selected virtual environment and how to install its dependencies.
Environment configuration files committed where applicable, such as
requirements.txt,environment.yml, orpyproject.toml.
Stated benefits: productization, collaboration, reproducibility.
Source control and folder or package structure
An applied ML repository accumulates source code, notebooks, devops scripts, documentation, scientific references, datasets, and more. Settle on a folder layout so those resources stay tidy and findable. Either define a generic structure with folders such as data, src, docs, and notebooks, or take up an established one such as CookieCutter Data Science.
Put the work under source control so the team gains shared history, versioning, code review, traceability, and a backup. Data-science teams place code there as a matter of course; whether other artifacts such as data and scientific literature are stored and versioned the same way is decided per scenario.
Expected outcomes:
One agreed folder structure, pushed to the repository so every contributor works from it.
A
.gitignorefile drawing the line between what syncs with git and what stays local.A stated decision on how notebooks are stored and versioned. Upstream points to
nbstripoutfor removing output from Jupyter notebooks.
Stated benefits: collaboration, reproducibility, code quality.
Experiment tracking
Experiment tracking tools give data scientists and researchers a record of what has already been run, which both explains how the experimentation unfolded and makes an experiment or a model repeatable.
Frameworks vary in the metadata they capture and in how well they support comparison and analysis. Upstream notes that some have to be deployed while others are consumed as SaaS, and names MLflow on Databricks and Azure ML Experimentation as commonly used in ISE.
Expected outcomes:
Choose the experiment tracking framework.
Confirm everyone on the team can reach it.
Write down how it is set up on local environments.
Pin down datasets and evaluation so that every experiment can be compared. Comparison rests on that consistency across datasets and evaluation.
Record everything a rerun needs: dataset names and versions, parameters, code, and environment. Tracking a dataset name alone is a labelling practice, not reproducibility.
Stated benefits: model performance, reproducibility, collaboration, code quality.
Datasets and models abstractions
Wrapping building blocks such as datasets, models, and evaluators behind abstractions lets new logic drop into the experimentation pipeline without disturbing the flow the team agreed on. Object-oriented abstract classes are one mechanism for expressing them; upstream points to scikit-learn's guidance on creating API-compatible estimators and PyTorch's guidance on extending the abstract dataset class.
Expected outcomes:
Each building block exposes a defined API so it can be replaced or extended.
Replacing a building block leaves the original experimentation flow working.
Mock building blocks stand in during unit tests.
Those APIs and mocks are handed to the engineering teams so other modules can integrate against them.
Stated benefits: collaboration, code quality, reproducibility, operationalization, model performance.
Model evaluation
When deciding on evaluation of the model or process, upstream supplies a checklist:
Every stakeholder has signed off on the evaluation logic.
How that logic ties back to business KPIs has been worked through and settled.
The evaluation flow suits the models in hand and the ones still to come, so it presumes no particular prediction structure or method-specific process.
Evaluation code carries unit tests and has been reviewed across the team.
The evaluation flow leaves room for deeper results analysis and error analysis.
Evaluation development outcomes:
Stakeholders agree on the evaluation strategy.
The exploration of candidate evaluation methods and metrics, and the discussion around them, is documented.
The code carrying evaluation logic and its data structures is reviewed and tested.
The documentation on how to apply evaluation is reviewed.
Performance metrics reach the experiment tracker without manual steps.
Stated benefits: model performance, code quality, collaboration, reproducibility.
Related guidance
The model-evaluation points overlap closely with the Evaluation and Metrics section of the ML Fundamentals Checklist. Cite one and cross-reference rather than restating both. See ml-checklists.md.
Unit-testing evaluation code is a testing concern; technique and mocking boundaries live in the dataops skill.
Requirements and compatibility
Written for: GitHub Copilot, Claude Code
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Needs: Claude Code frontmatter
Security
No issues found by our static scan· No issues found
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Published by
- Microsoft
- Publisher
- Microsoft (Official)
- Source
- microsoft/hve-core · .github/skills/data-science-engineering/ml-experimentation · commit f425e94
- Licence
- Creative Commons Attribution 4.0 International (redistribution allowed)
- LICENSE (written by AutoGineer)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by Microsoft or Microsoft.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download ml-experimentation.zip