共用方式為


開始使用 Databricks Apps

重要

Databricks Apps 處於 公開預覽狀態

本文可協助您使用逐步範例開始使用 Databricks Apps,以在本機開發環境中建立簡單的應用程式,並將應用程式部署至 Azure Databricks 工作區。 此範例會逐步引導您完成:

  • 在本機建立及測試應用程式。
  • 在本機測試之後,使用 Databricks CLI 將應用程式新增至 Azure Databricks 工作區。
  • 在工作區中檢視應用程式的詳細數據頁面。
  • 將應用程式的原始程式碼和成品複製到您的工作區。
  • 在工作區中檢視應用程式的輸出。

逐步執行範例之前,請確定您的 Azure Databricks 工作區和本機開發環境符合 需求

Databricks 建議在開發應用程式時使用 Python 虛擬環境。 本文中的範例會使用 pipenv 來建立虛擬環境。 若要深入瞭解,請參閱 Python 虛擬環境:入門

此範例也可在 Databricks Apps 範本連結庫中取得。 請參閱 如何? 在 Databricks Apps UI 中建立應用程式?

步驟 1:設定本機環境

開啟終端機,然後執行下列命令以:

  • 建立並啟動 Python 虛擬環境。
  • 安裝範例應用程式所需的 Python 連結庫。
  • 為應用程式的來源和組態檔建立本機目錄。
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

    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 的檔案:

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

    將取代 <app-name.py> 為包含應用程式程式代碼的 Python 檔名。 例如: app.py

步驟 3:在本機測試您的應用程式

  1. 若要在本機測試您的應用程式,請開啟終端機並執行 python <app-name.py>,並將 取代 <app-name.py> 為包含應用程式程式代碼的檔名。

    python app.py
    Running on local URL:  http://127.0.0.1:7860
    ...
    
  2. 若要檢視應用程式的輸出,請在瀏覽器視窗中開啟 http://127.0.0.1:7860

    在本機檢視 hello world 應用程式的輸出

步驟 4:將應用程式部署至工作區

若要在工作區中建立新的應用程式,並將程式代碼從本機環境部署到工作區,請開啟終端機並完成下列步驟。

  1. 在 Azure Databricks 工作區中建立應用程式。

    注意

    • 在建立應用程式之後,無法變更指派給 Databricks 應用程式的名稱,而且任何具有 Azure Databricks 工作區存取權的使用者都可以查看工作區中所有 Databricks 應用程式的名稱和部署歷程記錄。 此外,應用程式名稱會包含在寫入系統數據表的記錄中。 由於此可見度,您不應該在命名 Databricks 應用程式時包含敏感性資訊。
    • 此名稱在裝載應用程式的 Azure Databricks 工作區中必須是唯一的,而且必須只包含小寫字母、數位和連字元。
    databricks apps create <app-name>
    

    將取代 <app-name> 為應用程式的名稱。 例如: gradio-hello-world

  2. 若要在命令完成時create檢視工作區中的應用程式,請在計算圖示提要欄中按兩下 [計算],移至 [應用程式] 索引標籤,然後按兩下 [名稱] 資料行中應用程式的連結。

    在應用程式建立之後檢視應用程式詳細數據頁面

  3. 將檔案從本機環境同步至 Azure Databricks 工作區。 將檔案從本機環境同步至工作區的命令,包括檔案的工作區路徑,位於 [將來源檔案同步至 Databricks] 底下。 按兩下 複製圖示 即可複製此命令。

  4. 在終端機中,切換至包含您應用程式檔案的目錄,然後執行複製的 sync 命令。

    注意

    如果您的本機應用程式目錄中有您不想由 databricks sync 命令傳輸的特定檔案或目錄,請將這些檔案或目錄新增至 .gitignore 本機應用程式目錄中的檔案。 例如,如果您在與應用程式相同的目錄中有 Python 虛擬環境目錄,請將目錄的名稱新增至 .gitignore 檔案,而 sync 命令會在傳輸檔案時略過該目錄。

    databricks sync --watch . /Workspace/Users/user@databricks.com/gradio-hello-world
    ...
    Initial Sync Complete
    
  5. 若要在命令完成時sync檢視工作區中的同步檔案,請按下工作區圖示提要字段中的 [工作區],然後移至為您的應用程式建立的目錄。

  6. 若要部署應用程式,請在終端機中執行下列命令,並將 取代 <app-path> 為應用程式檔案的工作區路徑。

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

  7. 若要檢視部署狀態,請移至應用程式的詳細數據頁面。

    在應用程式部署之後檢視應用程式詳細數據頁面

    若要檢視已部署應用程式的輸出,請單擊詳細數據頁面上應用程式名稱下方的應用程序連結。

    連結至已部署的應用程式

下一步

若要瞭解如何在 Databricks Apps UI 中建立應用程式,請參閱 如何? 在 Databricks Apps UI 中建立應用程式?