Delen via


Aan de slag met Databricks-apps

Belangrijk

Databricks-apps is beschikbaar als openbare preview.

Dit artikel helpt u aan de slag te gaan met Databricks-apps met behulp van een stapsgewijs voorbeeld om een eenvoudige app te maken in uw lokale ontwikkelomgeving en de app te implementeren in uw Azure Databricks-werkruimte. In dit voorbeeld wordt u begeleid bij het volgende:

  • De app lokaal maken en testen.
  • Nadat u de app lokaal hebt getest, gebruikt u de Databricks CLI om de app toe te voegen aan uw Azure Databricks-werkruimte.
  • Bekijk de detailpagina voor de app in uw werkruimte.
  • Kopieer de broncode en artefacten voor de app naar uw werkruimte.
  • Bekijk de uitvoer van de app in uw werkruimte.

Voordat u het voorbeeld doorloopt, moet u ervoor zorgen dat uw Azure Databricks-werkruimte en lokale ontwikkelomgeving aan de vereisten voldoen.

Databricks raadt aan om een virtuele Python-omgeving te gebruiken bij het ontwikkelen van apps. In het voorbeeld in dit artikel wordt pipenv gebruikt om een virtuele omgeving te maken. Zie Virtuele Python-omgevingen voor meer informatie: Een primer.

Dit voorbeeld is ook beschikbaar in de Databricks Apps-sjabloonbibliotheek. Zie Hoe kan ik een app maken in de gebruikersinterface van Databricks Apps?

Stap 1: Uw lokale omgeving instellen

Open een terminal en voer de volgende opdrachten uit om:

  • Een virtuele Python-omgeving maken en starten.
  • Installeer de Python-bibliotheken die zijn vereist voor de voorbeeld-app.
  • Maak een lokale map voor de bron- en configuratiebestanden voor uw app.
pipenv --python 3.11
pipenv shell
pip install gradio
pip install pandas
mkdir <app-dir-name>
cd <app-dir-name>

Vervang <app-dir-name> bijvoorbeeld door de naam van een lokale map voor uw app-bestanden gradio-hello-world.

Stap 2: De bron en configuratie voor uw app toevoegen

  1. Maak in een teksteditor of uw favoriete IDE (Integrated Development Environment) een nieuw Python-bestand met de volgende code en sla het op in de map die u hebt gemaakt. In dit voorbeeld wordt de bestandsnaam app.py voor het Python-bestand gebruikt:

    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. Maak in een teksteditor of een IDE een nieuw YAML-bestand met de volgende inhoud en sla het op in een bestand met de naam app.yaml in de map die u hebt gemaakt:

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

    Vervang <app-name.py> door de naam van het Python-bestand met de code voor de app. Bijvoorbeeld: app.py.

Stap 3: Uw app lokaal testen

  1. Als u uw app lokaal wilt testen, opent u een terminal en voert u deze uit en vervangt python <app-name.py><app-name.py> u de naam van het bestand met de code voor de app.

    python app.py
    Running on local URL:  http://127.0.0.1:7860
    ...
    
  2. Als u de uitvoer van de app wilt weergeven, opent http://127.0.0.1:7860 u deze in een browservenster.

    De uitvoer van de hallo wereld-app lokaal weergeven

Stap 4: De app implementeren in uw werkruimte

Als u een nieuwe app in uw werkruimte wilt maken en de code vanuit uw lokale omgeving wilt implementeren in de werkruimte, opent u een terminal en voert u de volgende stappen uit.

  1. Maak de app in uw Azure Databricks-werkruimte.

    Notitie

    • De naam die is toegewezen aan een Databricks-app kan niet worden gewijzigd nadat de app is gemaakt en elke gebruiker met toegang tot een Azure Databricks-werkruimte kan de namen en implementatiegeschiedenis van alle Databricks-apps in de werkruimte zien. Daarnaast wordt de naam van de app opgenomen in records die naar systeemtabellen zijn geschreven. Vanwege deze zichtbaarheid moet u geen gevoelige informatie opnemen bij het benoemen van uw Databricks-apps.
    • De naam moet uniek zijn in de Azure Databricks-werkruimte die als host fungeert voor de app en mag alleen kleine letters, cijfers en afbreekstreepjes bevatten.
    databricks apps create <app-name>
    

    Vervang <app-name> door een naam voor uw app. Bijvoorbeeld: gradio-hello-world.

  2. Als u de app in uw werkruimte wilt weergeven wanneer de create opdracht is voltooid, klikt u in de zijbalk op rekenpictogram Compute, gaat u naar het tabblad Apps en klikt u op de koppeling naar uw app in de kolom Naam.

    De pagina met app-details weergeven na het maken van de app

  3. Synchroniseer de bestanden vanuit uw lokale omgeving met uw Azure Databricks-werkruimte. De opdracht voor het synchroniseren van de bestanden vanuit uw lokale omgeving naar uw werkruimte, inclusief het werkruimtepad voor de bestanden, bevindt zich onder Bronbestanden synchroniseren in Databricks. Klik Pictogram Kopiëren hier om deze opdracht te kopiëren.

  4. Ga in een terminal naar de map met uw app-bestanden en voer de gekopieerde sync opdracht uit.

    Notitie

    Als er specifieke bestanden of mappen in uw lokale app-map staan die u niet wilt overdragen door de databricks sync opdracht, voegt u deze bestanden of mappen toe aan een .gitignore bestand in de lokale app-map. Als u bijvoorbeeld een virtuele Python-omgevingsmap hebt in dezelfde map als uw app, voegt u de naam van de map toe aan het .gitignore bestand en slaat de sync opdracht die map over wanneer u bestanden overdraagt.

    databricks sync --watch . /Workspace/Users/user@databricks.com/gradio-hello-world
    ...
    Initial Sync Complete
    
  5. Als u de gesynchroniseerde bestanden in uw werkruimte wilt weergeven wanneer de sync opdracht is voltooid, klikt u op Werkruimtepictogram Werkruimte in de zijbalk en gaat u naar de map die voor uw app is gemaakt.

  6. Als u de app wilt implementeren, voert u de volgende opdracht uit in een terminal, waarbij u het werkruimtepad naar uw app-bestanden vervangt <app-path> .

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

  7. Als u de implementatiestatus wilt weergeven, gaat u naar de pagina met details voor de app.

    De pagina met app-details weergeven na de implementatie van de app

    Als u de uitvoer van de geïmplementeerde app wilt weergeven, klikt u op de app-koppeling onder de naam van de app op de pagina met details.

    Koppeling naar de geïmplementeerde app

Volgende stappen

Zie Hoe kan ik een app maken in de gebruikersinterface van Databricks Apps voor meer informatie over het maken van apps in de gebruikersinterface van Databricks Apps.