Skip to main content

Configuration files

The accelerator has one input file and several generated files. This is simpler than ALZ, which has separate bootstrap, platform and library files.

Inputs file

inputs.yaml (or inputs.json) is the only file you write. It is validated against schema/inputs.schema.json before anything is generated.

  • Create one for a scenario with New-MLOpsInputFile -Scenario <name> -Path inputs.yaml.
  • Start from inputs.example.yaml, which lists every input with comments.
  • All inputs are documented in Options; the scenario list is in Scenarios.
YAML or JSON

If you cannot install the powershell-yaml module, use a .json file with the same keys. Files ending in .json are read as JSON, anything else as YAML. Finish your edits in YAML before you convert.

Generated files

You do not edit these during bootstrap. Afterwards they belong to your repository.

PathWhat it isEdit it?
bootstrap/Terraform that creates the repository, environments, identity, state storage and GitHub Actions variables. Always Terraform.No. Re-run instead
infra/Terraform or Bicep for the workload, with one envs/<env> file per environmentYes, to tune sizes, tags and settings
infra/envs/<env>.tfvars or .bicepparamPer-environment values, such as policy_mode and budgetsYes
.github/workflows/ or azure-pipelines/CI/CD for deploy, train and promoteYes
src/ and the workload filesThe ML pipeline and sample codeYes. This is your code
.mlops-v3/generation.jsonRecords the inputs and module version used to generate the projectNo
.mlops-v3/versions.lock.jsonThe tool and module versions usedNo

Bootstrap also feeds shared values (subscription, location, project name) into the environment files, so you only enter them once.

Upgrading

Deploy-MLOpsAccelerator -Upgrade regenerates into an existing project (marked by .mlops-v3/) and overwrites files. Commit first and review the diff so that you keep your own edits. See Phase 3 - Run.

What is not included

ALZ’s separate platform file and lib folder (management groups and policy libraries) have no equivalent here. Policy is limited to built-in guardrails, and management groups are out of scope.