Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Installieren externer Bibliotheken und Kernel in Notebook-Instances
Bei SageMaker Amazon-Notebook-Instances sind bereits mehrere Umgebungen installiert. Diese Umgebungen enthalten Jupyter-Kernel und Python-Pakete, darunter: scikit, Pandas,, und MXNet. NumPy TensorFlow Diese Umgebungen und alle Dateien im Ordner sample-notebooks
werden aktualisiert, wenn Sie eine Notebook-Instance starten und beenden. Sie können auch Ihre eigenen Umgebungen mit Paketen und Kernel Ihrer Wahl installieren.
Die verschiedenen Jupyter-Kernel in SageMaker Amazon-Notebook-Instances sind separate Conda-Umgebungen. Weitere Informationen zu Conda-Umgebungen finden Sie unter Managing environments (Verwalten von Umgebungen)
Installieren Sie benutzerdefinierte Umgebungen und Kernel auf dem Amazon EBS-Volume der Notebook-Instance. Dadurch wird sichergestellt, dass sie bestehen bleiben, wenn Sie die Notebook-Instanz beenden und neu starten, und dass alle externen Bibliotheken, die Sie installieren, nicht aktualisiert werdenSageMaker. Verwenden Sie dazu eine Lebenszykluskonfiguration, die sowohl ein Skript enthält, das beim Erstellen der Notebook-Instanz ausgeführt wird (on-create)
), als auch ein Skript, das bei jedem Neustart der Notebook-Instanz ausgeführt wird (on-start
). Weitere Informationen zur Verwendung von Lebenszykluskonfigurationen von Notebook-Instances finden Sie unterAnpassen einer Notebook-Instances mithilfe eines Lifecycle-Konfigurationsskripts. Unter SageMakerNotebook Instance Lifecycle Config Samples gibt es ein GitHub Repository, das Beispiele für Lebenszykluskonfigurationsskripten
Die Beispiele unter https://github.com/aws-samples/ amazon-sagemaker-notebook-instance - lifecycle-config-samples /blob/master/scripts/ persistent-conda-ebs /on-create.sh und https://github.com/aws-samples/ amazon-sagemaker-notebook-instance - lifecycle-config-samples /blob/master/scripts/ persistent-conda-ebson-create
Skript installiert die ipykernel
Bibliothek, um benutzerdefinierte Umgebungen als Jupyter-Kernel zu erstellen, und verwendet pip install
und installiert dann Bibliotheken. conda
install
Sie können das Skript anpassen, um benutzerdefinierte Umgebungen zu erstellen und die gewünschten Bibliotheken zu installieren. SageMakeraktualisiert diese Bibliotheken nicht, wenn Sie die Notebook-Instanz beenden und neu starten, sodass Sie sicherstellen können, dass Ihre benutzerdefinierte Umgebung über bestimmte Versionen von Bibliotheken verfügt, die Sie benötigen. Das on-start
Skript installiert alle benutzerdefinierten Umgebungen, die Sie als Jupyter-Kernel erstellen, sodass sie in der Dropdown-Liste im Menü Jupyter New erscheinen.
Tools zur Paketinstallation
SageMakerNotebooks unterstützen die folgenden Tools zur Paketinstallation:
Conda installieren
Pip installieren
Sie können Pakete mit den folgenden Methoden installieren:
-
Lebenszykluskonfigurationsskripten.
Beispiele für Skripts finden Sie unter Beispiele für die Konfiguration des SageMaker Notebook-Instance Lifecycle
. Weitere Informationen zur Lebenszykluskonfiguration finden Sie unter Anpassen einer Notebook-Instanz mithilfe eines Lebenszykluskonfigurationsskripts. -
Notebooks — Die folgenden Befehle werden unterstützt.
%conda install
%pip install
-
Das Jupyter-Terminal — Sie können Pakete direkt mit Pip und Conda installieren.
In einem Notizbuch können Sie die Systembefehlssyntax verwenden (Zeilen, die mit! beginnen) um beispielsweise Pakete zu installieren !pip install
und!conda install
. In jüngerer Zeit wurden neue Befehle zu IPython hinzugefügt: %pip
und. %conda
Diese Befehle sind die empfohlene Methode, um Pakete von einem Notebook aus zu installieren, da sie die aktive Umgebung oder den verwendeten Interpreter korrekt berücksichtigen. Weitere Informationen finden Sie unter Hinzufügen der magischen Funktionen %pip und %conda
Conda
Conda ist ein Open-Source-Paketverwaltungssystem und ein Umgebungsmanagementsystem, das Pakete und ihre Abhängigkeiten installieren kann. SageMakerunterstützt die Verwendung von Conda mit einem der beiden Hauptkanäle, dem Standardkanal und dem Conda-Forge-Kanal. Weitere Informationen finden Sie unter Conda-Kanäle
Anmerkung
Aufgrund der Art und Weise, wie Conda das Abhängigkeitsdiagramm auflöst, kann die Installation von Paketen von Conda-Forge erheblich länger dauern (im schlimmsten Fall bis zu 10 Minuten).
Das Deep Learning AMI enthält viele Conda-Umgebungen und viele vorinstallierte Pakete. Aufgrund der Anzahl der vorinstallierten Pakete ist es schwierig, eine Reihe von Paketen zu finden, die garantiert kompatibel sind. Möglicherweise wird eine Warnung angezeigt: „Die Umgebung ist inkonsistent, bitte überprüfen Sie den Paketplan sorgfältig“. Stellt trotz dieser Warnung SageMaker sicher, dass alle SageMaker bereitgestellten Umgebungen korrekt sind. SageMakerkann nicht garantieren, dass die vom Benutzer installierten Pakete korrekt funktionieren.
Anmerkung
Benutzer von SageMaker AWS Deep Learning AMI und Amazon EMR können bis zum 1. Februar 2024 auf das kommerzielle Anaconda-Repository zugreifen, ohne eine kommerzielle Lizenz zu erwerben, wenn sie Anaconda in diesen Diensten verwenden. Für jede Nutzung außerhalb dieser drei Dienste sind die Kunden dafür verantwortlich, ihre eigenen Anaconda-Lizenzanforderungen festzulegen.
Conda hat zwei Methoden zur Aktivierung von Umgebungen: Conda aktivieren/deaktivieren und Quellcode aktivieren/deaktivieren. Weitere Informationen finden Sie unter Sollte ich „Conda Activate“ oder „Source Activate“ unter Linux verwenden
SageMakerunterstützt das Verschieben von Conda-Umgebungen auf das Amazon EBS-Volume, das beibehalten wird, wenn die Instance gestoppt wird. Die Umgebungen werden nicht beibehalten, wenn die Umgebungen auf dem Root-Volume installiert werden. Dies ist das Standardverhalten. Ein Beispiel für ein Lifecycle-Skript finden Sie unter persistent-conda-ebs
Unterstützte Conda-Operationen (siehe Hinweis am Ende dieses Themas)
Conda-Installation eines Pakets in einer einzigen Umgebung
Conda-Installation eines Pakets in allen Umgebungen
Conda-Installation eines R-Pakets in der R-Umgebung
Installation eines Pakets aus dem Haupt-Conda-Repository
Ein Paket von Conda-Forge installieren
-
Änderung des Conda-Installationsverzeichnisses zur Verwendung von EBS
Unterstützt sowohl Conda Activate als auch Source Activate
Pip
Pip ist das De-facto-Tool für die Installation und Verwaltung von Python-Paketen. Pip sucht standardmäßig im Python Package Index (PyPI) nach Paketen. Im Gegensatz zu Conda hat pip keine integrierte Umgebungsunterstützung und ist nicht so gründlich wie Conda, wenn es um Pakete mit Abhängigkeiten zwischen systemeigenen Bibliotheken und Systembibliotheken geht. Pip kann verwendet werden, um Pakete in Conda-Umgebungen zu installieren.
Sie können alternative Paket-Repositorys mit pip anstelle von PyPI verwenden. Ein Beispiel für ein Lifecycle-Skript finden Sie unter on-start.sh
Unterstützte Pip-Operationen (siehe Hinweis am Ende dieses Themas)
Verwenden von pip, um ein Paket ohne aktive Conda-Umgebung zu installieren (Pakete systemweit installieren)
Verwenden von pip, um ein Paket in einer Conda-Umgebung zu installieren
Verwenden Sie pip, um ein Paket in allen Conda-Umgebungen zu installieren
-
Änderung des Pip-Installationsverzeichnisses zur Verwendung von EBS
Verwendung eines alternativen Repositorys zur Installation von Paketen mit pip
Nicht unterstützt
SageMakerzielt darauf ab, so viele Paketinstallationsvorgänge wie möglich zu unterstützen. Wenn die Pakete jedoch von SageMaker oder DLAMI installiert wurden und Sie die folgenden Operationen für diese Pakete verwenden, kann dies Ihre Notebook-Instance instabil machen:
Deinstallieren
Herabstufung
Wird upgegradet
Wir bieten keine Unterstützung für die Installation von Paketen über yum install oder die Installation von R-Paketen von CRAN.
Aufgrund möglicher Probleme mit Netzwerkbedingungen oder Konfigurationen oder der Verfügbarkeit von Conda oder können wir nicht garantierenPyPi, dass Pakete in einer festen oder bestimmten Zeit installiert werden.
Anmerkung
Wir können nicht garantieren, dass eine Paketinstallation erfolgreich sein wird. Der Versuch, ein Paket in einer Umgebung mit inkompatiblen Abhängigkeiten zu installieren, kann zu einem Fehler führen. In einem solchen Fall sollten Sie den Bibliotheksbetreuer kontaktieren, um zu sehen, ob es möglich ist, die Paketabhängigkeiten zu aktualisieren. Alternativ können Sie versuchen, die Umgebung so zu modifizieren, dass die Installation möglich ist. Diese Änderung wird jedoch wahrscheinlich das Entfernen oder Aktualisieren vorhandener Pakete bedeuten, was bedeutet, dass wir die Stabilität dieser Umgebung nicht mehr garantieren können.