Environment Classe
Configure un environnement Python reproductible pour les expériences Machine Learning.
Un environnement définit des packages Python, des variables d’environnement et des paramètres Docker utilisés dans les expériences Machine Learning, y compris dans la préparation des données, la formation et le déploiement sur un service web. Un environnement est managé et versionné dans un Workspace Azure Machine Learning. Vous pouvez mettre à jour un environnement existant et récupérer une version à réutiliser. Les environnements sont exclusifs à l’espace de travail dans lequel ils sont créés et ne peuvent pas être utilisés dans différents espaces de travail.
Pour plus d’informations sur les environnements, consultez Créer et gérer des environnements réutilisables.
Constructeur d’environnement de classe.
- Héritage
-
azureml._base_sdk_common.abstract_run_config_element._AbstractRunConfigElementEnvironment
Constructeur
Environment(name, **kwargs)
Paramètres
Nom | Description |
---|---|
name
Obligatoire
|
Nom de l’environnement. Notes Ne faites pas commencer le nom de votre environnement par « Microsoft » ou « AzureML ». Les préfixes « Microsoft » et « AzureML » sont réservés aux environnements organisés. Pour plus d’informations sur les environnements organisés, consultez Créer et gérer des environnements réutilisables. |
Remarques
Azure Machine Learning fournit des environnements organisés. Ces environnements prédéfinis sont de bons points de départ pour créer vos propres environnements. Les environnements organisés s’appuient sur des images Docker mises en cache, ce qui réduit le coût de préparation de l’exécution. Pour plus d’informations sur les environnements organisés, consultez Créer et gérer des environnements réutilisables.
Il existe plusieurs façons de créer un environnement dans Azure Machine Learning, notamment lorsque vous :
Initialisez un nouvel objet d’environnement.
Utilisez l’une des méthodes de la classe d’environnement : from_conda_specification, from_pip_requirements ou from_existing_conda_environment.
Utilisez la méthode submit de la classe Experiment pour soumettre une exécution d’expérience sans spécifier d’environnement, y compris avec un objet Estimator.
L’exemple suivant montre comment instancier un nouvel environnement.
from azureml.core import Environment
myenv = Environment(name="myenv")
Vous pouvez gérer un environnement en l’inscrivant. Cela vous permet de suivre les versions de l’environnement et de les réutiliser lors des exécutions futures.
myenv.register(workspace=ws)
Pour obtenir d’autres exemples d’utilisation des environnements, consultez le Notebook Jupyter Utilisation des environnements.
Variables
Nom | Description |
---|---|
Environment.databricks
|
La section configure les dépendances de bibliothèque azureml.core.databricks.DatabricksSection. |
docker
|
Cette section configure les paramètres liés à l’image Docker finale créée dans les spécifications de l’environnement et indique s’il faut utiliser des conteneurs Docker pour générer l’environnement. |
inferencing_stack_version
|
Cette section spécifie la version de pile d’inférence ajoutée à l’image. Pour éviter d’ajouter une pile d’inférence, ne définissez pas cette valeur. Valeur valide : « latest ». |
python
|
Cette section spécifie l’environnement et l’interpréteur Python à utiliser sur le calcul cible. |
spark
|
La section configure les paramètres Spark. Elle est utilisée uniquement quand le framework a la valeur PySpark. |
r
|
Cette section spécifie l’environnement R à utiliser sur le calcul cible. |
version
|
Version de l’environnement. |
asset_id
|
ID de la ressource Remplit lorsqu’un environnement est inscrit. |
Méthodes
add_private_pip_wheel |
Charge le fichier wheel pip privé sur le disque dans l’objet blob de stockage Azure attaché à l’espace de travail. Lève une exception si un fichier wheel pip privé portant le même nom existe déjà dans l’objet blob de stockage de l’espace de travail. |
build |
Génère une image Docker pour cet environnement dans le cloud. |
build_local |
Crée l’environnement Docker ou Conda local. |
clone |
Clone l’objet d’environnement. Retourne une nouvelle instance de l’objet d’environnement avec un nouveau nom. |
from_conda_specification |
Crée un objet d’environnement à partir d’un fichier YAML de spécification d’environnement. Pour obtenir un fichier YAML de spécification d’environnement, consultez Gestion des environnements dans le guide de l’utilisateur Conda. |
from_docker_build_context |
Créez un objet d’environnement à partir d’un contexte de build Docker. |
from_docker_image |
Crée un objet d’environnement à partir d’une image Docker de base avec des dépendances Python facultatives. La couche Python est ajoutée à l’environnement si conda_specification ou pip_requirements est spécifié. conda_specification et pip_requirements s’excluent mutuellement. |
from_dockerfile |
Créez un objet d’environnement à partir d’un dockerfile avec des dépendances Python facultatives. La couche Python est ajoutée à l’environnement si conda_specification ou pip_requirements est spécifié. conda_specification et pip_requirements s’excluent mutuellement. |
from_existing_conda_environment |
Crée un objet d’environnement créé à partir d’un environnement Conda existant localement. Pour obtenir la liste des environnements Conda existants, exécutez |
from_pip_requirements |
Crée un objet d’environnement créé à partir d’un fichier de spécifications pip. La dépendance pip désépinglée est ajoutée si pip_version n’est pas spécifié. |
get |
Retourne l’objet d’environnement. Si une étiquette est spécifiée, l’objet précédemment étiqueté avec la valeur est retourné. Vous ne pouvez spécifier qu’un seul paramètre de version ou d’étiquette. Si aucun des deux n’est fourni, la version la plus récente de l’objet d’environnement est retournée. |
get_image_details |
Retourne les détails de l’image. |
label |
Étiquette l’objet d’environnement dans votre espace de travail avec les valeurs spécifiées. |
list |
Retourne un dictionnaire contenant des environnements dans l’espace de travail. |
load_from_directory |
Charge une définition d’environnement à partir des fichiers d’un répertoire. |
register |
Inscrit l’objet d’environnement dans votre espace de travail. |
save_to_directory |
Enregistre une définition d’environnement dans un répertoire dans un format facile à modifier. |
add_private_pip_wheel
Charge le fichier wheel pip privé sur le disque dans l’objet blob de stockage Azure attaché à l’espace de travail.
Lève une exception si un fichier wheel pip privé portant le même nom existe déjà dans l’objet blob de stockage de l’espace de travail.
static add_private_pip_wheel(workspace, file_path, exist_ok=False)
Paramètres
Nom | Description |
---|---|
workspace
Obligatoire
|
Objet d’espace de travail à utiliser pour inscrire le fichier wheel pip privé. |
file_path
Obligatoire
|
Chemin d’accès au fichier wheel pip local sur le disque, y compris l’extension de fichier. |
exist_ok
|
Indique s’il faut lever une exception si le fichier wheel existe déjà. Valeur par défaut: False
|
Retours
Type | Description |
---|---|
Retourne l’URI complet du fichier wheel pip chargé sur le stockage d’objets blob Azure à utiliser dans les dépendances Conda. |
build
Génère une image Docker pour cet environnement dans le cloud.
build(workspace, image_build_compute=None)
Paramètres
Nom | Description |
---|---|
workspace
Obligatoire
|
Espace de travail et instance Azure Container Registry associée dans lequel l’image est stockée. |
image_build_compute
|
Nom du calcul dans lequel la création de l’image aura lieu Valeur par défaut: None
|
Retours
Type | Description |
---|---|
Retourne l’objet des détails de la création de l’image. |
build_local
Crée l’environnement Docker ou Conda local.
build_local(workspace, platform=None, **kwargs)
Paramètres
Nom | Description |
---|---|
workspace
Obligatoire
|
Espace de travail. |
platform
|
Plateforme. Un parmi Linux, Windows ou OSX. La plateforme actuelle est utilisée par défaut. Valeur par défaut: None
|
kwargs
Obligatoire
|
Arguments de mot clé avancés |
Retours
Type | Description |
---|---|
Diffuse la sortie générée par Docker ou Conda en cours sur la console. |
Remarques
Les exemples suivants montrent comment créer un environnement local. Vérifiez que l’espace de travail est instancié en tant qu’objet azureml.core.workspace.Workspace valide
Crée un environnement Conda local
from azureml.core import Environment
myenv = Environment(name="myenv")
registered_env = myenv.register(workspace)
registered_env.build_local(workspace)
Crée un environnement Docker local
from azureml.core import Environment
myenv = Environment(name="myenv")
registered_env = myenv.register(workspace)
registered_env.build_local(workspace, useDocker=True)
Crée l’image Docker localement et l’envoie éventuellement au registre de conteneurs associé à l’espace de travail
from azureml.core import Environment
myenv = Environment(name="myenv")
registered_env = myenv.register(workspace)
registered_env.build_local(workspace, useDocker=True, pushImageToWorkspaceAcr=True)
clone
Clone l’objet d’environnement.
Retourne une nouvelle instance de l’objet d’environnement avec un nouveau nom.
clone(new_name)
Paramètres
Nom | Description |
---|---|
new_name
Obligatoire
|
Nom du nouvel environnement |
Retours
Type | Description |
---|---|
Objet du nouvel environnement |
from_conda_specification
Crée un objet d’environnement à partir d’un fichier YAML de spécification d’environnement.
Pour obtenir un fichier YAML de spécification d’environnement, consultez Gestion des environnements dans le guide de l’utilisateur Conda.
static from_conda_specification(name, file_path)
Paramètres
Nom | Description |
---|---|
name
Obligatoire
|
Nom d'environnement. |
file_path
Obligatoire
|
Chemin d’accès du fichier YAML de spécification d’environnement Conda. |
Retours
Type | Description |
---|---|
Objet d’environnement. |
from_docker_build_context
Créez un objet d’environnement à partir d’un contexte de build Docker.
static from_docker_build_context(name, docker_build_context)
Paramètres
Nom | Description |
---|---|
name
Obligatoire
|
Nom d'environnement. |
docker_build_context
Obligatoire
|
Objet DockerBuildContext. |
Retours
Type | Description |
---|---|
Objet d’environnement. |
from_docker_image
Crée un objet d’environnement à partir d’une image Docker de base avec des dépendances Python facultatives.
La couche Python est ajoutée à l’environnement si conda_specification ou pip_requirements est spécifié. conda_specification et pip_requirements s’excluent mutuellement.
static from_docker_image(name, image, container_registry=None, conda_specification=None, pip_requirements=None)
Paramètres
Nom | Description |
---|---|
name
Obligatoire
|
Nom d'environnement. |
image
Obligatoire
|
Nom complet de l’image. |
conda_specification
|
Fichier de spécifications Conda. Valeur par défaut: None
|
container_registry
|
Détails du référentiel de conteneurs privé. Valeur par défaut: None
|
pip_requirements
|
Fichier de spécifications pip. Valeur par défaut: None
|
Retours
Type | Description |
---|---|
Objet d’environnement. |
Remarques
Si l’image de base provient d’un référentiel privé qui requiert une autorisation et que l’autorisation n’est pas définie au niveau de l’espace de travail AzureML, container_registry est obligatoire
from_dockerfile
Créez un objet d’environnement à partir d’un dockerfile avec des dépendances Python facultatives.
La couche Python est ajoutée à l’environnement si conda_specification ou pip_requirements est spécifié. conda_specification et pip_requirements s’excluent mutuellement.
static from_dockerfile(name, dockerfile, conda_specification=None, pip_requirements=None)
Paramètres
Nom | Description |
---|---|
name
Obligatoire
|
Nom d'environnement. |
dockerfile
Obligatoire
|
Contenu dockerfile ou chemin d’accès au fichier. |
conda_specification
|
Fichier de spécifications Conda. Valeur par défaut: None
|
pip_requirements
|
Fichier de spécifications pip. Valeur par défaut: None
|
Retours
Type | Description |
---|---|
Objet d’environnement. |
from_existing_conda_environment
Crée un objet d’environnement créé à partir d’un environnement Conda existant localement.
Pour obtenir la liste des environnements Conda existants, exécutez conda env list
. Pour plus d’informations, consultez Gestion des environnements dans le guide de l’utilisateur Conda.
static from_existing_conda_environment(name, conda_environment_name)
Paramètres
Nom | Description |
---|---|
name
Obligatoire
|
Nom d'environnement. |
conda_environment_name
Obligatoire
|
Nom d’un environnement Conda existant localement. |
Retours
Type | Description |
---|---|
Objet d’environnement ou None si l’exportation du fichier de spécifications Conda échoue. |
from_pip_requirements
Crée un objet d’environnement créé à partir d’un fichier de spécifications pip.
La dépendance pip désépinglée est ajoutée si pip_version n’est pas spécifié.
static from_pip_requirements(name, file_path, pip_version=None)
Paramètres
Nom | Description |
---|---|
name
Obligatoire
|
Nom d'environnement. |
file_path
Obligatoire
|
Chemin d’accès du fichier de spécifications pip. |
pip_version
|
Version pip pour l’environnement Conda. Valeur par défaut: None
|
Retours
Type | Description |
---|---|
Objet d’environnement. |
get
Retourne l’objet d’environnement.
Si une étiquette est spécifiée, l’objet précédemment étiqueté avec la valeur est retourné. Vous ne pouvez spécifier qu’un seul paramètre de version ou d’étiquette. Si aucun des deux n’est fourni, la version la plus récente de l’objet d’environnement est retournée.
static get(workspace, name, version=None, label=None)
Paramètres
Nom | Description |
---|---|
workspace
Obligatoire
|
Espace de travail qui contient l’environnement. |
name
Obligatoire
|
Nom de l’environnement à retourner. |
version
|
Version de l’environnement à retourner. Valeur par défaut: None
|
label
|
Valeur d’étiquette de l’environnement. Valeur par défaut: None
|
Retours
Type | Description |
---|---|
Objet d’environnement. |
get_image_details
Retourne les détails de l’image.
get_image_details(workspace)
Paramètres
Nom | Description |
---|---|
workspace
Obligatoire
|
Espace de travail. |
Retours
Type | Description |
---|---|
Retourne les détails de l’image en tant que dict |
label
Étiquette l’objet d’environnement dans votre espace de travail avec les valeurs spécifiées.
static label(workspace, name, version, labels)
Paramètres
Nom | Description |
---|---|
workspace
Obligatoire
|
L’espace de travail |
name
Obligatoire
|
Nom de l’environnement |
version
Obligatoire
|
Version de l’environnement |
labels
Obligatoire
|
Valeurs avec lesquelles étiqueter l’environnement |
list
Retourne un dictionnaire contenant des environnements dans l’espace de travail.
static list(workspace)
Paramètres
Nom | Description |
---|---|
workspace
Obligatoire
|
Espace de travail à partir duquel répertorier les environnements. |
Retours
Type | Description |
---|---|
<xref:builtin.dict>[str, Environment]
|
Dictionnaire d’objets d’environnement. |
load_from_directory
Charge une définition d’environnement à partir des fichiers d’un répertoire.
static load_from_directory(path)
Paramètres
Nom | Description |
---|---|
path
Obligatoire
|
Chemin d’accès au répertoire source. |
register
Inscrit l’objet d’environnement dans votre espace de travail.
register(workspace)
Paramètres
Nom | Description |
---|---|
workspace
Obligatoire
|
L’espace de travail |
name
Obligatoire
|
|
Retours
Type | Description |
---|---|
Retourne l’objet d’environnement |
save_to_directory
Enregistre une définition d’environnement dans un répertoire dans un format facile à modifier.
save_to_directory(path, overwrite=False)
Paramètres
Nom | Description |
---|---|
path
Obligatoire
|
Chemin d’accès au répertoire de destination. |
overwrite
|
Si un répertoire existant doit être remplacé. Valeur false par défaut. Valeur par défaut: False
|
Attributs
environment_variables
Utilise l’objet azureml.core.RunConfiguration pour définir des variables d’exécution.