AI-funktioner: Transformér data i stor skala med AI

AI-funktioner i Microsoft Fabric anvender énlinjede, LLM-drevne transformationer på store pandaer eller PySpark DataFrames. De kører som standard med høj samtidighed, så du kan berige, klassificere, opsummere og udtrække data hurtigt i stor skala.

Brug denne tabel til at springe til eksempler i denne oversigt eller detaljeret pandas og PySpark-dokumentation.

Funktion Beskrivende tekst Detaljeret dokumentation
ai.analyze_sentiment Detekter den følelsesmæssige tilstand af inputteksten. Eksempel. pandaer, PySpark
ai.classify Kategoriser inputteksten efter dine etiketter. Eksempel. pandaer, PySpark
ai.embed Generer vektorindlejringer til inputtekst. Eksempel. pandaer, PySpark
ai.extract Udtræk felter som lokationer, navne eller brugerdefinerede enheder. Eksempel. pandaer, PySpark
ai.fix_grammar Korrekt stavning, grammatik og tegnsætning. Eksempel. pandaer, PySpark
ai.generate_response Generér svar baseret på dine instruktioner. Eksempel. pandaer, PySpark
ai.similarity Sammenlign tekstens betydning med en eller anden værdi eller en anden kolonne. Eksempel. pandaer, PySpark
ai.summarize Opsummer tekst, filer eller rækkedata. Eksempel. pandaer, PySpark
ai.translate Oversæt inputtekst til et andet sprog. Eksempel. pandaer, PySpark

Du kan bruge AI-funktioner i notesbøger med pandas eller PySpark, i SQL-forespørgsler og i Dataflow Gen2. Fabric håndterer endpoint-opsætningen for den indbyggede model.

Brug AI-funktioner på tværs af Fabric-oplevelser

AI-funktioner findes i flere Fabric-oplevelser:

  • Notebooks: Brug pandas og PySpark API'erne til at berige DataFrames i data science- og dataengineering-workflows.
  • Lager- og SQL-analyseendepunkt: Brug AI-funktioner i et lager eller SQL-analyseendepunkt til at kalde SQL-lignende funktioner som ai_summarize, ai_classify, og ai_generate_response direkte i T-SQL-forespørgsler.
  • Dataflow Gen2: Brug Fabric AI Prompt i Dataflow Gen2 til at tilføje AI-genererede kolonner i Power Query.

Brug multimodale AI-funktioner

Multimodale AI-funktioner behandler billeder, PDF'er og tekstfiler ud over tekstværdier. Brug dem til at opsummere PDF'er, klassificere billeder, udtrække dokumentfelter eller generere svar baseret på filindhold.

Understøttede filtyper inkluderer JPG/JPEG, PNG, statisk GIF, WebP, PDF, MD, TXT, CSV, TSV, JSON, XML, PY og andre tekstfiler. Foregår column_type="path" i pandaer, eller input_col_type i col_types PySpark. For eksempler, se Brug multimodal input med AI-funktioner.

Prerequisites

Note

  • AI-funktioner understøttes i Fabric Runtime 1.3 og senere.
  • Python AI Functions for pandas og PySpark er nu standard med gpt-5-minireasoning_effort sat til low. Denne model har et kontekstvindue med 400.000 tokens og et maksimalt output på 128.000 tokens. For modelgrænser og -hastigheder, se tabellen for sprogmodeller.
  • AI-funktioner i Dataflow Gen2 og lageret vil modtage samme modelopgradering inden udgangen af juni 2026.
  • Selvom den underliggende model kan håndtere flere sprog, er de fleste AI-funktioner optimeret til engelsksproget tekst.
  • AI-funktioner logger eller gemmer ikke brugerprompts, inputdata eller output.

Modeller og udbydere

AI-funktioner bruger som standard det indbyggede Fabric-endpoint. Du kan også konfigurere pandas og PySpark AI-funktioner til at bruge enhver LLM, der understøtter chat_completions eller responses API'en, herunder:

  • Azure OpenAI-modeller.
  • Microsoft Foundry-modeller som Qwen, Kimi, Grok, LLaMA, Mistral og flere.

For konfigurationsmuligheder, se Tilpas AI-funktioner med pandaer og Tilpas AI-funktioner med PySpark.

Opsætning af AI-funktioner

AI-funktioner understøtter pandas i Python- og PySpark-runtime, og PySpark i PySpark-runtime. Installer kun de pakker, din runtime har brug for.

Ydelse og samkørsel

AI-funktioner behandler som standard op til 200 rækker samtidigt. Juster samtidighed til din arbejdsbyrde i pandas eller PySpark.

Installer afhængigheder

Runtime Afhængigheder
pandas (Python runtime) Installer og synapseml_core wheel-filernesynapseml_internal. Installer openai kun version 1.99.5 eller nyere, hvis du har brug for SDK-native klientadfærd eller eksempler på Pydantic-responsformat.
pandas (PySpark spilletid) Ingen installation er nødvendig for det meste af brug. Installer openai kun version 1.99.5 eller nyere, hvis du har brug for SDK-native klientadfærd eller eksempler på Pydantic-responsformat.
PySpark (PySpark-runtime) Ingen installation er påkrævet.
# Optional: install openai version 1.99.5 or later for SDK-native client behavior.
%pip install -q openai 2>/dev/null

Importér påkrævede biblioteker

Importer AI Functions-biblioteket til din runtime.

# Required imports
import synapse.ml.aifunc as aifunc
import pandas as pd

Brug hjælpefunktioner til filer og skemaer

AI-funktioner inkluderer hjælpere til multimodale arbejdsgange:

  • aifunc.load: Indtast filer fra en mappe til en struktureret tabel. Du kan give en prompt eller skema.
  • aifunc.list_file_paths: Opfør fil-URL'er og stier fra en mappe til brug som input til enhver AI-funktion.
  • ai.infer_schema: Udled et ekstraktionsskema fra filindholdet til brug med ai.extract.

For eksempler, se Brug multimodal input med AI-funktioner.

Anvend AI-funktioner

Følgende eksempler viser de centrale AI-funktioner for pandas og PySpark. PySpark AI-funktioner kører som distribuerede Spark-transformationer på tværs af Fabric Spark-klynger.

Note

De fleste AI-funktioner understøtter filstier i column_type="path" pandas eller input_col_type/col_types="path" i PySpark. For eksempler, se Brug multimodal input med AI-funktioner.

Tip

Standard Python-modellen er gpt-5-mini med reasoning_effort="low". For at ændre modeller eller justere indstillinger, se pandas-konfiguration eller PySpark-konfiguration.

ai.analyze_sentiment: Opdag følelser

Funktionen ai.analyze_sentiment mærker hvert input som positivt, negativt, blandet eller neutralt. Du kan også give brugerdefinerede etiketter.

# This code uses AI. Always review output for mistakes. 

df = pd.DataFrame([
        "The cleaning spray permanently stained my beautiful kitchen counter. Never again!",
        "I used this sunscreen on my vacation to Florida, and I didn't get burned at all. Would recommend.",
        "I'm torn about this speaker system. The sound was high quality, though it didn't connect to my roommate's phone.",
        "The umbrella is OK, I guess."
    ], columns=["reviews"])

df["sentiment"] = df["reviews"].ai.analyze_sentiment()
display(df)

Skærmbillede af en dataramme med kolonnerne

ai.classify: Kategoriser tekst

Funktionen ai.classify kategoriserer inputtekst ved hjælp af de etiketter, du angiver.

# This code uses AI. Always review output for mistakes. 

df = pd.DataFrame([
        "This duvet, lovingly hand-crafted from all-natural fabric, is perfect for a good night's sleep.",
        "Tired of friends judging your baking? With these handy-dandy measuring cups, you'll create culinary delights.",
        "Enjoy this *BRAND NEW CAR!* A compact SUV perfect for the professional commuter!"
    ], columns=["descriptions"])

df["category"] = df['descriptions'].ai.classify("kitchen", "bedroom", "garage", "other")
display(df)

Skærmbillede af en dataramme med kolonnerne

ai.embed: Generer vektorindlejringer

Funktionen ai.embed omdanner tekst til numeriske vektorer, der fanger semantisk betydning. Brug embeddings til lighedssøgning, hentning og maskinlæringsarbejdsgange.

# This code uses AI. Always review output for mistakes. 

df = pd.DataFrame([
        "This duvet, lovingly hand-crafted from all-natural fabric, is perfect for a good night's sleep.",
        "Tired of friends judging your baking? With these handy-dandy measuring cups, you'll create culinary delights.",
        "Enjoy this *BRAND NEW CAR!* A compact SUV perfect for the professional commuter!"
    ], columns=["descriptions"])
    
df["embed"] = df["descriptions"].ai.embed()
display(df)

Skærmbillede af en dataframe med kolonnerne 'beskrivelser' og 'indskydning'. Kolonnen 'indskyd' indeholder indlejringsvektorer for beskrivelserne.

ai.extract: Udtræk enheder

Funktionen ai.extract udtrækker felter som navne, placeringer eller brugerdefinerede enheder fra inputtekst.

Strukturerede etiketter

Brug ExtractLabel den, når du har brug for typet ekstraktion. Den understøtter JSON-skemakonstruktioner såsom typede felter, enums, arrays, indlejrede objekter, nullbare værdier, krævede egenskaber og additionalProperties=false. For eksempler, se pandas eller PySpark.

# This code uses AI. Always review output for mistakes. 

df = pd.DataFrame([
        "MJ Lee lives in Tucson, AZ, and works as a software engineer for Microsoft.",
        "Kris Turner, a nurse at NYU Langone, is a resident of Jersey City, New Jersey."
    ], columns=["descriptions"])

df_entities = df["descriptions"].ai.extract("name", "profession", "city")
display(df_entities)

Skærmbillede, der viser en ny dataramme med kolonnerne 'navn', 'erhverv' og 'by', der indeholder de data, der er udtrukket fra den oprindelige dataramme.

ai.fix_grammar: Ret grammatik

Funktionen ai.fix_grammar retter stavning, grammatik og tegnsætning.

# This code uses AI. Always review output for mistakes. 

df = pd.DataFrame([
        "There are an error here.",
        "She and me go weigh back. We used to hang out every weeks.",
        "The big picture are right, but you're details is all wrong."
    ], columns=["text"])

df["corrections"] = df["text"].ai.fix_grammar()
display(df)

Skærmbillede, der viser en dataramme med en 'tekst'-kolonne og en 'rettelser'-kolonne, som har teksten fra tekstkolonnen med korrigeret grammatik.

ai.generate_response: Anvend brugerdefinerede brugerprompts

Funktionen ai.generate_response opretter brugerdefineret tekst ud fra dine prompt- og rækkedata.

Valgfrie parametre

response_format Brug den, når du har brug for struktureret output, herunder JSON-objekter, JSON-skema eller Pydantiske modeller. For eksempler, se pandas eller PySpark.

# This code uses AI. Always review output for mistakes. 

df = pd.DataFrame([
        ("Scarves"),
        ("Snow pants"),
        ("Ski goggles")
    ], columns=["product"])

df["response"] = df.ai.generate_response("Write a short, punchy email subject line for a winter sale.")
display(df)

Skærmbillede, der viser en dataramme med kolonnerne 'produkt' og 'svar'. Kolonnen

ai.lighed: Beregn lighed

Funktionen ai.similarity sammenligner hver inputværdi med én referenceværdi eller med en værdi i en anden kolonne. Scorerne spænder fra -1 for modsat betydning til 1 identisk betydning.

# This code uses AI. Always review output for mistakes. 

df = pd.DataFrame([ 
        ("Bill Gates", "Technology"), 
        ("Satya Nadella", "Healthcare"), 
        ("Joan of Arc", "Agriculture") 
    ], columns=["names", "industries"])
    
df["similarity"] = df["names"].ai.similarity(df["industries"])
display(df)

Skærmbillede af en dataramme med kolonnerne 'navne', 'brancher' og 'lighed'. Kolonnen

ai.summarize: Opsummer tekst

Funktionen ai.summarize opsummerer tekst, filindhold, en enkelt kolonne eller alle kolonner i hver række.

Tilpasning af resuméer med instruktioner

Brug instructions den til at kontrollere tone, længde, publikum eller fokus. For eksempler, se pandas eller PySpark.

# This code uses AI. Always review output for mistakes.

df= pd.DataFrame([
        ("Microsoft Teams", "2017",
        """
        The ultimate messaging app for your organization—a workspace for real-time 
        collaboration and communication, meetings, file and app sharing, and even the 
        occasional emoji! All in one place, all in the open, all accessible to everyone.
        """),
        ("Microsoft Fabric", "2023",
        """
        An enterprise-ready, end-to-end analytics platform that unifies data movement, 
        data processing, ingestion, transformation, and report building into a seamless, 
        user-friendly SaaS experience. Transform raw data into actionable insights.
        """)
    ], columns=["product", "release_year", "description"])

df["summaries"] = df["description"].ai.summarize()
display(df)

Skærmbillede, der viser en dataramme. Kolonnen »Resuméer« indeholder kun et resumé af kolonnen »beskrivelse« i den tilsvarende række.

ai.translate: Oversæt tekst

Funktionen ai.translate oversætter tekst til et andet sprog.

# This code uses AI. Always review output for mistakes. 

df = pd.DataFrame([
        "Hello! How are you doing today?", 
        "Tell me what you'd like to know, and I'll do my best to help.", 
        "The only thing we have to fear is fear itself."
    ], columns=["text"])

df["translations"] = df["text"].ai.translate("spanish")
display(df)

Skærmbillede af en dataramme med kolonnerne 'tekst' og 'oversættelser'. Kolonnen

Chain PySpark AI-funktioner

PySpark AI-funktioner returnerer DataFrames, der holder accessoren df.ai bundet til resultatskemaet. Kædetransformationer uden at materialisere mellemliggende DataFrames.

# This code uses AI. Always review output for mistakes.

output = (
    df
    .ai.summarize(input_col="review_text", output_col="summary")
    .ai.classify(
        labels=["service", "cleanliness", "location", "other"],
        input_col="summary",
        output_col="category",
    )
)
display(output)

Se brugsstatistikker med ai.stats

Brug ai.stats på en AI-genereret Series eller DataFrame til at inspicere brugs- og eksekveringsmålinger.

ai.stats returnerer en DataFrame med statistikker såsom:

  • num_successful: Antal rækker behandlet med succes af AI-funktionen.
  • num_exceptions: Antal rækker, der stødte på en undtagelse under udførelsen. Disse rækker repræsenteres som instanser af aifunc.ExceptionResult.
  • num_unevaluated: Antal rækker, der ikke blev behandlet, fordi en tidligere undtagelse gjorde det umuligt at fortsætte evalueringen. Disse rækker repræsenteres som instanser af aifunc.NotEvaluatedResult.
  • num_harmful: Antal rækker blokeret af Azure OpenAI-indholdsfilteret. Disse rækker repræsenteres som instanser af aifunc.FilterResult.
  • cached_tokens: Samlet antal cachede inputtokens.
  • input_tokens: Samlet antal inputtokens brugt til AI-funktionskaldet.
  • output_tokens: Samlet antal outputtokens genereret af modellen.
  • reasoning_tokens: Samlet antal ræsonnementstokser brugt af ræsonnementmodeller.
  • model: Modeludrulningsnavn brugt til AI-funktionskaldet.

Outputtet kan se ud som denne tabel:

num_successful num_exceptions num_unevaluated num_harmful cached_tokens input_tokens output_tokens reasoning_tokens client_type input_types model
2 0 0 0 0 555 4 0 fabric_llm_endpoint {"text": 2} GPT-5-mini

Tip

Brug ai.stats den til at spore brug, fejlmønstre og tokenforbrug.

Rækker, der rammer kapacitetsgrænser, vises som instanser af aifunc.CapacityExceededResult. I pandas-arbejdsgange bruges aifunc.split_results det til at adskille succesfulde output fra ikke-resultater, så du kan inspicere kapacitetsbegrænsede rækker og prøve dem igen, når kapacitet er tilgængelig eller grænsen er adresseret.

Omkostningsgennemsigtighed

pandas AI-funktioner kan vise token-optællinger og estimater af kapacitetsenheder under udførelsen med progress_bar_mode="stats". For PySpark, brug df.ai.stats på resultatdatarammen.

Fabric Capacity Metrics-appen rapporterer model-opkaldsforbrug som AI Functions-operationen. For detaljer, se Billing for AI Functions.

Evaluer og accelerer

Brug AI Functions Starter Notebooks til end-to-end pandas og PySpark-eksempler. Brug AI Functions Eval Notebooks til at vurdere outputkvaliteten før produktion.