0 / 0
Zurück zur englischen Version der Dokumentation
Beispiele für Anpassungen von Umgebungsvorlagen

Beispiele für Anpassungen von Umgebungsvorlagen

Sie können den Beispielen folgen, wie angepasste Bibliotheken über Conda oder Pip mithilfe der bereitgestellten Vorlagen für Python und R hinzugefügt werden, wenn Sie eine Umgebungsvorlage erstellen.

Sie können mamba anstelle von conda in den folgenden Beispielen mit conda verwenden. Denken Sie daran, das Kontrollkästchen für die Installation von Mamba auszuwählen, wenn Sie Kanäle oder Pakete von Mamba zur vorhandenen Umgebungsvorlage hinzufügen.

Es gibt Beispiele für:

Hinweise und Tipps:

conda-Pakete hinzufügen

Gehen Sie wie folgt vor, um die aktuelle Versionen von pandas-profiling zu erhalten:

dependencies:
  - pandas-profiling

Dies entspricht der Ausführung von conda install pandas-profiling in einem Notebook.

pip-Pakete hinzufügen

Sie können eine Umgebung auch mit pip anpassen, wenn ein bestimmtes Paket in Conda-Kanälen nicht verfügbar ist:

dependencies:
  - pip:
    - ibm-watson-machine-learning

Dies entspricht der Ausführung von pip install ibm-watson-machine-learning in einem Notebook.

Bei der Anpassung wird mehr als nur das angegebene pip-Paket installiert. Das Standardverhalten von conda besteht darin, auch nach einer neuen Version von pip selbst zu suchen und diese dann zu installieren. Die Überprüfung aller impliziten Abhängigkeiten in conda dauert häufig mehrere Minuten und benötigt auch Gigabyte an Speicher. Die folgende Anpassung führt zu einer Verknüpfung der Installation von pip:

channels:
  - empty
  - nodefaults

dependencies:
  - pip:
    - ibm-watson-machine-learning

Der Conda-Kanal empty stellt keine Pakete bereit. Insbesondere gibt es kein pip -Paket. conda versucht nicht, pip zu installieren, und verwendet stattdessen die bereits vorinstallierte Version. Beachten Sie, dass das Schlüsselwort nodefaults in der Liste der Kanäle mindestens einen anderen Kanal in der Liste benötigt. Andernfalls ignoriert conda das Schlüsselwort unbeaufsichtigt und verwendet die Standardkanäle.

conda-und pip-Pakete kombinieren

Sie können mehrere Pakete mit einem Paket pro Zeile auflisten. Eine einzelne Anpassung kann sowohl conda-Pakete als auch pip-Pakete enthalten.

dependencies:
  - pandas-profiling
  - scikit-learn=0.20
  - pip:
    - watson-machine-learning-client-V4
    - sklearn-pandas==1.8.0

Beachten Sie, dass bei der erforderlichen Vorlagenschreibweise auf führende Leerzeichen geachtet werden muss. Jedes Element in der Liste der conda-Pakete muss über zwei führende Leerzeichen verfügen. Jedes Element in der Liste der pip-Pakete muss über vier führende Leerzeichen verfügen. Die Version eines Conda-Pakets muss mit einem einzelnen Gleichheitszeichen (=) angegeben werden, während die Version eines Pip-Pakets mit zwei Gleichheitszeichen (==) hinzugefügt wird.

Komplexe Pakete mit internen Abhängigkeiten hinzufügen

Wenn Sie viele Pakete oder ein komplexes Paket mit vielen internen Abhängigkeiten hinzufügen, kann die conda-Installation lange dauern oder sogar gestoppt werden, ohne dass Sie eine Fehlernachricht sehen. Um dies zu vermeiden:

  • Geben Sie die Versionen der Pakete an, die hinzugefügt werden sollen. Dadurch wird der Suchbereich für conda zum Auflösen von Abhängigkeiten reduziert.
  • Vergrößern Sie die Speichergröße der Umgebung.
  • Verwenden Sie einen bestimmten Kanal anstelle der Conda-Standardkanäle, die in der Datei .condarc definiert sind. Dadurch werden langwierige Durchsuchungen großer Kanäle vermieden.

Beispiel für eine Anpassung, die die Conda-Standardkanäle nicht verwendet:

# get latest version of the prophet package from the conda-forge channel
channels:
  - conda-forge
  - nodefaults

dependencies:
  - prophet

Diese Anpassung entspricht dem folgenden Befehl in einem Notebook:

!conda install -c conda-forge --override-channels prophet -y

Conda-Pakete für R-Notebooks hinzufügen

Das folgende Beispiel zeigt, wie Sie eine Anpassung erstellen, die Conda-Pakete zur Verwendung in einem R-Notebook hinzufügt:

channels:
  - defaults

dependencies:
  - r-plotly

Diese Anpassung entspricht dem folgenden Befehl in einem Notebook:

print(system("conda install r-plotly", intern=TRUE))

Die Namen von R-Paketen in Conda beginnen im Allgemeinen mit dem Präfix r-. Wenn Sie plotly in Ihrer Anpassung verwenden, wäre die Installation erfolgreich, aber es würde Python anstelle des R-Pakets installiert werden. Wenn Sie dann versuchen, das Paket in Ihrem R-Code wie in library(plotly) zu verwenden, wird ein Fehler zurückgegeben.

Umgebungsvariablen werden eingestellt

Sie können Umgebungsvariablen in Ihrer Umgebung festlegen, indem Sie wie im folgenden Beispiel gezeigt einen Variablenabschnitt zur Softwareanpassungsschablone hinzufügen:

variables:
  my_var: my_value
  HTTP_PROXY: https://myproxy:3128
  HTTPS_PROXY: https://myproxy:3128
  NO_PROXY: cluster.local

Das Beispiel zeigt auch, dass Sie den Abschnitt "Variablen" verwenden können, um einen Proxy-Server für eine Umgebung festzulegen.

Hinweis:

Bei der Installation von Paketen verwendet Conda nicht die Variablen HTTP_PROXY und HTTPS_PROXY, die in der Umgebung konfiguriert sind. Informationen zum Konfigurieren von Conda für die Verwendung eines Proxy-Servers finden Sie unter Conda oder Mamba für die Verwendung eines Proxy-Servers konfigurieren.

Einschränkung:Sie können vorhandene Umgebungsvariablen, z. B. LD_LIBRARY_PATH, mit dieser Methode nicht überschreiben.

Bewährte Verfahren

Um Probleme zu vermeiden, die bei der Suche nach Paketen oder bei der Lösung widersprüchlicher Abhängigkeiten auftreten können, sollten Sie zunächst die benötigten Pakete manuell über ein Notebook in einer Testumgebung installieren. Auf diese Weise können Sie interaktiv prüfen, ob Pakete fehlerfrei installiert werden können. Nachdem Sie sichergestellt haben, dass die Pakete ordnungsgemäß installiert wurden, erstellen Sie eine Anpassung für Ihre Entwicklungs- oder Produktionsumgebung und fügen Sie die Pakete zur Anpassungsvorlage hinzu.

Übergeordnetes Thema: Umgebungen anpassen

Generative KI-Suche und -Antwort
Diese Antworten werden von einem großen Sprachmodell in watsonx.ai basierend auf dem Inhalt der Produktdokumentation generiert. Weitere Informationen