Skip to content

Training extension: support Foundry storage connections and SDK-compatible assets #9569

Description

Problem

The azure.ai.training extension does not have full parity with the Microsoft Foundry Python SDK for command-job storage and asset references.

Local code and input folders are uploaded through the project's default storage. In projects where that default datastore is unavailable or unresolved, command jobs can fail during input preparation before compute starts. The Python SDK avoids this by allowing callers to select a Foundry storage connection for folder uploads.

The extension also needs to preserve SDK-compatible output asset metadata and registered azureai:// dataset references.

A related edge case occurs with content-based upload deduplication: if identical content was previously uploaded through default storage, a later submission requesting a BYOS connection can reuse the earlier dataset version and never request an upload location from the selected connection.

Proposed behavior

  • Accept storage_connection_name in command-job YAML.
  • Add --storage-connection-name to azd ai training job submit, with the CLI value taking precedence.
  • Forward connectionName to the Foundry startPendingUpload request.
  • Include the effective storage connection in local-upload deduplication so datasets are reused only within the same connection.
  • Preserve azureai:// code and input references without treating them as local paths.
  • Preserve output asset_name and optional asset_version in the submitted job payload.
  • Add unit tests and user documentation for these behaviors.

Expected result

Users can submit the same command jobs as the Python SDK, including BYOS-backed local uploads, registered Foundry dataset references, and named output assets, without falling back to an unavailable default datastore.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or improvementext-trainingazure.ai.training extension

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions