Membuat dan mengelola aset data
BERLAKU UNTUK:Ekstensi ml Azure CLI v2 (saat ini)
Python SDK azure-ai-ml v2 (saat ini)
Artikel ini memperlihatkan cara membuat dan mengelola aset data di Azure Pembelajaran Mesin.
Aset data dapat membantu saat Anda membutuhkan:
- Penerapan versi: Aset data mendukung penerapan versi data.
- Reproduksi: Setelah Anda membuat versi aset data, versi tersebut tidak dapat diubah. Ini tidak dapat dimodifikasi atau dihapus. Oleh karena itu, pekerjaan pelatihan atau alur yang mengonsumsi aset data dapat diperbanyak.
- Auditabilitas: Karena versi aset data tidak dapat diubah, Anda dapat melacak versi aset, yang memperbarui versi, dan kapan pembaruan versi terjadi.
- Silsilah data: Untuk aset data tertentu, Anda dapat melihat pekerjaan atau alur mana yang menggunakan data.
- Kemudahan penggunaan: Aset data pembelajaran mesin Azure menyerupan bookmark browser web (favorit). Alih-alih mengingat jalur penyimpanan panjang (URI) yang mereferensikan data yang sering digunakan di Azure Storage, Anda dapat membuat versi aset data lalu mengakses versi aset tersebut dengan nama yang mudah diingat (misalnya:
azureml:<my_data_asset_name>:<version>
).
Tip
Untuk mengakses data Anda dalam sesi interaktif (misalnya, notebook) atau pekerjaan, Anda tidak diharuskan untuk terlebih dahulu membuat aset data. Anda dapat menggunakan URI Datastore untuk mengakses data. URI datastore menawarkan cara sederhana untuk mengakses data untuk mulai menggunakan pembelajaran mesin Azure.
Prasyarat
Untuk membuat dan bekerja dengan aset data, Anda perlu:
Langganan Azure. Jika Anda tidak memilikinya, buat akun gratis sebelum memulai. Coba versi gratis atau berbayar Azure Machine Learning.
Ruang kerja Azure Machine Learning. Membuat sumber daya ruang kerja.
Membuat aset data
Saat membuat aset data, Anda perlu mengatur jenis aset data. Azure Pembelajaran Mesin mendukung tiga jenis aset data:
Jenis | API | Skenario Kanonis |
---|---|---|
File Mereferensikan satu file |
uri_file |
Baca satu file di Azure Storage (file dapat memiliki format apa pun). |
Folder Mereferensikan folder |
uri_folder |
Baca folder file parket/CSV ke Pandas/Spark. Baca data yang tidak terstruktur (gambar, teks, audio, dll.) yang terletak di folder. |
Table Mereferensikan tabel data |
mltable |
Anda memiliki skema kompleks yang sering mengalami perubahan, atau Anda memerlukan subset data tabular besar. AutoML dengan Tabel. Baca data yang tidak terstruktur (gambar, teks, audio, dll.) data yang tersebar di beberapa lokasi penyimpanan. |
Catatan
Hanya gunakan baris baru yang disematkan dalam file csv jika Anda mendaftarkan data sebagai MLTable. Baris baru yang disematkan dalam file csv dapat menyebabkan nilai bidang yang tidak selaras saat Anda membaca data. MLTable memiliki parameter yang support_multi_line
tersedia dalam read_delimited
transformasi, untuk menafsirkan pemisah baris yang dikutip sebagai satu rekaman.
Saat Anda menggunakan aset data dalam pekerjaan Azure Pembelajaran Mesin, Anda dapat memasang atau mengunduh aset ke simpul komputasi. Untuk informasi lebih lanjut, silakan kunjungi Mode.
Selain itu, Anda harus menentukan path
parameter yang menunjuk ke lokasi aset data. Jalur yang didukung meliputi:
Lokasi | Contoh |
---|---|
Jalur pada komputer lokal Anda | ./home/username/data/my_data |
Jalur pada Datastore | azureml://datastores/<data_store_name>/paths/<path> |
Jalur pada server http milik publik | https://raw.githubusercontent.com/pandas-dev/pandas/main/doc/data/titanic.csv |
Jalur pada Azure Storage | (Blob) wasbs://<containername>@<accountname>.blob.core.windows.net/<path_to_data>/ (ADLS gen2) abfss://<file_system>@<account_name>.dfs.core.windows.net/<path> (ADLS gen1) adl://<accountname>.azuredatalakestore.net/<path_to_data>/ |
Catatan
Saat Anda membuat aset data dari jalur lokal, aset tersebut akan secara otomatis diunggah ke datastore cloud Pembelajaran Mesin Azure default.
Membuat aset data: Jenis file
Aset data dari jenis File (uri_file
) menunjuk ke satu file pada penyimpanan (misalnya, file CSV). Anda dapat membuat aset data yang ditik file dengan:
Buat file YAML, dan salin dan tempel cuplikan kode berikut. Pastikan untuk memperbarui <>
tempat penampung dengan
- nama aset data Anda
- versi
- description
- jalur ke satu file pada lokasi yang didukung
$schema: https://azuremlschemas.azureedge.net/latest/data.schema.json
# Supported paths include:
# local: './<path>/<file>' (this will be automatically uploaded to cloud storage)
# blob: 'wasbs://<container_name>@<account_name>.blob.core.windows.net/<path>/<file>'
# ADLS gen2: 'abfss://<file_system>@<account_name>.dfs.core.windows.net/<path>/<file>'
# Datastore: 'azureml://datastores/<data_store_name>/paths/<path>/<file>'
type: uri_file
name: <NAME OF DATA ASSET>
version: <VERSION>
description: <DESCRIPTION>
path: <SUPPORTED PATH>
Selanjutnya, jalankan perintah berikut di CLI. Pastikan untuk memperbarui <filename>
tempat penampung ke nama file YAML.
az ml data create -f <filename>.yml
Membuat aset data: Jenis folder
Aset data jenis Folder (uri_folder
) menunjuk ke folder dalam sumber daya penyimpanan - misalnya, folder yang berisi beberapa subfolder gambar. Anda dapat membuat aset data yang dititik folder dengan:
Salin dan tempel kode berikut ke dalam file YAML baru. Pastikan untuk memperbarui <>
tempat penampung dengan
- Nama aset data Anda
- Versi
- Deskripsi
- Jalur ke folder pada lokasi yang didukung
$schema: https://azuremlschemas.azureedge.net/latest/data.schema.json
# Supported paths include:
# local: './<path>/<folder>' (this will be automatically uploaded to cloud storage)
# blob: 'wasbs://<container_name>@<account_name>.blob.core.windows.net/<path>/<folder>'
# ADLS gen2: 'abfss://<file_system>@<account_name>.dfs.core.windows.net/<path>/<folder>'
# Datastore: 'azureml://datastores/<data_store_name>/paths/<path>/<folder>'
type: uri_folder
name: <NAME OF DATA ASSET>
version: <VERSION>
description: <DESCRIPTION>
path: <SUPPORTED PATH>
Selanjutnya, jalankan perintah berikut di CLI. Pastikan untuk memperbarui <filename>
tempat penampung ke nama file YAML.
az ml data create -f <filename>.yml
Membuat aset data: Jenis tabel
Azure Pembelajaran Mesin Tables (MLTable
) memiliki fungsionalitas yang kaya, dijelaskan secara lebih rinci di Bekerja dengan tabel di Azure Pembelajaran Mesin. Alih-alih mengulangi dokumentasi tersebut di sini, baca contoh ini yang menjelaskan cara membuat aset data berjenis Tabel, dengan data Titanic yang terletak di akun Azure Blob Storage yang tersedia untuk umum.
Pertama, buat direktori baru yang disebut data, dan buat file bernama MLTable:
mkdir data
touch MLTable
Selanjutnya, salin dan tempel YAML berikut ke dalam file MLTable yang Anda buat di langkah sebelumnya:
Perhatian
Jangan ganti nama file menjadi MLTable
MLTable.yaml
atau MLTable.yml
. Pembelajaran mesin Azure mengharapkan MLTable
file.
paths:
- file: wasbs://data@azuremlexampledata.blob.core.windows.net/titanic.csv
transformations:
- read_delimited:
delimiter: ','
empty_as_string: false
encoding: utf8
header: all_files_same_headers
include_path_column: false
infer_column_types: true
partition_size: 20971520
path_column: Path
support_multi_line: false
- filter: col('Age') > 0
- drop_columns:
- PassengerId
- convert_column_types:
- column_type:
boolean:
false_values:
- 'False'
- 'false'
- '0'
mismatch_as: error
true_values:
- 'True'
- 'true'
- '1'
columns: Survived
type: mltable
Jalankan perintah berikut di CLI. Pastikan untuk memperbarui <>
tempat penampung dengan nama aset data dan nilai versi.
az ml data create --path ./data --name <DATA ASSET NAME> --version <VERSION> --type mltable
Penting
harus path
berupa folder yang berisi file yang valid MLTable
.
Membuat aset data dari output pekerjaan
Anda dapat membuat aset data dari pekerjaan Azure Pembelajaran Mesin. Untuk melakukan ini, atur name
parameter dalam output. Dalam contoh ini, Anda mengirimkan pekerjaan yang menyalin data dari penyimpanan blob publik ke Azure Pembelajaran Mesin Datastore default Anda dan membuat aset data yang disebut job_output_titanic_asset
.
Buat file YAML spesifikasi pekerjaan (<file-name>.yml
):
$schema: https://azuremlschemas.azureedge.net/latest/commandJob.schema.json
# path: Set the URI path for the data. Supported paths include
# local: `./<path>
# Blob: wasbs://<container_name>@<account_name>.blob.core.windows.net/<path>
# ADLS: abfss://<file_system>@<account_name>.dfs.core.windows.net/<path>
# Datastore: azureml://datastores/<data_store_name>/paths/<path>
# Data Asset: azureml:<my_data>:<version>
# type: What type of data are you pointing to?
# uri_file (a specific file)
# uri_folder (a folder)
# mltable (a table)
# mode: Set INPUT mode:
# ro_mount (read-only mount)
# download (download from storage to node)
# mode: Set the OUTPUT mode
# rw_mount (read-write mount)
# upload (upload data from node to storage)
type: command
command: cp ${{inputs.input_data}} ${{outputs.output_data}}
compute: azureml:cpu-cluster
environment: azureml://registries/azureml/environments/sklearn-1.1/versions/4
inputs:
input_data:
mode: ro_mount
path: wasbs://data@azuremlexampledata.blob.core.windows.net/titanic.csv
type: uri_file
outputs:
output_data:
mode: rw_mount
path: azureml://datastores/workspaceblobstore/paths/quickstart-output/titanic.csv
type: uri_file
name: job_output_titanic_asset
Selanjutnya, kirimkan pekerjaan menggunakan CLI:
az ml job create --file <file-name>.yml
Mengelola aset data
Menghapus aset data
Penting
Secara desain, penghapusan aset data tidak didukung.
Jika pembelajaran mesin Azure mengizinkan penghapusan aset data, itu akan memiliki efek buruk dan negatif berikut:
- Pekerjaan produksi yang menggunakan aset data yang kemudian dihapus akan gagal.
- Akan menjadi lebih sulit untuk mereprodusi eksperimen ML.
- Silsilah pekerjaan akan rusak, karena tidak mungkin untuk melihat versi aset data yang dihapus.
- Anda tidak akan dapat melacak dan mengaudit dengan benar, karena versi bisa hilang.
Oleh karena itu, kekekalan aset data memberikan tingkat perlindungan saat bekerja dalam tim yang membuat beban kerja produksi.
Untuk aset data yang dibuat secara keliru - misalnya, dengan nama, jenis, atau jalur yang salah - Azure Pembelajaran Mesin menawarkan solusi untuk menangani situasi tanpa konsekuensi negatif dari penghapusan:
Saya ingin menghapus aset data ini karena... | Solusi |
---|---|
Nama salah | Mengarsipkan aset data |
Tim tidak lagi menggunakan aset data | Mengarsipkan aset data |
Ini mengacaukan daftar aset data | Mengarsipkan aset data |
Jalur salah | Buat versi baru aset data (nama yang sama) dengan jalur yang benar. Untuk informasi selengkapnya, kunjungi Membuat aset data. |
Ini memiliki jenis yang salah | Saat ini, Azure Pembelajaran Mesin tidak mengizinkan pembuatan versi baru dengan jenis yang berbeda dibandingkan dengan versi awal. (1) Mengarsipkan aset data (2) Buat aset data baru dengan nama yang berbeda dengan jenis yang benar. |
Mengarsipkan aset data
Pengarsipan aset data menyembunyikannya secara default dari kedua kueri daftar (misalnya, di CLI az ml data list
) dan daftar aset data di Antarmuka Pengguna Studio. Anda masih dapat terus mereferensikan dan menggunakan aset data yang diarsipkan di alur kerja Anda. Anda dapat mengarsipkan:
- Semua versi aset data dengan nama tertentu
or
- Versi aset data tertentu
Mengarsipkan semua versi aset data
Untuk mengarsipkan semua versi aset data dengan nama tertentu, gunakan:
Jalankan perintah berikut. Pastikan untuk memperbarui <>
tempat penampung dengan informasi Anda.
az ml data archive --name <NAME OF DATA ASSET>
Mengarsipkan versi aset data tertentu
Untuk mengarsipkan versi aset data tertentu, gunakan:
Jalankan perintah berikut. Pastikan untuk memperbarui <>
tempat penampung dengan nama aset dan versi data Anda.
az ml data archive --name <NAME OF DATA ASSET> --version <VERSION TO ARCHIVE>
Memulihkan aset data yang diarsipkan
Anda dapat memulihkan aset data yang diarsipkan. Jika semua versi aset data diarsipkan, Anda tidak dapat memulihkan versi aset data individual - Anda harus memulihkan semua versi.
Memulihkan semua versi aset data
Untuk memulihkan semua versi aset data dengan nama tertentu, gunakan:
Jalankan perintah berikut. Pastikan untuk memperbarui <>
tempat penampung dengan nama aset data Anda.
az ml data restore --name <NAME OF DATA ASSET>
Memulihkan versi aset data tertentu
Penting
Jika semua versi aset data diarsipkan, Anda tidak dapat memulihkan versi individual aset data - Anda harus memulihkan semua versi.
Untuk memulihkan versi aset data tertentu, gunakan:
Jalankan perintah berikut. Pastikan untuk memperbarui <>
tempat penampung dengan nama aset dan versi data Anda.
az ml data restore --name <NAME OF DATA ASSET> --version <VERSION TO ARCHIVE>
Silsilah data
Silsilah data secara luas dipahami sebagai siklus hidup yang mencakup asal data, dan tempat data bergerak dari waktu ke waktu di seluruh penyimpanan. Berbagai jenis skenario yang terlihat mundur menggunakannya, misalnya
- Pemecahan Masalah
- Melacak akar penyebab dalam alur ML
- Awakutu
Analisis kualitas data, kepatuhan, dan skenario "bagaimana jika" juga menggunakan silsilah data. Silsilah diwakili secara visual untuk menampilkan data yang berpindah dari sumber ke tujuan, dan juga mencakup transformasi data. Mengingat kompleksitas sebagian besar lingkungan data perusahaan, tampilan ini dapat menjadi sulit dipahami tanpa konsolidasi atau masking titik data periferal.
Dalam Azure Pembelajaran Mesin Pipeline, aset data memperlihatkan asal data dan bagaimana data diproses, misalnya:
Anda dapat melihat pekerjaan yang menggunakan aset data di UI Studio. Pertama, pilih Data dari menu sebelah kiri, lalu pilih nama aset data. Perhatikan pekerjaan yang menggunakan aset data:
Tampilan pekerjaan dalam Aset data memudahkan untuk menemukan kegagalan pekerjaan dan melakukan analisis akar penyebab dalam alur dan penelusuran kesalahan ML Anda.
Penandaan aset data
Aset data mendukung pemberian tag, yang merupakan metadata tambahan yang diterapkan ke aset data sebagai pasangan kunci-nilai. Pemberian tag data memberikan banyak manfaat:
- Deskripsi kualitas data. Misalnya, jika organisasi Anda menggunakan arsitektur medallion lakehouse, Anda dapat menandai aset dengan
medallion:bronze
(mentah),medallion:silver
(divalidasi) danmedallion:gold
(diperkaya). - Pencarian dan pemfilteran data yang efisien, untuk membantu penemuan data.
- Identifikasi data pribadi sensitif, untuk mengelola dan mengatur akses data dengan benar. Contohnya,
sensitivity:PII
/sensitivity:nonPII
. - Penentuan apakah data disetujui oleh audit AI (RAI) yang bertanggung jawab atau tidak. Contohnya,
RAI_audit:approved
/RAI_audit:todo
.
Anda dapat menambahkan tag ke aset data sebagai bagian dari alur pembuatannya, atau Anda dapat menambahkan tag ke aset data yang ada. Bagian ini memperlihatkan keduanya:
Menambahkan tag sebagai bagian dari alur pembuatan aset data
Buat file YAML, dan salin dan tempel kode berikut ke dalam file YAML tersebut. Pastikan untuk memperbarui <>
tempat penampung dengan
- nama aset data Anda
- versi
- description
- tag (pasangan kunci-nilai)
- jalur ke satu file pada lokasi yang didukung
$schema: https://azuremlschemas.azureedge.net/latest/data.schema.json
# Supported paths include:
# local: './<path>/<file>' (this will be automatically uploaded to cloud storage)
# blob: 'wasbs://<container_name>@<account_name>.blob.core.windows.net/<path>/<file>'
# ADLS gen2: 'abfss://<file_system>@<account_name>.dfs.core.windows.net/<path>/<file>'
# Datastore: 'azureml://datastores/<data_store_name>/paths/<path>/<file>'
# Data asset types, use one of:
# uri_file, uri_folder, mltable
type: uri_file
name: <NAME OF DATA ASSET>
version: <VERSION>
description: <DESCRIPTION>
tags:
<KEY1>: <VALUE>
<KEY2>: <VALUE>
path: <SUPPORTED PATH>
Jalankan perintah berikut di CLI. Pastikan untuk memperbarui <filename>
tempat penampung ke nama file YAML.
az ml data create -f <filename>.yml
Menambahkan tag ke aset data yang sudah ada
Jalankan perintah berikut di Azure CLI. Pastikan untuk memperbarui <>
tempat penampung dengan
- Nama aset data Anda
- Versi
- Pasangan kunci-nilai untuk tag
az ml data update --name <DATA ASSET NAME> --version <VERSION> --set tags.<KEY>=<VALUE>
Praktik terbaik penerapan versi
Biasanya, proses ETL Anda mengatur struktur folder Anda di penyimpanan Azure berdasarkan waktu, misalnya:
/
└── 📁 mydata
├── 📁 year=2022
│ ├── 📁 month=11
│ │ └── 📄 file1
│ │ └── 📄 file2
│ └── 📁 month=12
│ └── 📄 file1
│ │ └── 📄 file2
└── 📁 year=2023
└── 📁 month=1
└── 📄 file1
│ │ └── 📄 file2
Kombinasi folder terstruktur waktu/versi dan Azure Pembelajaran Mesin Tables (MLTable
) memungkinkan Anda membuat himpunan data versi. Contoh hipotetis menunjukkan cara mencapai data versi dengan Azure Pembelajaran Mesin Tables. Misalkan Anda memiliki proses yang mengunggah gambar kamera ke penyimpanan Azure Blob setiap minggu, dalam struktur ini:
/myimages
└── 📁 year=2022
├── 📁 week52
│ ├── 📁 camera1
│ │ └── 🖼️ file1.jpeg
│ │ └── 🖼️ file2.jpeg
│ └── 📁 camera2
│ └── 🖼️ file1.jpeg
│ │ └── 🖼️ file2.jpeg
└── 📁 year=2023
├── 📁 week1
│ ├── 📁 camera1
│ │ └── 🖼️ file1.jpeg
│ │ └── 🖼️ file2.jpeg
│ └── 📁 camera2
│ └── 🖼️ file1.jpeg
│ │ └── 🖼️ file2.jpeg
Catatan
Meskipun kami menunjukkan cara membuat versi data gambar (jpeg
), pendekatan yang sama berfungsi untuk jenis file apa pun (misalnya, Parquet, CSV).
Dengan Azure Pembelajaran Mesin Tables (mltable
), buat Tabel jalur yang menyertakan data hingga akhir minggu pertama pada tahun 2023. Kemudian buat aset data:
import mltable
from mltable import MLTableHeaders, MLTableFileEncoding, DataType
from azure.ai.ml import MLClient
from azure.ai.ml.entities import Data
from azure.ai.ml.constants import AssetTypes
from azure.identity import DefaultAzureCredential
# The ** in the pattern below will glob all sub-folders (camera1, ..., camera2)
paths = [
{
"pattern": "abfss://<file_system>@<account_name>.dfs.core.windows.net/myimages/year=2022/week=52/**/*.jpeg"
},
{
"pattern": "abfss://<file_system>@<account_name>.dfs.core.windows.net/myimages/year=2023/week=1/**/*.jpeg"
},
]
tbl = mltable.from_paths(paths)
tbl.save("./myimages")
# Connect to the AzureML workspace
subscription_id = "<SUBSCRIPTION_ID>"
resource_group = "<RESOURCE_GROUP>"
workspace = "<AML_WORKSPACE_NAME>"
ml_client = MLClient(
DefaultAzureCredential(), subscription_id, resource_group, workspace
)
# Define the Data asset object
my_data = Data(
path=mltable_folder,
type=AssetTypes.MLTABLE,
description="My images. Version includes data through to 2023-Jan-08.",
name="myimages",
version="20230108",
)
# Create the data asset in the workspace
ml_client.data.create_or_update(my_data)
Pada akhir minggu berikutnya, ETL Anda memperbarui data untuk menyertakan lebih banyak data:
/myimages
└── 📁 year=2022
├── 📁 week52
│ ├── 📁 camera1
│ │ └── 🖼️ file1.jpeg
│ │ └── 🖼️ file2.jpeg
│ └── 📁 camera2
│ │ └── 🖼️ file1.jpeg
│ │ └── 🖼️ file2.jpeg
└── 📁 year=2023
├── 📁 week1
│ ├── 📁 camera1
│ │ └── 🖼️ file1.jpeg
│ │ └── 🖼️ file2.jpeg
│ └── 📁 camera2
│ │ └── 🖼️ file1.jpeg
│ │ └── 🖼️ file2.jpeg
├── 📁 week2
│ ├── 📁 camera1
│ │ └── 🖼️ file1.jpeg
│ │ └── 🖼️ file2.jpeg
│ └── 📁 camera2
│ │ └── 🖼️ file1.jpeg
│ │ └── 🖼️ file2.jpeg
Versi pertama (20230108
) terus hanya memasang/mengunduh file dari year=2022/week=52
dan year=2023/week=1
karena jalur dideklarasikan dalam MLTable
file. Ini memastikan reproduksi untuk eksperimen Anda. Untuk membuat versi baru aset data yang menyertakan year=2023/week2
, gunakan:
import mltable
from mltable import MLTableHeaders, MLTableFileEncoding, DataType
from azure.ai.ml import MLClient
from azure.ai.ml.entities import Data
from azure.ai.ml.constants import AssetTypes
from azure.identity import DefaultAzureCredential
# The ** in the pattern below will glob all sub-folders (camera1, ..., camera2)
paths = [
{
"pattern": "abfss://<file_system>@<account_name>.dfs.core.windows.net/myimages/year=2022/week=52/**/*.jpeg"
},
{
"pattern": "abfss://<file_system>@<account_name>.dfs.core.windows.net/myimages/year=2023/week=1/**/*.jpeg"
},
{
"pattern": "abfss://<file_system>@<account_name>.dfs.core.windows.net/myimages/year=2023/week=2/**/*.jpeg"
},
]
# Save to an MLTable file on local storage
tbl = mltable.from_paths(paths)
tbl.save("./myimages")
# Next, you create a data asset - the MLTable file will automatically be uploaded
# Connect to the AzureML workspace
subscription_id = "<SUBSCRIPTION_ID>"
resource_group = "<RESOURCE_GROUP>"
workspace = "<AML_WORKSPACE_NAME>"
ml_client = MLClient(
DefaultAzureCredential(), subscription_id, resource_group, workspace
)
# Define the Data asset object
my_data = Data(
path=mltable_folder,
type=AssetTypes.MLTABLE,
description="My images. Version includes data through to 2023-Jan-15.",
name="myimages",
version="20230115", # update version to the date
)
# Create the data asset in the workspace
ml_client.data.create_or_update(my_data)
Anda sekarang memiliki dua versi data, di mana nama versi sesuai dengan tanggal gambar diunggah ke penyimpanan:
- 20230108: Gambar hingga 2023-Jan-08.
- 20230115: Gambar hingga 2023-Jan-15.
Dalam kedua kasus, MLTable membuat tabel jalur yang hanya menyertakan gambar hingga tanggal tersebut.
Dalam pekerjaan Azure Pembelajaran Mesin Anda dapat memasang atau mengunduh jalur tersebut di MLTable versi ke target komputasi eval_download
Anda menggunakan mode atau eval_mount
:
from azure.ai.ml import MLClient, command, Input
from azure.ai.ml.entities import Environment
from azure.identity import DefaultAzureCredential
from azure.ai.ml.constants import InputOutputModes
# connect to the AzureML workspace
ml_client = MLClient.from_config(
DefaultAzureCredential()
)
# Get the 20230115 version of the data
data_asset = ml_client.data.get(name="myimages", version="20230115")
input = {
"images": Input(type="mltable",
path=data_asset.id,
mode=InputOutputModes.EVAL_MOUNT
)
}
cmd = """
ls ${{inputs.images}}/**
"""
job = command(
command=cmd,
inputs=input,
compute="cpu-cluster",
environment="azureml://registries/azureml/environments/sklearn-1.1/versions/4"
)
ml_client.jobs.create_or_update(job)
Catatan
eval_mount
Mode dan eval_download
unik untuk MLTable. Dalam hal ini, kemampuan runtime data AzureML mengevaluasi file dan memasang jalur pada target komputasi MLTable
.