ノートブックの依存関係をインストールする

環境 サイドパネルを使用して、 サーバレスノートブックにおけるPythonの依存関係をインストールできます。このパネルは、ノートブックのライブラリ要件を編集、表示、エクスポートするための単一の場所を提供します。 これらの依存関係は、基本環境を使用して追加することも、個別に追加することもできます。

サーバレス environment panel with budget ポリシー

ノートブック以外のタスクについては、 「ノートブック以外のタスクの環境と依存関係を構成する」を参照してください。

重要

PySparkまたはPySparkをインストールするライブラリをサーバーレス ノートブックへの依存関係としてインストールしないでください。 これを行うと、セッションが停止し、エラーが発生します。 このような場合は、環境をリセットしてください

基本環境を構成する

ベース環境は、ワークスペース ファイルとして、またはUnity Catalogボリューム上に保存される、追加の環境依存関係を指定する YAML ファイルです。 基本環境はノートブック間で共有できます。 基本環境を構成するには:

  1. Python 仮想環境の設定を定義する YAML ファイルを作成します。 MLflow プロジェクト環境仕様に基づく次の YAML の例では、いくつかのライブラリ依存関係を持つ基本環境を定義しています。

    client: "1"
    dependencies:
      - --index-url https://pypi.org/simple
      - -r "/Workspace/Shared/requirements.txt"
      - cowsay==6.1
      - "/Workspace/Shared/Path/To/simplejson-3.19.3-py3-none-any.whl"
      - git+https://github.com/databricks/databricks-cli
    
  2. YAML ファイルをワークスペース ファイルとして、または Unity Catalog ボリュームにアップロードします。 「ファイルのインポート」または「Unity Catalog ボリュームへのファイルのアップロード」を参照してください。

  3. ノートブックの右側にある環境ボタンをクリックして環境パネルを展開します。 このボタンは、コンピュータがサーバレス コンピュートに接続されている場合にのみ表示されます。

  4. [Base Environment] フィールドに、アップロードした YAML ファイルのパスを入力するか、そのファイルに移動して選択します。

  5. [適用] をクリックします。これにより、ノートブックの仮想環境に依存関係がインストールされ、Python プロセスが再起動されます。

ユーザーは、依存関係を個別にインストールすることで、基本環境で指定された依存関係をオーバーライドできます。

依存関係を個別に追加する

環境パネルの依存関係タブを使用して、サーバレス コンピュートに接続されたコンピュータに依存関係をインストールすることもできます。

  1. ノートブックの右側にある環境ボタンをクリックして環境パネルを展開します。 このボタンは、コンピュータがサーバレス コンピュートに接続されている場合にのみ表示されます。

  2. 「依存関係」セクションで、 「依存関係の追加」をクリックし、フィールドにライブラリ依存関係のパスを入力します。 依存関係は、 requirements.txt ファイルで有効な任意の形式で指定できます。

  3. [適用] をクリックします。これにより、ノートブックの仮想環境に依存関係がインストールされ、Python プロセスが再起動されます。

注:

サーバレス コンピュートを使用するジョブは、ノートブックのコードを実行する前にノートブックの環境仕様をインストールします。 つまり、ノートブックをジョブとしてスケジュールするときに依存関係を追加する必要がありません。 「環境と依存関係の構成」を参照してください。

インストールされている依存関係と pip ログを表示する

インストールされている依存関係を表示するには、ノートブックの[環境]サイド パネルで[インストール済み] をクリックします。 パネルの下部にある「Pip ログ」をクリックすると、ノートブック環境の Pip インストール ログも表示されます。

環境をリセットする

ノートブックがサーバーレス コンピュート に接続されている場合、 Databricksノートブックの仮想環境のコンテンツを自動的にキャッシュします。 つまり、既存のノートブックを開いたときに、非アクティブのために切断されている場合でも、環境パネルで指定された Python 依存関係を再インストールする必要は通常ありません。

Python 仮想環境のキャッシュはジョブにも適用されます。 つまり、必要な依存関係がすでに利用可能であるため、後続のジョブの実行が高速になります。

注:

サーバレスのジョブで使用されるカスタムPythonパッケージの実装を変更する場合は、ジョブが最新の実装を取得できるように、そのバージョン番号も更新する必要があります。

環境キャッシュをクリアし、サーバレス コンピュートに接続されたコンピュータの環境パネルで指定された依存関係の新規インストールを実行するには、 [適用]の横にある矢印をクリックし、 [環境のリセット]をクリックします。

注:

コアノートブックまたは Apache Spark 環境を破壊または変更するパッケージをインストールする場合は、仮想環境をリセットします。 コンピュータをサーバレス コンピュートから切り離して再度接続しても、必ずしも環境キャッシュ全体がクリアされるわけではありません。

ノートブック以外のタスクの環境と依存関係を構成する

Pythonスクリプト、 Python wheel 、 dbtタスクなど、サポートされているその他のタスク タイプの場合、デフォルト 環境にインストールされたPythonライブラリが含まれます。 インストールされているライブラリの一覧を確認するには、サーバーレス ワークフロー デプロイメントのベースとなる バージョンのリリース ノートの Python「インストールされている ライブラリ」 セクションを参照してください。Databricks Runtimeワークフローで使用されている現在のDatabricks Runtimeバージョンを確認するには、サーバレス コンピュート リリースノート参を照してください。 タスクにインストールされていないPythonライブラリが必要な場合は、ワークスペースファイル、 Unity Catalogボリューム、またはパブリックパッケージリポジトリからライブラリをインストールできます。 タスクを作成または編集するときにライブラリを追加するには:

  1. 環境とライブラリのドロップダウンメニューで、編集アイコンデフォルト環境の横にある をクリックするか、 + 新しい環境を追加 をクリックします。

    デフォルト環境を編集する
  2. 環境の設定ダイアログで、 + ライブラリの追加をクリックします。

  3. ライブラリの下のドロップダウン メニューから依存関係のタイプを選択します。

  4. [ファイル パス]テキスト ボックスに、ライブラリへのパスを入力します。

  • ワークスペース ファイル内のPython wheelの場合、パスは絶対パスで、/Workspace/ で始まる必要があります。

  • Python wheelボリューム内のUnity Catalog の場合、パスは/Volumes/<catalog>/<schema>/<volume>/<path>.whl である必要があります。

  • requirements.txtファイルの場合は、「 PyPi 」を選択し、「 -r /path/to/requirements.txt」と入力します。

    タスクライブラリを追加する
  1. 別のライブラリを追加するには、 「確認」または「 + ライブラリの追加」をクリックします。

  2. タスクを追加する場合は、 「タスクの作成」をクリックします。 タスクを編集している場合は、 「タスクを保存」をクリックします。