Skip to content

Python API

submit-aml can be used as a Python library. The main entry point is submit_to_aml:

from submit_aml import submit_to_aml

job = submit_to_aml(
    workspace_name="my-ml-workspace",
    compute_target="gpu-v100x4",
    script_path="train.py",
    script_args=["--epochs", "50", "--lr", "1e-4"],
    num_nodes=2,
    num_gpus=4,
)

The workspace's subscription_id and resource_group are resolved automatically from the config file when a matching profile exists.

submit_to_aml

submit_to_aml(*, aml_environment=None, base_docker_image=get_default('docker_image'), build_docker_context=True, command_prefix=get_default('command_prefix'), compute_target=get_default('compute_target'), conda_env_file=None, datasets_download=None, datasets_mount=None, datasets_output=None, debug=False, dependency_groups=None, description=None, docker_run=None, docker_shared_memory_gb=get_default('docker_shared_memory_gb'), dry_run=False, enable_profiler=False, enable_tensorboard=get_default('enable_tensorboard'), environment_variables=None, executable=get_default('executable'), experiment_name=None, num_gpus=None, num_nodes=get_default('num_nodes'), only_environment=False, optional_dependencies=None, project_dir=None, resource_group=None, run_name=None, services=None, script_args=None, script_path=None, source_dir=None, subscription_id=None, sweep_inputs=None, sweep_max_concurrent_trials=None, sweep_prefix=None, sweep_sampling_algorithm=DEFAULT_SWEEP_ALGORITHM, tags=None, tensorboard_dir=get_default('tensorboard_dir'), wait_for_completion=False, workspace_name=get_default('default_workspace'))