Delen via


Een geparameteriseerd notebook maken met behulp van Papermill

Met parameters in Azure Data Studio wordt hetzelfde notebook uitgevoerd met een andere set parameters.

In dit artikel leest u hoe u een geparameteriseerd notebook maakt en uitvoert in Azure Data Studio met behulp van de Python-kernel.

Notitie

Op dit moment kunt u parameters gebruiken met Python-, PySpark-, PowerShell- en .NET Interactive-kernels.

Vereisten

Papermill installeren en instellen in Azure Data Studio

Alle stappen in deze sectie worden uitgevoerd in een Azure Data Studio-notebook.

  1. Maak een nieuwe notebook. Kernel wijzigen in Python 3:

    Schermopname van de menuoptie Nieuw notitieblok en het instellen van de kernelwaarde op Python 3.

  2. Als u wordt gevraagd om uw Python-pakketten bij te werken wanneer uw pakketten moeten worden bijgewerkt, selecteert u Ja:

    Schermopname van de dialoogvensterprompt voor het bijwerken van Python-pakketten.

  3. Papermill installeren:

    import sys
    !{sys.executable} -m pip install papermill --no-cache-dir --upgrade
    

    Controleer of Papermill is geïnstalleerd:

    import sys
    !{sys.executable} -m pip list
    

    Schermopname van het selecteren van Papermill in een lijst met toepassingsnamen.

  4. Als u wilt controleren of Papermill correct is geïnstalleerd, controleert u de versie van Papermill:

    import papermill
    papermill
    

    Schermopname van de installatievalidatie voor Papermill.

Voorbeeld van parameterisering

U kunt een voorbeeld van een notebookbestand gebruiken om de stappen in dit artikel te doorlopen:

  1. Ga naar het notebookbestand in GitHub. Selecteer Onbewerkt.
  2. Selecteer Ctrl+S of klik met de rechtermuisknop en sla het bestand op met de extensie .ipynb.
  3. Open het bestand in Azure Data Studio.

Een geparameteriseerd notebook instellen

U kunt beginnen met het openen van het voorbeeldnotebook in Azure Data Studio of de volgende stappen uitvoeren om een notebook te maken. Probeer vervolgens verschillende parameters te gebruiken. Alle stappen worden uitgevoerd in een Azure Data Studio-notebook.

  1. Controleer of kernel is ingesteld op Python 3:

    Schermopname van de kernelwaarde voor Python 3.

  2. Maak een nieuwe codecel. Selecteer Parameters om de cel als parametercel te taggen.

    x = 2.0
    y = 5.0
    

    Schermopname van het maken van een nieuwe parametercel met Parameters geselecteerd.

  3. Voeg andere cellen toe om verschillende parameters te testen:

    addition = x + y
    multiply = x * y
    
    print("Addition: " + str(addition))
    print("Multiplication: " + str(multiply))
    

    Nadat alle cellen zijn uitgevoerd, ziet de uitvoer er ongeveer als volgt uit:

    Schermopname van de uitvoer van cellen die zijn toegevoegd om nieuwe parameters te testen.

  4. Sla het notebook op als Input.ipynb:

    Schermopname van het opslaan van het notebookbestand.

Een Papermill-notebook uitvoeren

U kunt Papermill op twee manieren uitvoeren:

  • Opdrachtregelinterface (Command-line Interface, CLI)
  • Python-API

Geparameteriseerde CLI-uitvoering

Als u een notebook wilt uitvoeren met behulp van de CLI, voert u in de terminal de papermill opdracht in met het invoernotitieblok, de locatie voor het uitvoernotitieblok en de opties.

Notitie

Zie de Papermill CLI-documentatie voor meer informatie.

  1. Voer het invoernotitieblok uit met nieuwe parameters:

    papermill Input.ipynb Output.ipynb -p x 10 -p y 20
    

    Met deze opdracht wordt het invoernotitieblok uitgevoerd met nieuwe waarden voor parameters x en y.

  2. Een nieuwe cel met # Injected-Parameters het label bevat de nieuwe parameterwaarden die zijn doorgegeven via de CLI. De nieuwe # Injected-Parameters waarden worden gebruikt voor de nieuwe uitvoer die wordt weergegeven in de laatste cel:

    Schermopname van de uitvoer voor nieuwe parameters.

Uitvoering van geparameteriseerde Python-API

Notitie

Zie de Documentatie van Papermill Python voor meer informatie.

  1. Maak een nieuwe notebook. Kernel wijzigen in Python 3:

    Schermopname van de menuoptie Nieuw notitieblok en het instellen van de kernelwaarde op Python 3.

  2. Voeg een nieuwe codecel toe. Gebruik vervolgens de Papermill Python-API om de uitvoerparameternotitieblok uit te voeren en te genereren:

    import papermill as pm
    
    pm.execute_notebook(
    '/Users/vasubhog/GitProjects/AzureDataStudio-Notebooks/Demo_Parameterization/Input.ipynb',
    '/Users/vasubhog/GitProjects/AzureDataStudio-Notebooks/Demo_Parameterization/Output.ipynb',
    parameters = dict(x = 10, y = 20)
    )
    

    Schermopname van de uitvoering van de Python-API.

  3. Een nieuwe cel met # Injected-Parameters het label bevat de nieuwe parameterwaarden die zijn doorgegeven. De nieuwe # Injected-Parameters waarden worden gebruikt voor de nieuwe uitvoer die wordt weergegeven in de laatste cel:

    Schermopname van de uitvoer voor nieuwe parameters.

Volgende stappen

Meer informatie over notebooks en parameterisatie: