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

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

サーバーレス環境パネル

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

重要

サーバーレス ノートブックでの依存関係として 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
    
  2. YAML ファイルを、ワークスペース ファイルとして、または Unity Catalog ボリュームにアップロードします。 「ファイルをインポートする」または「Unity Catalog ボリュームにファイルをアップロードする」をご覧ください。

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

  4. [基本環境] フィールドで、アップロードした YAML ファイルのパスを入力するか、ファイルに移動してそれを選びます。

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

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

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

[環境] パネルの [依存関係] タブを使って、サーバーレス コンピューティングに接続されているノートブックに依存関係をインストールすることもできます。

  1. ノートブックの右側にある 環境 ボタンをクリックして、[環境] パネルを展開します。 このボタンは、ノートブックがサーバーレス コンピューティングに接続されている場合にのみ表示されます。
  2. [依存関係] セクションの [依存関係の追加] をクリックして、フィールドにライブラリ依存関係のパスを入力します。 requirements.txt ファイルで有効な任意の形式で、依存関係を指定できます。
  3. [適用] をクリックします。 これにより、ノートブック仮想環境に依存関係がインストールされて、Python プロセスが再起動されます。

Note

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

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

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

環境をリセットする

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

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

Note

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

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

Note

コア ノートブックまたは Apache Spark 環境を中断または変更するパッケージをインストールする場合は、仮想環境をリセットします。 ノートブックをサーバーレス コンピューティングからデタッチして再アタッチしても、環境キャッシュ全体がクリアされるとは限りません。

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

Python スクリプト、Python wheel、dbt タスクなど、サポートされているその他のタスクの種類の場合は、既定の環境にインストール済みの Python ライブラリが含まれます。 インストールされているライブラリの一覧を確認するには、ワークフローのサーバーレス コンピューティングのデプロイの基になっている Databricks Runtime バージョンのリリース ノートで、「インストールされている Python ライブラリ」セクションをご覧ください。 ワークフローのサーバーレス コンピューティングで使われている現在の Databricks Runtime バージョンについては、「サーバーレス コンピューティングのリリース ノート」をご覧ください。 タスクにインストールされていない Python ライブラリが必要な場合は、ワークスペース ファイル、Unity カタログ ボリューム 、パブリック パッケージ リポジトリからライブラリをインストールできます。 タスクを作成または編集するときにライブラリを追加するには:

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

    既定の環境を編集する

  2. [環境の構成] ダイアログで、[+ ライブラリの追加] をクリックします。

  3. [ライブラリ] のドロップダウン メニューから依存関係の種類を選びます。

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

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

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

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

    タスク ライブラリを追加する

  1. [確認] をクリックするか、[+ ライブラリの追加] をクリックして別のライブラリを追加します。
  2. タスクを追加している場合は、[タスクの作成] をクリックします。 タスクを編集している場合は、[タスクの保存] をクリックします。