in utils/aml_common.py [0:0]
def get_or_create_data_asset(ml_client, data_name, data_local_dir, update=False):
try:
latest_data_version = max([int(d.version) for d in ml_client.data.list(name=data_name)])
if update:
raise ResourceExistsError('Found Data asset, but will update the Data.')
else:
data_asset = ml_client.data.get(name=data_name, version=latest_data_version)
print(f"Found Data asset: {data_name}. Will not create again")
except (ResourceNotFoundError, ResourceExistsError) as e:
data = Data(
path=data_local_dir,
type=AssetTypes.URI_FOLDER,
description=f"{data_name} for fine tuning",
tags={"FineTuningType": "Instruction", "Language": "En"},
name=data_name
)
data_asset = ml_client.data.create_or_update(data)
print(f"Created Data asset: {data_name}")
return data_asset