Поделиться через


Начало работы с приложениями Databricks

Внимание

Приложения Databricks доступны в общедоступной предварительной версии.

Эта статья поможет вам приступить к работе с Databricks Apps с помощью пошагового примера для создания простого приложения в локальной среде разработки и развертывания приложения в рабочей области Azure Databricks. В этом примере показано, как выполнить следующие действия.

  • Создание и тестирование приложения локально.
  • После локального тестирования с помощью интерфейса командной строки Databricks для добавления приложения в рабочую область Azure Databricks.
  • Просмотр страницы сведений для приложения в рабочей области.
  • Копирование исходного кода и артефактов приложения в рабочую область.
  • Просмотр выходных данных приложения в рабочей области.

Прежде чем выполнить пошаговое выполнение примера, убедитесь, что рабочая область Azure Databricks и локальная среда разработки соответствуют требованиям.

Databricks рекомендует использовать виртуальную среду Python при разработке приложений. В примере в этой статье используется pipenv для создания виртуальной среды. Дополнительные сведения см. в статье о виртуальных средах Python: праймер.

Этот пример также доступен в библиотеке шаблонов Databricks Apps. См. Разделы справки создание приложения в пользовательском интерфейсе Databricks Apps?.

Шаг 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 со следующим кодом и сохраните его в созданном каталоге. В этом примере используется имя 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. В текстовом редакторе или интегрированной среде разработки создайте файл 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. Чтобы просмотреть приложение в рабочей области, когда команда завершится, на боковой панели щелкните значок вычислений, перейдите на вкладку "Приложения" и щелкните на ссылку вашего приложения в столбце "Имя" .

    Просмотр страницы сведений о приложении после создания приложения

  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, см. Разделы справки создать приложение в пользовательском интерфейсе Databricks Apps?.