Environment Klasse
Konfiguriert eine reproduzierbare Python-Umgebung für Experimente zum maschinellen Lernen.
Eine Umgebung definiert Python-Pakete, Umgebungsvariablen und Docker-Einstellungen, die in ML-Experimenten verwendet werden, einschließlich der Datenvorbereitung, des Trainings und der Bereitstellung in einem Webdienst. Eine Umgebung wird in einem Azure Machine Learning-Workspace verwaltet und versioniert. Sie können eine vorhandene Umgebung aktualisieren und eine Version zur Wiederverwendung abrufen. Umgebungen gelten ausschließlich für den Arbeitsbereich, in dem sie erstellt werden, und können nicht in verschiedenen Arbeitsbereichen verwendet werden.
Weitere Informationen zu Umgebungen finden Sie unter Erstellen und Verwalten wiederverwendbarer Umgebungen.
Klassenumgebungskonstruktor.
- Vererbung
-
azureml._base_sdk_common.abstract_run_config_element._AbstractRunConfigElementEnvironment
Konstruktor
Environment(name, **kwargs)
Parameter
Name | Beschreibung |
---|---|
name
Erforderlich
|
Der Name der Umgebung. Hinweis Beginnen Sie Ihren Umgebungsnamen nicht mit „Microsoft“ oder „AzureML“. Die Präfixe „Microsoft“ und „AzureML“ sind für zusammengestellte Umgebungen reserviert. Weitere Informationen zu zusammengestellten Umgebungen finden Sie unter Erstellen und Verwalten wiederverwendbarer Umgebungen. |
Hinweise
Azure Machine Learning stellt zusammengestellte Umgebungen bereit. Dabei handelt es sich um vordefinierte Umgebungen, die gute Ausgangspunkte für die Entwicklung eigener Umgebungen darstellen. Zusammengestellte Umgebungen basieren auf zwischengespeicherten Docker-Image und senken damit den Aufwand für die Vorbereitung der Ausführung. Weitere Informationen zu zusammengestellten Umgebungen finden Sie unter Erstellen und Verwalten wiederverwendbarer Umgebungen.
Es gibt verschiedene Möglichkeiten, wie Umgebungen in Azure Machine Learning erstellt werden können, z. B.:
Initialisieren eines neuen environment-Objekts
Verwenden einer der Methoden der Environment-Klasse: from_conda_specification, from_pip_requirementsoder from_existing_conda_environment
Verwenden der submit-Methode der Experiment-Klasse, um eine Experimentausführung zu übermitteln, ohne eine Umgebung anzugeben, einschließlich eines Estimator-Objekts.
Im folgenden Beispiel wird die Instanziierung einer neuen Umgebung veranschaulicht.
from azureml.core import Environment
myenv = Environment(name="myenv")
Sie können eine Umgebung verwalten, indem Sie sie registrieren. Auf diese Weise können Sie die Versionen der Umgebung nachverfolgen und in zukünftigen Ausführungen wiederverwenden.
myenv.register(workspace=ws)
Weitere Beispiele zum Arbeiten mit Umgebungen finden Sie im Jupyter Notebook zum Verwenden von Umgebungen.
Variablen
Name | Beschreibung |
---|---|
Environment.databricks
|
In diesem Abschnitt werden Abhängigkeiten der Bibliothek azureml.core.databricks.DatabricksSection konfiguriert. |
docker
|
In diesem Abschnitt werden Einstellungen im Zusammenhang mit dem endgültigen Docker-Image konfiguriert, das den Spezifikationen der Umgebung entspricht. Außerdem wird hier angegeben, ob zum Erstellen der Umgebung Docker-Container verwendet werden sollen. |
inferencing_stack_version
|
Dieser Abschnitt gibt die dem Image hinzugefügte Version des Rückschlussstapels an. Um das Hinzufügen eines Rückschlussstapels zu vermeiden, legen Sie diesen Wert nicht fest. Gültiger Wert: „latest“ (Aktuellste). |
python
|
In diesem Abschnitt wird angegeben, welche Python-Umgebung und welcher Interpreter am Computeziel verwendet werden sollen. |
spark
|
Der Abschnitt konfiguriert die Spark-Einstellungen. Er wird nur verwendet, wenn das Framework auf PySpark festgelegt ist. |
r
|
In diesem Abschnitt wird angegeben, welche R-Umgebung am Computeziel verwendet werden soll. |
version
|
Die Version der Umgebung. |
asset_id
|
Asset-ID Füllt auf, wenn eine Umgebung registriert wird. |
Methoden
add_private_pip_wheel |
Lädt die private pip wheel-Datei auf den Datenträger in Azure Blob Storage hoch, der an den Arbeitsbereich angefügt ist. Löst eine Ausnahme aus, wenn bereits ein privates pip wheel-Archiv mit dem gleichen Namen im Speicherblob des Arbeitsbereichs vorhanden ist. |
build |
Erstellt ein Docker-Image für diese Umgebung in der Cloud. |
build_local |
Erstellt lokal die Docker- oder conda-Umgebung. |
clone |
Klont das environment-Objekt. Gibt eine neue Instanz des environment-Objekts mit einem neuen Namen zurück. |
from_conda_specification |
Erstellt ein environment-Objekt aus einer YAML-Datei mit der Umgebungsspezifikation. Informationen zum Abrufen einer YAML-Datei mit einer Umgebungsspezifikation finden Sie unter Verwalten von Umgebungen im conda-Benutzerhandbuch. |
from_docker_build_context |
Erstellen Sie ein Umgebungsobjekt aus einem Docker-Buildkontext. |
from_docker_image |
Erstellen Sie ein Umgebungsobjekt aus einem Docker-Basisimage mit optionalen Python-Abhängigkeiten. Die Python-Ebene wird der Umgebung hinzugefügt, wenn conda_specification oder pip_requirements angegeben ist. conda_specification und pip_requirements schließen sich gegenseitig aus. |
from_dockerfile |
Erstellen Sie ein Umgebungsobjekt aus einer Dockerfile-Datei mit optionalen Python-Abhängigkeiten. Die Python-Ebene wird der Umgebung hinzugefügt, wenn conda_specification oder pip_requirements angegeben ist. conda_specification und pip_requirements schließen sich gegenseitig aus. |
from_existing_conda_environment |
Erstellt ein environment-Objekt aus einer lokal vorhandenen conda-Umgebung. Führen Sie |
from_pip_requirements |
Erstellt ein environment-Objekt aus einer pip-Anforderungsdatei. Eine nicht angepinnte pip-Abhängigkeit wird hinzugefügt, wenn pip_version nicht angegeben ist. |
get |
Gibt das environment-Objekt zurück. Wenn Bezeichnung angegeben ist, wird das Objekt zurückgegeben, das zuvor mit dem Wert bezeichnet wurde. Es kann nur einer der Versions- oder Bezeichnungsparameter angegeben werden. Wenn beide nicht angezeigt werden, wird die neueste Version des Umgebungsobjekts zurückgegeben. |
get_image_details |
Gibt die Imagedetails zurück. |
label |
Bezeichnen Sie das Umgebungsobjekt in Ihrem Arbeitsbereich mit den angegebenen Werten. |
list |
Gibt ein Wörterbuch zurück, das die Umgebungen im Arbeitsbereich enthält. |
load_from_directory |
Lädt eine Umgebungsdefinition aus den Dateien in einem Verzeichnis. |
register |
Registriert das environment-Objekt in Ihrem Arbeitsbereich. |
save_to_directory |
Speichert eine Umgebungsdefinition in einem Verzeichnis in einem einfach zu bearbeitenden Format. |
add_private_pip_wheel
Lädt die private pip wheel-Datei auf den Datenträger in Azure Blob Storage hoch, der an den Arbeitsbereich angefügt ist.
Löst eine Ausnahme aus, wenn bereits ein privates pip wheel-Archiv mit dem gleichen Namen im Speicherblob des Arbeitsbereichs vorhanden ist.
static add_private_pip_wheel(workspace, file_path, exist_ok=False)
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
Das Arbeitsbereichsobjekt, das zum Registrieren des privaten pip wheel-Archivs verwendet werden soll. |
file_path
Erforderlich
|
Pfad zum lokalen pip wheel-Archiv auf dem Datenträger, einschließlich der Dateierweiterung. |
exist_ok
|
Gibt an, ob eine Ausnahme ausgelöst werden soll, wenn das wheel-Archiv bereits vorhanden ist. Standardwert: False
|
Gibt zurück
Typ | Beschreibung |
---|---|
Gibt den vollständigen URI an das hochgeladene pip wheel-Archiv in Azure Blob Storage zurück, das in conda-Abhängigkeiten verwendet werden soll. |
build
Erstellt ein Docker-Image für diese Umgebung in der Cloud.
build(workspace, image_build_compute=None)
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
Der Arbeitsbereich und die zugehörigen Azure Container Registry-Instanz, in denen das Image gespeichert wird. |
image_build_compute
|
Der Computename, an dem die Imageerstellung erfolgt Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
Gibt das details-Objekt für die Imageerstellung zurück. |
build_local
Erstellt lokal die Docker- oder conda-Umgebung.
build_local(workspace, platform=None, **kwargs)
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
Der Arbeitsbereich. |
platform
|
Plattform. Entweder Linux, Windows oder OSX. Standardmäßig wird die aktuelle Plattform verwendet. Standardwert: None
|
kwargs
Erforderlich
|
Erweiterte Schlüsselwortargumente |
Gibt zurück
Typ | Beschreibung |
---|---|
Streamt die Docker- oder conda-Buildausgabe fortlaufend an die Konsole. |
Hinweise
In den folgenden Beispielen wird gezeigt, wie Sie eine lokale Umgebung erstellen. Stellen Sie sicher, dass der Arbeitsbereich als gültiges azureml.core.workspace.Workspace-Objekt instanziiert wird.
Erstellt eine lokale conda-Umgebung
from azureml.core import Environment
myenv = Environment(name="myenv")
registered_env = myenv.register(workspace)
registered_env.build_local(workspace)
Erstellt eine lokale Docker-Umgebung
from azureml.core import Environment
myenv = Environment(name="myenv")
registered_env = myenv.register(workspace)
registered_env.build_local(workspace, useDocker=True)
Erstellt lokal ein Docker-Image und pusht es optional in die Containerregistrierung, die dem Arbeitsbereich zugeordnet ist
from azureml.core import Environment
myenv = Environment(name="myenv")
registered_env = myenv.register(workspace)
registered_env.build_local(workspace, useDocker=True, pushImageToWorkspaceAcr=True)
clone
Klont das environment-Objekt.
Gibt eine neue Instanz des environment-Objekts mit einem neuen Namen zurück.
clone(new_name)
Parameter
Name | Beschreibung |
---|---|
new_name
Erforderlich
|
Neuer Umgebungsname |
Gibt zurück
Typ | Beschreibung |
---|---|
Neues environment-Objekt |
from_conda_specification
Erstellt ein environment-Objekt aus einer YAML-Datei mit der Umgebungsspezifikation.
Informationen zum Abrufen einer YAML-Datei mit einer Umgebungsspezifikation finden Sie unter Verwalten von Umgebungen im conda-Benutzerhandbuch.
static from_conda_specification(name, file_path)
Parameter
Name | Beschreibung |
---|---|
name
Erforderlich
|
Der Umgebungsname. |
file_path
Erforderlich
|
Der YAML-Dateipfad der conda-Umgebungsspezifikation. |
Gibt zurück
Typ | Beschreibung |
---|---|
Das environment-Objekt. |
from_docker_build_context
Erstellen Sie ein Umgebungsobjekt aus einem Docker-Buildkontext.
static from_docker_build_context(name, docker_build_context)
Parameter
Name | Beschreibung |
---|---|
name
Erforderlich
|
Der Umgebungsname. |
docker_build_context
Erforderlich
|
Das DockerBuildContext-Objekt. |
Gibt zurück
Typ | Beschreibung |
---|---|
Das environment-Objekt. |
from_docker_image
Erstellen Sie ein Umgebungsobjekt aus einem Docker-Basisimage mit optionalen Python-Abhängigkeiten.
Die Python-Ebene wird der Umgebung hinzugefügt, wenn conda_specification oder pip_requirements angegeben ist. conda_specification und pip_requirements schließen sich gegenseitig aus.
static from_docker_image(name, image, container_registry=None, conda_specification=None, pip_requirements=None)
Parameter
Name | Beschreibung |
---|---|
name
Erforderlich
|
Der Umgebungsname. |
image
Erforderlich
|
Vollqualifizierter Imagename. |
conda_specification
|
Conda-Spezifikationsdatei. Standardwert: None
|
container_registry
|
Details zum privaten Container-Repository. Standardwert: None
|
pip_requirements
|
Pip-Anforderungsdatei. Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
Das environment-Objekt. |
Hinweise
Wenn das Basisimage aus einem privaten Repository stammt, für das eine Autorisierung erforderlich ist, und die Autorisierung nicht auf der AzureML-Arbeitsbereichsebene festgelegt ist, ist container_registry erforderlich
from_dockerfile
Erstellen Sie ein Umgebungsobjekt aus einer Dockerfile-Datei mit optionalen Python-Abhängigkeiten.
Die Python-Ebene wird der Umgebung hinzugefügt, wenn conda_specification oder pip_requirements angegeben ist. conda_specification und pip_requirements schließen sich gegenseitig aus.
static from_dockerfile(name, dockerfile, conda_specification=None, pip_requirements=None)
Parameter
Name | Beschreibung |
---|---|
name
Erforderlich
|
Der Umgebungsname. |
dockerfile
Erforderlich
|
Dockerfile-Inhalt oder -Pfad zur Datei. |
conda_specification
|
Conda-Spezifikationsdatei. Standardwert: None
|
pip_requirements
|
Pip-Anforderungsdatei. Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
Das environment-Objekt. |
from_existing_conda_environment
Erstellt ein environment-Objekt aus einer lokal vorhandenen conda-Umgebung.
Führen Sie conda env list
aus, um eine Liste der vorhandenen conda-Umgebungen abzurufen. Weitere Informationen finden Sie unter Verwalten von Umgebungen im conda-Benutzerhandbuch.
static from_existing_conda_environment(name, conda_environment_name)
Parameter
Name | Beschreibung |
---|---|
name
Erforderlich
|
Der Umgebungsname. |
conda_environment_name
Erforderlich
|
Der Name einer lokal vorhandenen conda-Umgebung. |
Gibt zurück
Typ | Beschreibung |
---|---|
Das environment-Objekt oder „None“, wenn beim Exportieren der conda-Spezifikationsdatei ein Fehler auftritt. |
from_pip_requirements
Erstellt ein environment-Objekt aus einer pip-Anforderungsdatei.
Eine nicht angepinnte pip-Abhängigkeit wird hinzugefügt, wenn pip_version nicht angegeben ist.
static from_pip_requirements(name, file_path, pip_version=None)
Parameter
Name | Beschreibung |
---|---|
name
Erforderlich
|
Der Umgebungsname. |
file_path
Erforderlich
|
Der Pfad der pip-Anforderungsdatei. |
pip_version
|
Pip-Version für conda-Umgebung. Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
Das environment-Objekt. |
get
Gibt das environment-Objekt zurück.
Wenn Bezeichnung angegeben ist, wird das Objekt zurückgegeben, das zuvor mit dem Wert bezeichnet wurde. Es kann nur einer der Versions- oder Bezeichnungsparameter angegeben werden. Wenn beide nicht angezeigt werden, wird die neueste Version des Umgebungsobjekts zurückgegeben.
static get(workspace, name, version=None, label=None)
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
Der Arbeitsbereich, der die Umgebung enthält. |
name
Erforderlich
|
Der Name der zurückzugebenden Umgebung. |
version
|
Die Version der zurückzugebenden Umgebung. Standardwert: None
|
label
|
Umgebungsbezeichnungswert. Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
Das environment-Objekt. |
get_image_details
Gibt die Imagedetails zurück.
get_image_details(workspace)
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
Der Arbeitsbereich. |
Gibt zurück
Typ | Beschreibung |
---|---|
Gibt die Imagedetails als Wörterbuch zurück. |
label
Bezeichnen Sie das Umgebungsobjekt in Ihrem Arbeitsbereich mit den angegebenen Werten.
static label(workspace, name, version, labels)
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
Der Arbeitsbereich |
name
Erforderlich
|
Umgebungsname |
version
Erforderlich
|
Umgebungsversion |
labels
Erforderlich
|
Werte für die Bezeichnung der Umgebung mit |
list
Gibt ein Wörterbuch zurück, das die Umgebungen im Arbeitsbereich enthält.
static list(workspace)
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
Der Arbeitsbereich, aus dem Umgebungen aufgelistet werden sollen. |
Gibt zurück
Typ | Beschreibung |
---|---|
<xref:builtin.dict>[str, Environment]
|
Ein Wörterbuch mit environment-Objekten. |
load_from_directory
Lädt eine Umgebungsdefinition aus den Dateien in einem Verzeichnis.
static load_from_directory(path)
Parameter
Name | Beschreibung |
---|---|
path
Erforderlich
|
Pfad zum Quellverzeichnis. |
register
Registriert das environment-Objekt in Ihrem Arbeitsbereich.
register(workspace)
Parameter
Name | Beschreibung |
---|---|
workspace
Erforderlich
|
Der Arbeitsbereich |
name
Erforderlich
|
|
Gibt zurück
Typ | Beschreibung |
---|---|
Gibt das environment-Objekt zurück |
save_to_directory
Speichert eine Umgebungsdefinition in einem Verzeichnis in einem einfach zu bearbeitenden Format.
save_to_directory(path, overwrite=False)
Parameter
Name | Beschreibung |
---|---|
path
Erforderlich
|
Pfad zum Zielverzeichnis. |
overwrite
|
Gibt an, ob ein vorhandenes Verzeichnis überschrieben werden soll. Der Standardwert ist FALSE. Standardwert: False
|
Attribute
environment_variables
Verwenden Sie das Objekt azureml.core.RunConfiguration, um Laufzeitvariablen festzulegen.