Del via


Bruke Python-opplevelse på notatblokk

Python-notatblokken er en ny opplevelse som er bygget oppå Fabric-notatblokken. Det er et allsidig og interaktivt verktøy som er utformet for dataanalyse, visualisering og maskinlæring. Det gir en sømløs utviklingsopplevelse for skriving og kjøring av Python-kode. Denne funksjonen gjør det til et viktig verktøy for dataforskere, analytikere og BI-utviklere, spesielt for utforskningsoppgaver som ikke krever store data og distribuert databehandling.

Med en Python-notatblokk kan du få:

  • Flere innebygde python-kjerner: Python-notatblokker tilbyr et rent Python-kodingsmiljø uten Spark, med to versjoner av Python-kjerner – Python 3.10 og 3.11 tilgjengelig som standard, og de opprinnelige ipython-funksjonene som støttes, for eksempel iPyWidget, magiske kommandoer.

  • Kostnadseffektiv: Den nye Python-notatblokken gir kostnadsbesparende fordeler ved å kjøre på en enkelt nodeklynge med 2 vCores/16 GB minne som standard. Dette oppsettet sikrer effektiv ressursutnyttelse for datautforskningsprosjekter med mindre datastørrelse.

  • Lakehouse & Resources er opprinnelig tilgjengelige: Fabric Lakehouse sammen med innebygde ressurser for notatblokk er tilgjengelig i Python-notatblokken. Denne funksjonen gjør det enkelt for brukere å hente dataene til python-notatblokken, bare prøv å dra & slipp for å få kodesnutten.

  • Mix-programmering med T-SQL-: Python-notatblokk tilbyr en enkel måte å samhandle med Data Warehouse og SQL-endepunkter i utforskeren på, ved hjelp av datakoblingen notebookutils, og du kan enkelt kjøre T-SQL-skript under konteksten til python.

  • støtte for populære dataanalysebiblioteker: Python-notatblokker leveres med forhåndsinstallerte biblioteker som DuckDB, Polars og Scikit-learn, som gir et omfattende verktøysett for datamanipulering, analyse og maskinlæring.

  • Avansert intellisense: Python notebook tar i bruk Pylance som intellisense-motoren, sammen med andre Fabric-tilpassede språktjenester, med sikte på å gi toppmoderne kodeopplevelse for notebook-utviklere.

  • NotebookUtils & Semantic-kobling: Kraftige API-verktøysett gjør det enkelt å bruke Fabric- og Power BI-funksjoner med kode-first-opplevelse.

  • rike visualiseringsfunksjoner: Bortsett fra den populære funksjonen tabell for forhåndsvisning av rik dataramme og diagramfunksjon, støtter vi også populære visualiseringsbiblioteker som Matplotlib, Seaborn og Plotly. PowerBIClient støtter også disse bibliotekene for å hjelpe brukerne med å forstå datamønstre og innsikter bedre.

  • Common Capabilities for Fabric Notebook: Alle funksjonene på notatblokknivå gjelder naturlig for Python-notatblokk, for eksempel redigeringsfunksjoner, automatisk lagring, samarbeid, deling og tillatelsesbehandling, Git-integrering, import/eksport osv.

  • Full stack Data Science Capabilities: Den avanserte lavkodede verktøysettet Data Wrangler, maskinlæringsrammeverket MLFlow og kraftig Copilot er alle tilgjengelige på Python-notatblokken.

Slik får du tilgang til Python-notatblokk

Etter å ha åpnet en Fabric Notebook, kan du bytte til Python i rullegardinmenyen for språk på Hjem-fanen og konvertere hele notatbokoppsettet til Python.

Skjermbilde som viser bytt til Python fra menyen for notatblokkspråk.

De fleste av de vanlige funksjonene støttes som et notatblokknivå, du kan henvise Slik bruker du Microsoft Fabric-notatblokker og Utvikle, kjøre og administrere Microsoft Fabric-notatblokker for å lære detaljert bruk. Her viser vi noen viktige funksjoner som er spesifikke for Python-scenarier.

Kjør Python-notatblokker

Python-notatblokk støtter flere måter å utføre jobb på:

  • Interaktiv kjøring: Du kan kjøre en Python-notatblokk interaktivt som en opprinnelig Jupyter-notatblokk.
  • Planlegg kjøring: Du kan bruke den lettvektede planleggeropplevelsen på siden for notatblokkinnstillinger til å kjøre Python-notatblokken som en satsvis jobb.
  • Pipelinekjøring: Du kan orkestrere Python-notatblokker som notatblokkaktiviteter i pipeline. Øyeblikksbilde genereres etter kjøringen av jobben.
  • Referansekjøring: Du kan bruke notebookutils.notebook.run() eller notebookutils.notebook.runMultiple() referere til kjørte Python-notatblokker i en annen Python-notatblokk som satsvis jobb. Øyeblikksbilde genereres etter at referansekjøringen er fullført.
  • offentlig API-kjøring: Du kan planlegge at python-notatblokken kjøres med den notatblokken som kjører offentlig API, kontroller at språk- og kjerneegenskapene i notatblokkmetadataene for den offentlige API-nyttelasten er riktig angitt.

Du kan overvåke kjøredetaljene for Python-notatblokkjobben på båndfanen Kjør –>Vis alle kjøringer.

Samhandling med data

Du kan samhandle med Lakehouse, Warehouses, SQL-endepunkter og innebygde ressursmapper på Python-notatblokken.

Note

  • Python Notebook-kjøretiden leveres forhåndsinstallert med delta-rs- og duckdb-biblioteker for å støtte både lesing og skriving av Delta Lake-data. Vær imidlertid oppmerksom på at enkelte Delta Lake-funksjoner kanskje ikke støttes fullt ut for øyeblikket. For mer informasjon og de siste oppdateringene, vennligst se de offisielle delta-rs og duckdb-nettstedene .
  • Vi støtter for øyeblikket ikke deltalake(delta-rs) versjon 1.0.0 eller nyere. Følg med.

Lakehouse-interaksjon

Du kan angi en Lakehouse som standard, eller du kan også legge til flere Lakehouses for å utforske og bruke dem i notatblokker.

Hvis du ikke er kjent med å lese dataobjektene, for eksempel deltatabell, kan du prøve å dra og slippe filen og deltatabellen til notatblokklerretet, eller bruke rullegardinmenyen Last inn data i objektet. Notatblokk setter automatisk inn kodesnutt i kodecelle og genererer kode for å lese måldataobjektet.

Note

Hvis du støter på OOM når du laster inn et stort datavolum, kan du prøve å bruke DuckDB, Polars eller PyArrow-dataramme i stedet for pandaer.

Du finner operasjonen skriv Lakehouse i Bla gjennom kodesnutt –>Skriv data til deltatabellen.

Skjermbilde som viser skrive lakehouse operasjon.

Lagerinteraksjon og mix-programmering med T-SQL

Du kan legge til datalagre eller SQL-endepunkter fra lagerutforskeren i notatblokken. På samme måte kan du dra og slippe tabellene i notatblokklerretet, eller bruke snarveisoperasjonene i rullegardinmenyen for tabeller. Notatblokk genererer automatisk kodesnutt for deg. Du kan bruke notebookutils.data verktøy til å opprette en tilkobling med lagre og spørre dataene ved hjelp av T-SQL-setningen i konteksten til Python.

Skjermbilde som viser snarveier til lagertabellen.

Note

SQL-endepunkter er skrivebeskyttet her.

Mappe for notatblokkressurser

Den innebygde ressursmappen Notebook-ressurser er opprinnelig tilgjengelig på Python Notebook. Du kan enkelt samhandle med filene i den innebygde ressursmappen ved hjelp av Python-kode som om du arbeider med det lokale filsystemet. Miljøressursmappen støttes for øyeblikket ikke.

Kjerne operasjoner

Python notebook støtter to innebygde kjerner akkurat nå, de er Python 3.10 og Python 3.11, standard valgt kjerne er Python 3.11. du kan enkelt bytte mellom dem.

Du kan avbryte, starte på nytt eller bytte kjerne på Hjem-fanen på båndet. Avbrudd av kjerne i Python-notatblokker er det samme som å avbryte cellen i Spark-notatblokken.

Skjermbilde som viser kjerneoperasjoner.

Unormal kjerneavslutning fører til at kjøring av kode avbrytes og variabler mistes, men det stopper ikke notatblokkøkten.

Det finnes kommandoer som kan føre til at kjernen er død. For eksempel quit(), exit().

Administrasjon av biblioteket

Du kan bruke %pip og %conda kommandoer for innebygde installasjoner, kommandoene støtter både offentlige biblioteker og tilpassede biblioteker.

For tilpassede biblioteker kan du laste opp bibliotekfilene til mappen Innebygde ressurser . Vi støtter flere typer biblioteker, inkludert formater som Wheel (.whl), JAR (.jar), DLL (.dll) og Python (.py). Bare prøv å dra og slipp til filen, og kodebiten genereres automatisk.

Du må kanskje starte kjernen på nytt for å bruke de oppdaterte pakkene.

For bedre å forstå og bruke lignende kommandoer tydelig, se tabellen nedenfor.

Command/Syntax Hovedformålet Slik fungerer det i Jupyter Notebook Vanlig brukstilfelle Notes
%pip install package Installer Python-pakker Kjører pip i pythonkjernen i notatblokken Anbefalt måte å installere pakker på I Python Notebook, samme som !pip; starter ikke kjernen på nytt automatisk
!pip install package Installer Python-pakker via skall Kjører pip som en skallkommando Alternativ måte å installere pakker på I Python Notebook, samme som %pip; starter ikke kjernen på nytt automatisk
import sys; sys.exit(0) Start notatblokkkjernen på nytt Starter kjernen på nytt umiddelbart Start kjernen på nytt programmatisk Sletter alle variabler og tilstander; anbefales ikke å bruke direkte
notebookutils.session.restartPython() Start notatblokkkjernen på nytt Samtaler sys.exit(0) internt Anbefalt måte å starte kjernen på nytt Offisiell API, sikrere og mer kompatibel enn å bruke sys.exit(0) direkte

Note

  • I Python Notebook, %pip og !pip har samme oppførsel: begge installerer pakker i gjeldende kjernemiljø, og ingen av dem vil automatisk starte kjernen på nytt etter installasjonen.
  • Hvis du trenger å starte kjernen på nytt (for eksempel etter å ha installert visse pakker), anbefales det å bruke notebookutils.session.restartPython() i stedet for import sys; sys.exit(0).
    • notebookutils.session.restartPython() er en offisiell API som brytes sys.exit(0) , og den er tryggere og mer kompatibel i notatblokkmiljøer.
  • Det anbefales ikke å bruke sys.exit(0) direkte med mindre det er nødvendig.

Overvåking av ressursbruk i sanntid for Python-notatblokken

Viktig!

Denne funksjonen er i forhåndsvisning.

Med ressursovervåkingsruten kan du spore kritisk kjøretidsinformasjon, for eksempel øktvarighet, databehandlingstype og ressursmåledata i sanntid, inkludert CPU- og minneforbruk, direkte i notatblokken. Denne funksjonen gir en umiddelbar oversikt over den aktive økten og ressursene som brukes.

Ressursmonitoren forbedrer synligheten i hvordan Python-arbeidsbelastninger bruker systemressurser. Det hjelper deg med å optimalisere ytelsen, administrere kostnader og redusere risikoen for OOM-feil (tom-minne). Ved å overvåke måledata i sanntid kan du identifisere ressurskrevende operasjoner, analysere bruksmønstre og ta informerte beslutninger om skalering eller endring av kode.

For å begynne å bruke den, sett notatblokkspråket til Python og start en økt. Du kan deretter åpne skjermen ved å klikke databehandlingsressursene på statuslinjen i notatblokken eller ved å velge Vis ressursbruk på verktøylinjen. Ressursovervåkingsruten vises automatisk, noe som gir en integrert overvåkingsopplevelse for Python-kode i Fabric-notatblokker.

Skjermbilde som viser overvåking av ressursbruk i sanntid for Python-notatblokken.

Magisk kommando for øktkonfigurasjon

På samme måte som når du tilpasser en Spark-øktkonfigurasjon i notatblokken, kan du også bruke %%configure i Python-notatblokken. Python-notatblokken støtter tilpasning av databehandlingsnodestørrelse, monteringspunkter og standard lakehouse for notatblokkøkten. De kan brukes i både interaktive notatblokk- og datasamlenotatblokkaktiviteter. Vi anbefaler at du bruker kommandoen %%configure i begynnelsen av notatblokken, eller du må starte notatblokkøkten på nytt for å få innstillingene til å tre i kraft.

Her er de støttede egenskapene i Python-notatblokken %%configure:

%%configure -f
{
    "vCores": 4, // Recommended values: [4, 8, 16, 32, 64], Fabric will allocate matched memory according to the specified vCores.
    "defaultLakehouse": {  
        // Will overwrites the default lakehouse for current session
        "name": "<lakehouse-name>",
        "id": "<(optional) lakehouse-id>",
        "workspaceId": "<(optional) workspace-id-that-contains-the-lakehouse>" // Add workspace ID if it's from another workspace
    },
    "mountPoints": [
        {
            "mountPoint": "/myMountPoint",
            "source": "abfs[s]://<file_system>@<account_name>.dfs.core.windows.net/<path>"
        },
        {
            "mountPoint": "/myMountPoint1",
            "source": "abfs[s]://<file_system>@<account_name>.dfs.core.windows.net/<path1>"
        },
    ],
}

Du kan vise oppdatering av databehandlingsressurser på statuslinjen for notatblokken og overvåke CPU- og minnebruken til databehandlingsnoden i sanntid.

Skjermbilde som viser oppdatering av databehandlingsressurser.

NotebookUtils

Notebook Utilities (NotebookUtils) er en innebygd pakke som gjør det enkelt å utføre vanlige oppgaver i Fabric Notebook. Den er forhåndsinstallert på Python-kjøretid. Du kan bruke NotebookUtils til å arbeide med filsystemer, få miljøvariabler, kjede notatblokker sammen, få tilgang til ekstern lagring og arbeide med hemmeligheter.

Du kan bruke notebookutils.help() til å liste opp tilgjengelige API-er og også få hjelp med metoder, eller referere til dokumentet NotebookUtils.

Dataverktøy

Note

For øyeblikket er funksjonen i forhåndsvisning.

Du kan bruke notebookutils.data verktøy til å opprette en tilkobling med angitt datakilde og deretter lese og spørre etter data ved hjelp av T-SQL-setningen.

Kjør følgende kommando for å få en oversikt over de tilgjengelige metodene:

notebookutils.data.help()

Output:

Help on module notebookutils.data in notebookutils:

NAME
    notebookutils.data - Utility for read/query data from connected data sources in Fabric

FUNCTIONS
    connect_to_artifact(artifact: str, workspace: str = '', artifact_type: str = '', **kwargs)
        Establishes and returns an ODBC connection to a specified artifact within a workspace 
        for subsequent data queries using T-SQL.
        
        :param artifact: The name or ID of the artifact to connect to.
        :param workspace:  Optional; The workspace in which the provided artifact is located, if not provided,
                             use the workspace where the current notebook is located.
        :param artifactType: Optional; The type of the artifact, Currently supported type are Lakehouse, Warehouse and MirroredDatabase. 
                                If not provided, the method will try to determine the type automatically.
        :param **kwargs Optional: Additional optional configuration. Supported keys include:
            - tds_endpoint : Allow user to specify a custom TDS endpoint to use for connection.
        :return: A connection object to the specified artifact.
        
        :raises UnsupportedArtifactException: If the specified artifact type is not supported to connect.
        :raises ArtifactNotFoundException: If the specified artifact is not found within the workspace.
        
        Examples:
            sql_query = "SELECT DB_NAME()"
            with notebookutils.data.connect_to_artifact("ARTIFACT_NAME_OR_ID", "WORKSPACE_ID", "ARTIFACT_TYPE") as conn:
                df = conn.query(sql_query)
                display(df)
    
    help(method_name: str = '') -> None
        Provides help for the notebookutils.data module or the specified method.
        
        Examples:
        notebookutils.data.help()
        notebookutils.data.help("connect_to_artifact")
        :param method_name: The name of the method to get help with.

DATA
    __all__ = ['help', 'connect_to_artifact']

FILE
    /home/trusted-service-user/jupyter-env/python3.10/lib/python3.10/site-packages/notebookutils/data.py

Spørringsdata fra Lakehouse

conn = notebookutils.data.connect_to_artifact("lakehouse_name_or_id", "optional_workspace_id", "optional_lakehouse_type")
df = conn.query("SELECT * FROM sys.schemas;")

Spørringsdata fra Lager

conn = notebookutils.data.connect_to_artifact("warehouse_name_or_id", "optional_workspace_id", "optional_warehouse_type")
df = conn.query("SELECT * FROM sys.schemas;")

Søk data fra SQL-database

conn = notebookutils.data.connect_to_artifact("sqldb_name_or_id", "optional_workspace_id", "optional_sqldatabase_type") 
df = conn.query("SELECT * FROM sys.schemas;")

Note

Dataverktøyene i NotebookUtils er bare tilgjengelige på Python-notatblokken for øyeblikket.

Bla gjennom kodesnutter

Du kan finne nyttige python-kodebiter på Rediger-fanen-Bla>gjennom kodebit, nye Python-eksempler er nå tilgjengelige. Du kan lære av Python-kodesnutten for å begynne å utforske notatblokken.

Skjermbilde som viser hvor du kan bla gjennom python-kodesnutter.

Semantisk kobling er en funksjon som lar deg opprette en forbindelse mellom semantiske modeller og Synapse Data Science i Microsoft Fabric. Den støttes opprinnelig i Python-notatblokken. BI-ingeniører og Power BI-utviklere kan enkelt bruke Semantic-koblingstilkobling og administrere semantisk modell. Les det offentlige dokumentet for å lære mer om semantisk lenke.

Visualization

I tillegg til å tegne diagrammer med biblioteker, lar den innebygde visualiseringsfunksjonen deg gjøre DataFrames om til datavisualiseringer i rikt format. Du kan bruke display() -funksjonen på datarammer til å produsere den rike datarammetabellvisningen og diagramvisningen.

Skjermbilde som viser visualiseringsopplevelsen i Python-notatblokken.

Note

Diagramkonfigurasjonene beholdes i Python-notatblokken, noe som betyr at etter at kodecellen er kjørt på nytt, beholdes fortsatt de lagrede diagrammene hvis datarammeskjemaet for måldatarammen ikke er endret.

Kode intelliSense

Python-notatblokken bruker også Pylance som språkserver. Hvis du vil ha mer informasjon, kan du se forbedre Python-utvikling med Pylance-.

Datavitenskapsfunksjoner

Gå til Data Science-dokumentasjoner i Microsoft Fabric for å lære mer datavitenskap og AI-erfaring i Fabric. Her viser vi noen viktige funksjoner for datavitenskap som støttes opprinnelig i Python-notatblokken.

  • Data Wrangler: Data Wrangler er et notatbokbasert verktøy som gir et oppslukende grensesnitt for analyse av utforskningsdata. Denne funksjonen kombinerer en rutenettlignende datavisning med dynamisk sammendragsstatistikk, innebygde visualiseringer og et bibliotek med vanlige datarengjøringsoperasjoner. Det gir datarengjøring, datatransformasjon og integrering, som akselererer dataforberedelse med Data Wrangler.

  • MLflow: Et maskinlæringseksperiment er den primære enheten for organisering og kontroll for alle relaterte maskinlæringskjøringer. En kjøring tilsvarer en enkelt kjøring av modellkode.

  • Fabric Auto Logging: Synapse Data Science i Microsoft Fabric inkluderer autologging, noe som reduserer mengden kode som kreves for å logge parameterne, måledataene og elementene i en maskinlæringsmodell betydelig under opplæring.

    Autologging utvider MLflow-sporingsfunksjoner. Autologging kan registrere ulike måledata, inkludert nøyaktighet, tap, F1-poengsum og egendefinerte måledata du definerer. Ved å bruke autologging kan utviklere og dataforskere enkelt spore og sammenligne ytelsen til ulike modeller og eksperimenter uten manuell sporing.

  • Copilot: Copilot for notatblokker for datavitenskap og datateknikk er en AI-assistent som hjelper deg med å analysere og visualisere data. Det fungerer med lakehouse-tabeller, Power BI-datasett og pandaer/spark-datarammer, og gir svar og kodesnutter direkte i notatblokken. Du kan bruke Copilot-chattepanelet og Char-magics i notatblokken, og AI gir svar eller kode for å kopiere til notatblokken.

Kjente begrensninger for offentlig forhåndsvisning

  • Live pool-opplevelse er ikke garantert for hver python-notatblokkkjøring. Starttiden for økten kan ta opptil 3 minutter hvis notatblokkkjøringen ikke treffer det direktesendte utvalget. Etter hvert som bruken av Python-notatblokker vokser, øker våre intelligente samlingsmetoder gradvis tildelingen av dynamisk utvalg for å møte etterspørselen.

  • Miljøintegrering er ikke tilgjengelig i Python-notatblokken ved offentlig forhåndsvisning.

  • Angi tidsavbrudd for økt er ikke tilgjengelig for øyeblikket.

  • Copilot kan generere Spark-setning, som kanskje ikke kan kjøres i Python-notatblokken.

  • Copilot på Python-notatblokken støttes for øyeblikket ikke fullstendig i flere områder. Distribusjonsprosessen fortsetter å holde seg oppdatert etter hvert som vi fortsetter å rulle ut støtte i flere områder.