メインコンテンツまでスキップ

Databricks Apps の使用を開始する

備考

プレビュー

Databricks Apps は パブリック プレビュー段階です。

この記事は、ローカル開発環境で簡単なアプリを作成し、そのアプリを Databricks ワークスペースにデプロイする手順の例を使用して、Databricks Apps の使用を開始するのに役立ちます。 この例では、次の操作について説明します。

  • アプリをローカルで作成してテストします。
  • ローカルでテストした後、Databricks CLI を使用してアプリを Databricks ワークスペースに追加します。
  • ワークスペースでアプリの詳細ページを表示する。
  • アプリのソース コードとアーティファクトをワークスペースにコピーします。
  • ワークスペースでアプリの出力を表示する。

例をステップ実行する前に、Databricks ワークスペースとローカル開発環境が 要件を満たしていることを確認してください。

Databricks では、アプリの開発時に Python 仮想環境を使用することをお勧めします。 この記事の例では、 pipenv を使用して仮想環境を作成します。 詳細については、「 Python Virtual Environments: 入門」を参照してください。

この例は、Databricks アプリ テンプレート ライブラリでも使用できます。 「Databricks Apps UI でアプリを作成するにはどうすればよいですか?」を参照してください。

ステップ 1: ローカル環境を設定する

ターミナルを開き、次のコマンドを実行して次の操作を行います。

  • Python 仮想環境を作成して開始します。
  • サンプル アプリに必要な Python ライブラリをインストールします。
  • アプリのソースファイルと設定ファイル用のローカルディレクトリを作成します。
Bash
pipenv --python 3.11
pipenv shell
pip install gradio
pip install pandas
mkdir <app-dir-name>
cd <app-dir-name>

<app-dir-name> を、アプリファイルのローカルディレクトリの名前、たとえば gradio-hello-world に置き換えてください。

ステップ 2: アプリのソースと設定を追加する

  1. テキスト エディターまたはお気に入りの統合開発環境 (IDE) で、次のコードを使用して新しい Python ファイルを作成し、作成したディレクトリに保存します。 この例では、Python ファイルのファイル名 app.py を使用しています。

    Python
    import gradio as gr
    import pandas as pd

    data = pd.DataFrame({'x': [x for x in range(30)],
    'y': [2 ** x for x in range(30)]})

    # Display the data with Gradio
    with gr.Blocks(css='footer {visibility: hidden}') as gradio_app:
    with gr.Row():
    with gr.Column(scale=3):
    gr.Markdown('# Hello world!')
    gr.ScatterPlot(value=data, height=400, width=700,
    container=False, x='x', y='y',
    y_title='Fun with data', x_title='Apps')

    if __name__ == '__main__':
    gradio_app.launch()
  2. テキストエディタまたはIDEで、次の内容で新しいYAMLファイルを作成し、作成したディレクトリ内の app.yaml という名前のファイルに保存します。

    YAML
    command: ['python', '<app-name.py>']

    <app-name.py> を、アプリのコードを含む Python ファイルの名前に置き換えます。たとえば、 app.py.

ステップ3: アプリをローカルでテストしてください

  1. アプリをローカルでテストするには、ターミナルを開いて python <app-name.py>を実行し、 <app-name.py> をアプリのコードを含むファイルの名前に置き換えます。

    Bash
    python app.py
    Running on local URL: http://127.0.0.1:7860
    ...
  2. アプリの出力を表示するには、ブラウザウィンドウで http://127.0.0.1:7860 を開きます。

    hello world アプリの出力をローカルで表示する

手順 4: アプリをワークスペースにデプロイする

ワークスペースに新しいアプリを作成し、ローカル環境からワークスペースにコードをデプロイするには、ターミナルを開き、次の手順を実行します。

  1. Databricks ワークスペースにアプリを作成します。
注記
  • Databricks アプリに割り当てられた名前は、アプリの作成後に変更することはできず、Databricks ワークスペースにアクセスできるすべてのユーザーは、ワークスペース内のすべての Databricks アプリの名前とデプロイ履歴を確認できます。 さらに、アプリ名はシステムテーブルに書き込まれるレコードに含まれます。 この可視性のため、Databricks アプリに名前を付けるときに機密情報を含めないでください。

  • 名前は、アプリをホストする Databricks ワークスペース内で一意である必要があり、小文字、数字、ハイフンのみを含める必要があります。

Bash
databricks apps create <app-name>

<app-name> をアプリの名前に置き換えてください。 たとえば、 gradio-hello-world. 2. createコマンドの完了時にワークスペースにアプリを表示するには、サイドバーで「コンピュートアイコン コンピュート 」をクリックし、「 アプリ」タブに移動して、「 名前 」列でアプリへのリンクをクリックします。

アプリの作成後にアプリの詳細ページを表示する 3. ローカル環境から Databricks ワークスペースにファイルを同期します。 ローカル環境からワークスペースにファイルを同期するコマンド (ファイルのワークスペース パスを含む) は、 ソース ファイルを Databricks に同期する ] の下にあります。 [ アイコンをコピーしてください ] をクリックして、このコマンドをコピーします。

  1. ターミナルで、アプリ ファイルが含まれているディレクトリに切り替えて、コピーした sync コマンドを実行します。
注記

databricks sync コマンドで転送したくない特定のファイルまたはディレクトリがローカル app ディレクトリにある場合は、それらのファイルまたはディレクトリをローカル app ディレクトリの .gitignore ファイルに追加します。たとえば、アプリと同じディレクトリに Python 仮想環境ディレクトリがある場合、ディレクトリの名前を .gitignore ファイルに追加すると、 sync コマンドはファイルを転送するときにそのディレクトリをスキップします。

Bash
databricks sync --watch . /Workspace/Users/user@databricks.com/gradio-hello-world
...
Initial Sync Complete
  1. syncコマンドの完了時にワークスペース内の同期されたファイルを表示するには、サイドバーの [ワークスペースアイコン ワークスペース] をクリックし、アプリ用に作成されたディレクトリに移動します。

  2. アプリをデプロイするには、ターミナルで次のコマンドを実行し、 <app-path> をアプリ ファイルへのワークスペース パスに置き換えます。

    databricks apps deploy gradio-hello-world --source-code-path <app-path>

  3. デプロイ状況を確認するには、アプリの詳細ページにアクセスしてください。

    アプリ展開後にアプリの詳細ページを見る

    デプロイされたアプリの出力を表示するには、詳細ページのアプリ名の下にあるアプリのリンクをクリックします。

    デプロイされたアプリへのリンク

次のステップ

Databricks Apps UI でアプリを作成する方法については、「 Databricks Apps UI でアプリを作成するにはどうすればよいですか?」を参照してください。