Sdílet prostřednictvím


Transformace a rozšiřování dat pomocí funkcí AI

Funkce Microsoft Fabric AI umožňují všem obchodním odborníkům (od vývojářů po analytiky) transformovat a obohatit podniková data pomocí generující umělé inteligence.

Funkce umělé inteligence používají špičkové velké jazykové modely (LLM) pro sumarizaci, klasifikaci, generování textu a další. S jedním řádkem kódu můžete:

  • ai.analyze_sentiment: Detekujte emocionální stav vstupního textu.
  • ai.classify: Kategorizujte vstupní text podle štítků.
  • ai.embed: Generování vektorových vkládání pro vstupní text.
  • ai.extract: Extrahujte konkrétní typy informací ze vstupního textu (například umístění nebo názvy).
  • ai.fix_grammar: Opravte pravopis, gramatiku a interpunkci vstupního textu.
  • ai.generate_response: Generovat odpovědi na základě vašich vlastních pokynů.
  • ai.similarity: Porovnejte význam vstupního textu s jednou textovou hodnotou nebo s textem v jiném sloupci.
  • ai.summarize: Získejte souhrny vstupního textu.
  • ai.translate: Přeloží vstupní text do jiného jazyka.

Tyto funkce můžete začlenit jako součást pracovních postupů data science a datového inženýrství, ať už pracujete s knihovnou pandas nebo Sparkem. Neexistuje žádná podrobná konfigurace a žádná složitá správa infrastruktury. Nepotřebujete žádné konkrétní technické znalosti.

Prerequisites

Note

  • Funkce AI jsou podporovány v prostředí Fabric Runtime 1.3 a novějších.
  • Pokud nenakonfigurujete jiný model, funkce AI mají výchozí hodnotu gpt-4.1-mini. Přečtěte si další informace o sazbách fakturace a spotřeby.
  • I když základní model dokáže zpracovat několik jazyků, většina funkcí umělé inteligence je optimalizovaná pro použití v textech anglického jazyka."

Modely a poskytovatelé

Funkce AI teď podporují širší modely a poskytovatele nad rámec výchozích modelů Azure OpenAI. Můžete nakonfigurovat funkce AI tak, aby používaly:

  • Modely Azure OpenAI
  • Prostředky Azure AI Foundry (včetně modelů, jako je Claude a LLaMA)

Výběr modelu a poskytovatele je možné konfigurovat prostřednictvím konfigurace funkcí umělé inteligence. Podrobnosti o nastavení a konfiguraci různých modelů a poskytovatelů najdete v dokumentaci ke konfiguraci pandas a PySpark.

Začínáme s funkcemi AI

Je možné používat funkce AI s pandas (modul runtime Python a PySpark) a s PySpark (modul runtime PySpark). Požadované kroky instalace a importu pro každou z nich jsou popsány v následující části spolu s příslušnými příkazy.

Výkon a souběžnost

Funkce AI se teď spouštějí se zvýšenou výchozí souběžností 200, což umožňuje rychlejší paralelní zpracování operací AI. Nastavení souběžnosti můžete vyladit pro každou úlohu, abyste optimalizovali výkon na základě vašich konkrétních požadavků. Další informace o konfiguraci souběžnosti a dalších nastavení souvisejících s výkonem najdete v dokumentaci ke konfiguraci pandas a PySpark.

Nainstalujte závislosti

  • Pandas (modul runtime Pythonu)
    • synapseml_internal a synapseml_core je vyžadována instalace souborů ve formátu .whl (příkazy jsou uvedeny v následující buňce kódu)
    • openai je vyžadována instalace balíčku (příkaz uvedený v následující buňce kódu)
  • Pandas (běhové prostředí PySpark)
    • openai je vyžadována instalace balíčku (příkaz uvedený v následující buňce kódu)
  • PySpark (runtime PySpark)
    • Nevyžaduje se žádná instalace.
# The pandas AI functions package requires OpenAI version 1.99.5 or later
%pip install -q --force-reinstall openai==1.99.5 2>/dev/null

Import požadovaných knihoven

Následující buňka kódu naimportuje knihovnu funkcí AI a její závislosti.

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

Použití funkcí AI

Každá z následujících funkcí umožňuje vyvolat integrovaný koncový bod AI v prostředcích infrastruktury, který transformuje a rozšiřuje data jedním řádkem kódu. Pomocí funkcí AI můžete analyzovat datové rámce pandas nebo datové rámce Spark.

Tip

Zjistěte, jak přizpůsobit konfiguraci funkcí AI.

Pokročilá konfigurace: Při použití modelů rodiny gpt-5 můžete nakonfigurovat pokročilé možnosti, jako reasoning_effort a verbosity. Podrobnosti o nastavení těchto možností najdete na stránkách konfigurace pro pandas a PySpark .

Zjištění mínění pomocí ai.analyze_sentiment

Funkce ai.analyze_sentiment vyvolá AI, aby identifikovala, jestli je emocionální stav vyjádřený vstupním textem pozitivní, negativní, smíšený nebo neutrální. Pokud AI toto určení nedokáže provést, výstup zůstane prázdný. Podrobné instrukce pro použití ai.analyze_sentiment s pandas najdete v tomto článku. Informace ai.analyze_sentiment o PySparku najdete v tomto článku.

Volitelné parametry

Funkce ai.analyze_sentiment teď podporuje další volitelné parametry, které umožňují přizpůsobit chování analýzy mínění. Tyto parametry poskytují větší kontrolu nad zjištěním a hlášením mínění. Podrobnosti o dostupných parametrech, jejich popisech a výchozích hodnotách najdete v dokumentaci specifické pro funkce pro pandas a PySpark.

# 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)

Snímek obrazovky s datovým rámcem se sloupci recenze a mínění Sloupec sentiment zahrnuje záporné, kladné, smíšené a neutrální.

Kategorizace textu pomocí ai.classify

Funkce ai.classify vyvolá AI pro kategorizaci vstupního textu podle vámi zvolených vlastních popisků. Pro více informací o použití ai.classify s pandas přejděte na tento článek. Informace ai.classify o PySparku najdete v tomto článku.

# 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)

Snímek obrazovky datového rámce se sloupci popisy a kategorie Sloupec

Generování vektorových vkládání pomocí ai.embed

Funkce ai.embed vyvolá AI, aby vygenerovala vektorové vkládání pro vstupní text. Vektorové vkládání jsou číselné reprezentace textu, které zachycují sémantický význam, což je užitečné pro vyhledávání podobnosti, načítání pracovních postupů a dalších úloh strojového učení. Rozměrnost vložených vektorů závisí na vybraném modelu. Podrobné instrukce pro použití ai.embed s pandas najdete v tomto článku. Informace ai.embed o PySparku najdete v tomto článku.

# 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)

Snímek obrazovky datového rámce se sloupci 'popisy' a 'vložením'. Sloupec 'vložením' obsahuje vektory vložení pro popisy.

Extrahování entit pomocí ai.extract

Funkce ai.extract vyvolá AI ke skenování vstupního textu a extrahování konkrétních typů informací určených vybranými popisky (například umístění nebo názvy). Podrobné instrukce pro použití ai.extract s pandas najdete v tomto článku. Informace ai.extract o PySparku najdete v tomto článku.

Strukturované popisky

Funkce ai.extract podporuje definice strukturovaných popisků prostřednictvím schématu ExtractLabel. Štítky můžete zadat se strukturovanými definicemi, které zahrnují nejen název štítku, ale také informace o typu a atributy. Tento strukturovaný přístup zlepšuje konzistenci extrakce a umožňuje funkci vracet odpovídající strukturované výstupní sloupce. Můžete například zadat popisky s dalšími metadaty, abyste proces extrakce provedli přesněji. Příklady použití strukturovaných popisků naleznete v podrobné dokumentaci k pandas a 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)

Snímek obrazovky znázorňující nový datový rámec se sloupci

Oprava gramatiky pomocí ai.fix_grammar

Funkce ai.fix_grammar vyvolá AI k opravě pravopisu, gramatiky a interpunkce vstupního textu. Podrobné instrukce pro použití ai.fix_grammar s pandas najdete v tomto článku. Informace ai.fix_grammar o PySparku najdete v tomto článku.

# 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)

Snímek obrazovky znázorňující datový rámeček se sloupcem text a sloupcem oprav, který obsahuje text z textového sloupce s opravenou gramatikou

Odpověď na vlastní výzvy uživatelů pomocí ai.generate_response

Funkce ai.generate_response vyvolá AI k vygenerování vlastního textu na základě vlastních pokynů. Podrobné instrukce pro použití ai.generate_response s pandas najdete v tomto článku. Informace ai.generate_response o PySparku najdete v tomto článku.

Volitelné parametry

Funkce ai.generate_response teď podporuje response_format parametr, který umožňuje požadovat strukturovaný výstup JSON. Můžete zadat response_format='json' příjem odpovědí ve formátu JSON. Kromě toho můžete zadat schéma JSON pro vynucení konkrétní výstupní struktury a zajistit, aby vygenerovaná odpověď odpovídala očekávanému tvaru dat. To je užitečné zejména v případě, že potřebujete předvídatelný strojově čitelný výstup z funkce AI. Podrobné příklady použití najdete v dokumentaci k knihovně pandas a knihovně 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)

Snímek obrazovky znázorňující datový rámec se sloupci 'product' a 'response'. Sloupec 'response' obsahuje úderný předmětový řádek pro produkt.

Výpočet podobnosti pomocí ai.podobnosti

Funkce ai.similarity porovnává jednotlivé vstupní textové hodnoty buď s jedním běžným referenčním textem, nebo s odpovídající hodnotou v jiném sloupci (spárování v režimu páru). Hodnoty skóre podobnosti výstupu jsou relativní a můžou být v rozsahu od -1 (opačných) po 1 (identické). Skóre 0 značí, že hodnoty nejsou ve významu nesouvisející. Podrobné instrukce pro použití ai.similarity s pandas najdete v tomto článku. Informace ai.similarity o PySparku najdete v tomto článku.

# 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)

Snímek obrazovky s datovým rámcem se sloupci

Shrnutí textu pomocí ai.summarize

Funkce ai.summarize vyvolá AI, aby vygenerovala souhrny vstupního textu (buď hodnoty z jednoho sloupce datového rámce, nebo hodnoty řádků ve všech sloupcích). Podrobné instrukce pro použití ai.summarize s pandas najdete v tomto článku. Informace ai.summarize o PySparku najdete v tomto článku.

Přizpůsobení souhrnů pomocí pokynů

Funkce ai.summarize teď podporuje instructions parametr, který umožňuje nastavit tón, délku a zaměření vygenerovaných souhrnů. Můžete zadat vlastní pokyny, které vám pomůžou vytvořit souhrn, například určit konkrétní styl, cílovou skupinu nebo úroveň podrobností. Pokud nejsou pokyny k dispozici, funkce používá výchozí chování souhrnu. Příklady použití parametru instructions najdete v podrobné dokumentaci pro knihovnu pandas a 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)

Snímek obrazovky znázorňující datový rámec Sloupec

Překlad textu pomocí ai.translate

Funkce ai.translate vyvolá AI k překladu vstupního textu do nového jazyka podle vašeho výběru. Podrobné instrukce pro použití ai.translate s pandas najdete v tomto článku. Informace ai.translate o PySparku najdete v tomto článku.

# 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)

Snímek obrazovky s datovým rámečkem se sloupci text a překlady Sloupec Překlady obsahuje text přeložený do španělštiny.

Zobrazení statistik využití pomocí ai.stats

Funkce Fabric AI poskytují integrovaný způsob, jak kontrolovat statistiky využití a provádění pro jakékoli Series nebo DataFrame generované AI. K těmto metrikám se dostanete voláním ai.stats výsledku vráceného funkcí AI.

ai.stats vrátí datový rámec s následujícími sloupci:

  • num_successful – počet řádků úspěšně zpracovaných funkcí AI
  • num_exceptions – počet řádků, u které došlo během provádění k výjimce. Tyto řádky jsou reprezentovány jako instance aifunc.ExceptionResult.
  • num_unevaluated – počet řádků, které nebyly zpracovány, protože dřívější výjimka znemožnila pokračovat v hodnocení. Tyto řádky jsou instance aifunc.NotEvaluatedResult.
  • num_harmful – počet řádků blokovaných filtrem obsahu Azure OpenAI Tyto řádky jsou instancemi aifunc.FilterResult.
  • prompt_tokens – celkový počet vstupních tokenů používaných pro volání funkce AI.
  • completion_tokens – celkový počet výstupních tokenů vygenerovaných modelem.

Tip

Můžete použít ai.stats na jakoukoli sérii nebo datový rámec vrácený funkcí AI. To vám může pomoct sledovat využití, porozumět vzorům chyb a monitorovat spotřebu tokenů.