Aller au contenu principal

Configurez l'environnement Serverless

Cette page explique comment configurer l’environnement serverless pour les Notebooks et les tâches de Job. Pour les notebooks, utilisez le volet latéral **Environnement** pour sélectionner un environnement de base, installer les dépendances, configurer la mémoire et appliquer les politiques d’utilisation. Pour les tâches de Job, configurez l'environnement lorsque vous créez ou modifiez une tâche.

Pour développer le volet latéral **Environnement**, cliquez environnement sur le bouton à droite du Notebook.

Volet d'environnement Serverless

Sélectionnez un environnement de base

Un environnement de base détermine les bibliothèques préinstallées et la version d’environnement disponibles pour votre Notebook serverless. Le sélecteur Environnement de base dans le volet latéral Environnement est l’endroit où vous choisissez votre environnement. Pour voir les détails de chaque version d’environnement, consultez les versions d’environnement Serverless. Databricks recommande d’utiliser la dernière version pour obtenir les fonctionnalités de Notebook les plus récentes.

Le sélecteur Environnement de base comprend les options suivantes :

  • Standard : L'environnement de base Serverless par default avec les bibliothèques fournies par Databricks.

  • ML : un environnement de base avec les packages Python et système de Databricks Runtime for Machine Learning préinstallés. Utilisez cet environnement pour migrer les charges de travail classiques de Databricks Runtime for Machine Learning vers le compute Serverless. Voir l'environnement de base ML.

  • IA : un environnement de base optimisé pour l'IA, avec des bibliothèques de Machine Learning (ML) préinstallées. Cette option apparaît uniquement lorsqu'un accélérateur (GPU) est sélectionné.

  • Plus : Se développe pour afficher des options supplémentaires.

    • Versions précédentes des environnements Standard, ML et IA.
    • Personnalisé : Spécifiez un environnement personnalisé à l'aide d'un fichier YAML.
  • Environnements du workspace : répertorie tous les environnements de base compatibles configurés pour votre workspace par un administrateur.

Pour sélectionner un environnement de base :

  1. Dans l'interface utilisateur du notebook, cliquez sur le panneau latéral Environnement environnement.
  2. Sous **Environnement de base**, sélectionnez un environnement dans le menu déroulant.
  3. Cliquez sur Appliquer .

Ajouter des dépendances au Notebook

Puisque le serverless ne prend pas en charge les politiques de compute ni les scripts d'initialisation, vous devez installer les dépendances personnalisées à l'aide du panneau latéral **Environnement**. Vous pouvez installer les dépendances individuellement ou utiliser un environnement de base partageable pour installer plusieurs dépendances.

Databricks met en cache l'environnement virtuel de votre Notebook, de sorte que les dépendances ne sont pas réinstallées chaque fois que vous rouvrez un Notebook ou que vous reprenez après une inactivité. Les tâches de Job qui partagent le même ensemble de dépendances bénéficient également de ce cache au sein d'une exécution.

Pour installer une dépendance individuellement :

  1. Dans l'interface utilisateur du notebook, cliquez sur le panneau latéral Environnement environnement.

  2. Dans la section **Dépendances**, cliquez sur **Ajouter une dépendance** et saisissez le chemin de la dépendance dans le champ. Vous pouvez spécifier une dépendance dans n'importe quel format valide dans un fichier requirements.txt. Les fichiers Python wheel ou les projets Python (par exemple, le répertoire contenant un pyproject.toml ou un setup.py) peuvent être situés dans des fichiers de workspace ou des volumes Unity Catalog.

    • Si vous utilisez un fichier Workspace, le chemin doit être absolu et start avec /Workspace/.
    • Si vous utilisez un fichier dans un volume Unity Catalog, le chemin doit être au format suivant : /Volumes/<catalog>/<schema>/<volume>/<path>.whl.
  3. Cliquez sur Appliquer pour installer les dépendances et redémarrer le processus Python.

important

N'installez pas PySpark ou toute autre bibliothèque qui installe PySpark en tant que dépendance sur vos Notebooks Serverless. Cela arrêtera votre session et entraînera une erreur. Si cela se produit, supprimez la bibliothèque et Reset votre environnement.

Pour afficher les dépendances installées, cliquez sur le tab Installed dans le volet latéral Environments . Ouvrez les Logs d'installation pip de l'environnement du Notebook en cliquant sur Logs pip en bas du volet.

remarque

Les administrateurs du Workspace peuvent configurer des dépôts de paquets privés ou authentifiés comme source pip default pour les Notebooks et les Jobs serverless. Cela permet aux utilisateurs d'installer des packages à partir de repositories internes sans spécifier index-url ou extra-index-url. Voir Configurer les default Python package repository.

Créer une spécification d'environnement personnalisée

Vous pouvez créer et réutiliser des spécifications d'environnement personnalisées.

  1. Dans un Notebook Serverless, sélectionnez un environnement de base et installez les dépendances que vous souhaitez.
  2. Cliquez sur le bouton du menu kebab Icône du menu kebab. en bas du volet d’environnement, puis cliquez sur Exporter l’environnement .
  3. Enregistrez la spécification en tant que fichier Workspace ou dans un volume Unity Catalog. Assurez-vous que vous disposez des autorisations d'écriture vers la destination, sinon l'exportation échoue avec une erreur Forbidden.

Pour utiliser votre spécification d'environnement personnalisée dans un Notebook, sélectionnez Personnalisé dans le menu déroulant Environnement de base , puis utilisez le dossier Icône de dossier. pour sélectionner votre fichier YAML.

Créer des outils courants à partager dans votre workspace

Cet exemple stocke un utilitaire dans un fichier Workspace et l'installe comme dépendance de Notebook Serverless :

  1. Créez un dossier avec la structure suivante. Assurez-vous que les autres utilisateurs ont un accès en lecture à ce chemin :

    Shell
    helper_utils/
    ├── helpers/
    │ └── __init__.py # your common functions live here
    ├── pyproject.toml
  2. Renseignez pyproject.toml comme ceci :

    Python
    [project]
    name = "common_utils"
    version = "0.1.0"
  3. Ajoutez une fonction au fichier init.py. Par exemple :

    Python
    def greet(name: str) -> str:
    return f"Hello, {name}!"
  4. Dans l'interface utilisateur du notebook, cliquez sur le panneau latéral Environnement Icône d&#39;environnement..

  5. Dans la section Dépendances , cliquez sur Ajouter une dépendance , puis entrez le chemin de votre fichier util. Par exemple : /Workspace/helper_utils.

  6. Cliquez sur Appliquer .

Vous pouvez désormais utiliser la fonction dans votre notebook :

Python
from helpers import greet
print(greet('world'))

Cela donne le résultat suivant :

Text
Hello, world!

Utiliser AI Runtime (GPU serverless)

info

Aperçu public

L'AI Runtime est en prévisualisation publique.

Suivez ces étapes pour configurer AI Runtime, optimisé par le compute GPU Serverless, sur votre Notebook Databricks :

  1. Depuis un Notebook, cliquez sur le menu déroulant du compute en haut et sélectionnez **Serverless GPU**.
  2. Cliquez sur l'Icône d&#39;environnement. pour ouvrir le volet latéral Environnement .
  3. Sélectionnez A10 ou H100 dans le champ Accélérateur .
  4. Sous Environnement de base , sélectionnez Standard pour l'environnement default ou IA pour l'environnement optimisé par l'IA avec les bibliothèques de Machine Learning (ML) préinstallées.
  5. Cliquez sur **Appliquer**, puis **Confirmer** que vous souhaitez appliquer AI Runtime à votre environnement de notebook.

Pour plus de détails, consultez AI Runtime.

Utilisez un compute serverless à mémoire élevée

info

Aperçu

Cette fonctionnalité est en aperçu public.

Si vous rencontrez des erreurs de mémoire insuffisante dans votre notebook, configurez le notebook pour utiliser une taille de mémoire plus élevée. Ce paramètre de taille de mémoire augmente la taille de la mémoire REPL utilisée lors de l'exécution du code dans le notebook. Cela n'affecte pas la taille de la mémoire de la session Spark. L'utilisation de Serverless avec une mémoire élevée a un taux d'émission de DBU plus élevé que la mémoire standard.

Les options de mémoire disponibles sont :

  • Standard : 16 Go de mémoire totale.
  • **Élevée** : 32 Go de mémoire totale.

Pour configurer le paramètre de mémoire du notebook :

  1. Dans l'interface utilisateur du notebook, cliquez sur le panneau latéral Environnement environnement.
  2. Sous **Mémoire**, sélectionnez **Mémoire élevée**.
  3. Cliquez sur Appliquer .

Ce paramètre de mémoire s'applique également aux tâches de Job de notebook qui s'exécutent en utilisant les préférences de mémoire du notebook. La mise à jour de la préférence de mémoire dans le Notebook affecte la prochaine exécution de Job.

Sélectionner une politique d'utilisation Serverless

info

Aperçu

Cette fonctionnalité est en aperçu public.

Les politiques d'utilisation serverless permettent à votre organisation d'appliquer des tags personnalisés sur l'utilisation serverless pour une attribution de facturation granulaire.

Si votre Workspace utilise des politiques d'utilisation Serverless, sélectionnez la politique que vous souhaitez appliquer au Notebook. Si un utilisateur est assigné à une seule politique d'utilisation Serverless, cette politique s'applique par default.

Après vous être connecté au compute serverless, sélectionnez une politique dans le volet latéral **Environnement** :

  1. Dans l'interface utilisateur du notebook, cliquez sur le panneau latéral Environnement environnement.
  2. Sous Politique d’utilisation serverless , sélectionnez la politique d’utilisation serverless que vous souhaitez appliquer à votre Notebook.
  3. Cliquez sur Appliquer .

Après application, toute l'utilisation du notebook tient compte des tags personnalisés de la politique.

remarque

Si votre Notebook provient d'un repository Git ou ne dispose pas d'une politique d'utilisation Serverless, il utilise par default votre dernière politique d'utilisation Serverless choisie lorsqu'il est ensuite attaché à un compute Serverless.

Inclure l'environnement dans les exportations de fichiers sources

Pour les Notebooks Python, vous pouvez activer/désactiver l'option Inclure dans les exportations de fichiers sources dans la configuration de l'environnement. Une fois activé, l’environnement de base et les dépendances sont stockés au format PEP 723 dans les exportations de fichiers sources. Cela aide à conserver la configuration de l’environnement lorsque les Notebooks sont stockés dans des dossiers Git ou téléchargés en tant que fichiers sources.

Par exemple, un Notebook utilisant **Standard v5** exporte sa configuration d'environnement en tant que métadonnées en ligne en haut du fichier :

Python
# Databricks notebook source
# /// script
# [tool.databricks.environment]
# environment_version = "5"
# ///
print("Hello World!")

Reset les dépendances de l’environnement

Si votre notebook est connecté au compute serverless, Databricks met automatiquement en cache le contenu de l'environnement virtuel du notebook. Cela signifie que vous n'avez généralement pas besoin de réinstaller les dépendances Python spécifiées dans le volet latéral Environnement lorsque vous ouvrez un notebook existant, même s'il a été déconnecté en raison de l'inactivité.

La mise en cache de l'environnement virtuel Python s'applique également aux Jobs. Lorsqu'un job s'exécute, toute tâche qui partage le même ensemble de dépendances qu'une tâche terminée dans la même exécution se termine plus rapidement, car le cache contient déjà les dépendances requises.

remarque

Si vous modifiez l'implémentation d'un package Python personnalisé utilisé dans un Job Serverless, vous devez également mettre à jour son numéro de version afin que les Jobs puissent prendre en compte la dernière implémentation.

Pour vider le cache de l'environnement et effectuer une nouvelle installation des dépendances spécifiées dans le volet latéral Environnement d'un Notebook attaché à un compute Serverless, cliquez sur la flèche en regard de Appliquer , puis cliquez sur Reset to defaults .

Si vous installez des packages qui corrompent ou modifient l'environnement principal du Notebook ou d'Apache Spark, supprimez les packages problématiques, puis Reset l'environnement. Le démarrage d'une nouvelle session n'efface pas l'intégralité du cache d'environnement.

Configurer l'environnement pour les tâches de job

Chaque tâche de job s'exécute dans un environnement isolé qui comprend un environnement de base et toutes les bibliothèques supplémentaires que vous spécifiez. L'environnement de base définit la version d'exécution Python et Scala et les bibliothèques préinstallées. Les tâches héritent de l'ensemble par default de bibliothèques installées à partir de la version de l'environnement. Pour voir ce qui est inclus, consultez la section Bibliothèques Python installées ou Bibliothèques Java et Scala installées de la version de l'environnement que vous utilisez.

Vous pouvez compléter les bibliothèques préinstallées avec des bibliothèques provenant de fichiers Workspace, de volumes Unity Catalog, ou de repositories de packages publics. Seules les dépendances requises pour la tâche sont installées à l'exécution.

info

Aperçu

L'utilisation du compute serverless pour les tâches JAR est en aperçu public.

info

Bêta

La sélection d'un environnement de base géré est en version bêta. La liste déroulante **Environnement de base** dans la boîte de dialogue **Configurer l'environnement** vous permet de sélectionner des environnements fournis par Databricks (tels que Standard et ML) ou des environnements configurés par le Workspace. Sans cette fonctionnalité, la boîte de dialogue affiche une liste déroulante **Version de l'environnement** à la place. Les administrateurs du Workspace peuvent activer cette fonctionnalité depuis la page **Aperçus**.

Boîte de dialogue de configuration de l&#39;environnement affichant le menu déroulant Environnement de base développé avec les environnements Databricks et les sections d&#39;environnements Workspace

Configurez l’environnement par type de tâche

La façon dont vous configurez les environnements dans un Job dépend du type de tâche :

Les tâches de Notebook utilisent par default l'**Environnement du Notebook**, qui utilise l'environnement de base configuré et les dépendances du notebook. Vous pouvez remplacer cela par un environnement au niveau du Job.

Menu déroulant Environnement et Bibliothèques pour une tâche Notebook affichant les options Environnement Notebook et Environnement de jobs

Pour configurer un environnement au niveau du Job :

  1. Dans la configuration de la tâche, cliquez sur le menu déroulant Environnement et bibliothèques.

  2. Dans Environnement de Jobs , cliquez sur l'icône en forme de crayon à côté de Default , ou cliquez sur + Ajouter un nouvel environnement de jobs .

  3. Dans la boîte de dialogue Configurer l'environnement , sélectionnez dans le menu déroulant Environnement de base :

    • Environnements Databricks : Options fournies par Databricks, telles que Standard et ML .
    • Environnements de Workspace : Environnements personnalisés configurés par votre administrateur de Workspace. Voir Gérer les environnements de base du workspace.
    • Plus : Versions précédentes et Personnalisé (spécifier un fichier YAML).
  4. Sous Dépendances , ajoutez des bibliothèques supplémentaires. Vous pouvez spécifier une bibliothèque dans n'importe quel format valide dans un fichier requirements.txt, ou utiliser un chemin absolu vers un fichier workspace ou un volume Unity Catalog.

  5. Cliquez sur Confirmer .

remarque

Si votre workspace ne dispose pas de l'environnement de base du workspace pour l'aperçu des Jobs activé, la boîte de dialogue **Configurer l'environnement** affiche une liste déroulante **Version de l'environnement** au lieu de **Environnement de base**.

Pour configurer l'environnement, sélectionnez une version, puis cliquez sur + Ajouter une bibliothèque . Vous pouvez spécifier un chemin d'accès à un fichier de Workspace (commençant par /Workspace/), un chemin d'accès à un volume Unity Catalog (commençant par /Volumes/) ou une référence à un fichier de dépendances (par exemple, -r /Workspace/path/to/requirements.txt).

Compatibilité de l'environnement et du compute

L'environnement de base que vous sélectionnez doit être compatible avec le type de compute de la tâche. Par exemple, un environnement conçu pour le compute GPU n’est pas compatible avec le compute CPU. Dans l'interface utilisateur des Jobs, les environnements incompatibles ne sont pas disponibles dans le menu déroulant de l'environnement de base.

Lorsque vous configurez une tâche de Notebook, le type de compute (CPU ou GPU) et l'environnement de base peuvent provenir des paramètres du Job ou des paramètres du Notebook.

  • Si vous définissez un accélérateur matériel (GPU) au niveau du job, vous devez également sélectionner un environnement de base au niveau du job. Vous ne pouvez pas utiliser l'environnement du notebook avec un accélérateur au niveau du job.
  • Si vous avez des tâches Job qui référencent un notebook et que vous mettez à jour le type de compute du notebook référencé (par exemple, de CPU à GPU), les tâches existantes risquent de devenir incompatibles avec leur environnement configuré. Vérifiez les paramètres d'environnement de votre Job après avoir modifié la configuration de compute du notebook.
  • Pour les utilisateurs de l'API : si vous définissez l'environnement de base au niveau du Job mais que le Notebook définit le type de compute, Databricks valide la compatibilité au moment de l'exécution, et non au moment de la création du Job. Si la configuration est incompatible, l'exécution échoue avec une erreur.