Yapay Zeka Fonksiyonları: LLM'lerle verileri ölçekte dönüştürün

Microsoft Fabric'teki AI İşlevleri, büyük pandas veya PySpark DataFrame'lerine tek satırlık kodla df.ai.<function_name>() LLM destekli dönüşümler uygular. Yüzlerce asenkron çıkarım çağrısı yaparken satır düzeyinde içerik izolasyonunu koruyarak yüksek düzeyde eşzamanlılıkla çalışırlar. Bu yaklaşım, yapılandırılmamış metin ve belgelerden verileri ölçekli ölçekte hızlıca zenginleştirmek, sınıflandırmak, özetlemek ve çıkarmak imkanı sunar.

Bu genel bakış veya ayrıntılı pandas ve PySpark belgelerindeki örneklere atlamak için bu tabloyu kullanın.

Function Description Ayrıntılı belgeler
ai.analyze_sentiment Giriş metninin duygusal durumunu algılama. Örnek. pandas, PySpark
ai.classify Giriş metnini etiketlerinize göre kategorilere ayırın. Örnek. pandas, PySpark
ai.embed Giriş metni için vektör eklemeleri oluşturun. Örnek. pandas, PySpark
ai.extract Konumlar, adlar veya özel varlıklar gibi alanları ayıklayın. Örnek. pandas, PySpark
ai.fix_grammar Yazım, dil bilgisi ve noktalama işaretlerini düzeltin. Örnek. pandas, PySpark
ai.generate_response Yönergelerinize göre yanıtlar oluşturun. Örnek. pandas, PySpark
ai.similarity Metin anlamını bir değerle veya başka bir sütunla karşılaştırın. Örnek. pandas, PySpark
ai.summarize Metin, dosya veya satır verilerini özetleyin. Örnek. pandas, PySpark
ai.translate Giriş metnini başka bir dile çevirin. Örnek. pandas, PySpark

AI İşlevleri'ni pandas veya PySpark ile not defterlerinde, SQL sorgularında ve Dataflow 2. Nesil'de kullanabilirsiniz. Fabric, yerleşik model için uç nokta kurulumunu işler.

Fabric deneyimlerde Yapay Zeka İşlevleri'ni kullanma

AI İşlevleri birden çok Fabric deneyiminde kullanılabilir:

  • Not Defterleri: Veri bilimi ve veri mühendisliği iş akışlarında DataFrame'leri zenginleştirmek için pandas ve PySpark API'lerini kullanın.
  • Veri ambarı ve SQL analiz uç noktası: Bir veri ambarında veya SQL analiz uç noktasında AI Functions'ı kullanarak ai_summarize, ai_classify ve ai_generate_response gibi SQL uyumlu işlevleri doğrudan T-SQL sorgularında çağırın.
  • Dataflow Gen2: Power Query’de yapay zeka tarafından oluşturulan sütunlar eklemek için Dataflow Gen2’de Fabric AI İstemini kullanın.

Çok modüllü yapay zeka işlevlerini kullanma

Çok modüllü AI İşlevleri metin değerlerine ek olarak görüntüleri, PDF'leri ve metin dosyalarını işler. PDF'leri özetlemek, görüntüleri sınıflandırmak, belge alanlarını ayıklamak veya dosya içeriğinde temellenmiş yanıtlar oluşturmak için bunları kullanın.

Desteklenen dosya türleri JPG/JPEG, PNG, statik GIF, WebP, PDF, MD, TXT, CSV, TSV, JSON, XML, PY ve diğer metin dosyalarıdır. Pandas'ta column_type="path" veya PySpark'ta input_col_type ya da col_types ayarlayın. Örnekler için bkz. Yapay zeka İşlevleri ile çok modüllü giriş kullanma.

Prerequisites

Note

  • AI İşlevleri Fabric Runtime 1.3 ve sonraki sürümlerde desteklenir.
  • AI İşlevleri [pandas, PySpark, Dataflow Gen2 ve Datawarehouse SQL], gpt-5-minireasoning_effort olarak ayarlandığında varsayılan olarak low kullanır. Bu modelin 400.000 belirteç bağlam penceresi ve 128.000 belirteç maksimum çıkışı vardır. Model sınırları ve oranları için dil modelleri tablosuna bakın.
  • AI İşlevleri kullanıcı istemlerini, giriş verilerini veya çıkışları günlüğe kaydetmez veya depolamaz.

Modeller ve sağlayıcılar

AI İşlevleri varsayılan olarak yerleşik Fabric uç noktasını kullanır. Pandas ve PySpark AI Functions’ı, chat_completions veya responses API’sini destekleyen herhangi bir LLM’yi kullanacak şekilde de yapılandırabilirsiniz; bunlara şunlar dahildir:

  • Azure OpenAI modelleri.
  • Qwen, Kimi, Grok, LLaMA, Mistral ve daha fazlası gibi Microsoft Foundry modelleri.

Yapılandırma seçenekleri için bkz. Pandas ile Yapay Zeka İşlevlerini Özelleştirme ve PySpark ile Yapay Zeka İşlevlerini Özelleştirme.

AI İşlevlerini ayarlama

AI İşlevleri, Python ve PySpark çalışma zamanlarında pandas’ı, PySpark çalışma zamanında ise PySpark’ı destekler. Yalnızca çalışma zamanınızın ihtiyaç duyduğu paketleri yükleyin.

Bağımlılıkları yükleme

Runtime Bağımlılıklar
pandas (Python çalışma zamanı) synapseml_internal ve synapseml_core tekerlek dosyalarını yükleyin. Yalnızca SDK yerel istemci davranışına veya Pydantic yanıt biçimi örneklerine ihtiyacınız varsa 1.99.5 veya sonraki bir sürümü yükleyin openai .
pandas (Fabric Runtime 2.0, PySpark 4.1 ve Python 3.13 ile) Geçici olarak kur nest_asyncio. Yalnızca SDK yerel istemci davranışına veya Pydantic yanıt biçimi örneklerine ihtiyacınız varsa 1.99.5 veya sonraki bir sürümü yükleyin openai .
pandas (diğer PySpark çalışma zamanları) Çoğu kullanım için yükleme gerekmez. Yalnızca SDK yerel istemci davranışına veya Pydantic yanıt biçimi örneklerine ihtiyacınız varsa 1.99.5 veya sonraki bir sürümü yükleyin openai .
PySpark (PySpark çalışma zamanı) Yükleme gerekmez.

Note

  • nest_asyncio yüklemek, Fabric Runtime 2.0'daki pandas AI Functions için geçici bir uyumluluk yamasıdır. Bu gereklilik gelecekteki bir güncellemede kaldırılacaktır.
  • PySpark AI Fonksiyonları, Fabric Spark çalışma zamanlarında ek kurulum adımı gerektirmez.

Python 3.13 ve PySpark 4.1 tabanlı Fabric Runtime 2.0, paketi nest_asyncio yerel olarak içermiyor. Bu çalışma zamanında pandas AI Fonksiyonlarını kullanmak için geçici uyumluluk yaması olarak kurun nest_asyncio . Gelecekteki güncellemelerde, pandas AI Functions, Fabric Runtime 2.0'da önceden yüklenmiş olan yeni nest_asyncio2 paketi kullanabildiği için bu gereklilik kaldırılacaktır.

# Temporary compatibility patch for Fabric Runtime 2.0.
%pip install -q nest_asyncio 2>/dev/null

# Optional: install openai version 1.99.5 or later for SDK-native client behavior.
%pip install -q openai 2>/dev/null

Gerekli kitaplıkları içeri aktarma

Çalışma zamanınız için AI İşlevleri kitaplığını içeri aktarın.

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

Dosyalar ve şemalar için yardımcı işlevleri kullanma

Yapay Zeka İşlevleri, çok modüllü iş akışları için yardımcıları içerir:

  • aifunc.load: Dosyaları bir klasörden yapılandırılmış bir tabloya alın. Bir istem veya şema sağlayabilirsiniz.
  • aifunc.list_file_paths: Herhangi bir yapay zeka işlevine giriş olarak kullanmak üzere bir klasörden dosya URL'lerini ve yollarını numaralandırabilirsiniz.
  • ai.infer_schema: ai.extract ile kullanmak üzere dosya içeriklerinden bir çıkarma şeması oluştur.

Örnekler için bkz. Yapay zeka İşlevleri ile çok modüllü giriş kullanma.

Yapay Zekâ İşlevlerini Uygula

Aşağıdaki örneklerde pandas ve PySpark için temel yapay zeka işlevleri gösterilmektedir. PySpark AI İşlevleri, Fabric Spark kümeleri arasında dağıtılmış Spark dönüşümleri olarak çalışır.

Note

Çoğu Yapay Zekâ İşlevi, pandas'ta column_type="path" içeren dosya yollarını veya PySpark'ta input_col_type/col_types="path" içeren dosya yollarını destekler. Örnekler için bkz. Yapay zeka İşlevleri ile çok modüllü giriş kullanma.

Tip

Varsayılan Python modeli, gpt-5-mini ile reasoning_effort="low" modelidir. Modelleri değiştirmek veya ayarları ayarlamak için bkz. pandas yapılandırması veya PySpark yapılandırması.

ai.analyze_sentiment: Yaklaşımı algılama

İşlev her ai.analyze_sentiment girişi pozitif, negatif, karışık veya nötr olarak etiketler. Özel etiketler de sağlayabilirsiniz.

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

'İncelemeler' ve 'yaklaşım' sütunlarını içeren bir veri çerçevesinin ekran görüntüsü. 'Yaklaşım' sütunu 'negatif', 'pozitif', 'karma' ve 'nötr' sütunlarını içerir.

ai.classify: Metni kategorilere ayırma

işlevi, ai.classify sağladığınız etiketleri kullanarak giriş metnini kategorilere ayırır.

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

'Açıklamalar' ve 'kategori' sütunları içeren bir veri çerçevesinin ekran görüntüsü. 'category' sütununda her açıklamanın kategori adı listelenir.

ai.embed: Vektör eklemeleri oluşturma

işlevi, ai.embed metni anlamsal anlamı yakalayan sayısal vektörlere dönüştürür. Benzerlik arama, alma ve makine öğrenmesi iş akışları için eklemeleri kullanın.

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

'Descriptions' ve 'embed' sütunlarını içeren bir veri çerçevesinin ekran görüntüsü. 'embed' sütunu, açıklamalar için ekleme vektörleri içerir.

ai.extract: Varlıkları ayıklama

İşlev ai.extract , giriş metninden adlar, konumlar veya özel varlıklar gibi alanları ayıklar.

Yapılandırılmış etiketler

Türlenmiş ayıklamaya ihtiyaç duyduğunuzda ExtractLabel kullanın. Türlendirilmiş alanlar, enum'lar, diziler, iç içe nesneler, null olabilen değerler, gerekli özellikler ve additionalProperties=false gibi JSON Şeması yapılarını destekler. Örnekler için bkz. pandas veya 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)

Özgün veri çerçevesinden ayıklanan verileri içeren 'name', 'profession' ve 'city' sütunlarını içeren yeni bir veri çerçevesini gösteren ekran görüntüsü.

ai.fix_grammar: Dil bilgisini düzelt

ai.fix_grammar İşlev yazım, dil bilgisi ve noktalama işaretlerini düzeltir.

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

'Metin' sütununda bulunan metnin dilbilgisi açısından düzeltilmiş hâlini içeren bir 'düzeltmeler' sütunu bulunan veri çerçevesini gösteren ekran görüntüsü.

ai.generate_response: Özel kullanıcı istemleri uygulama

İşlev, ai.generate_response istem ve satır verilerinizden özel metin oluşturur.

İsteğe bağlı parametreler

JSON nesneleri, JSON Şeması veya Pydantik modelleri de dahil olmak üzere yapılandırılmış çıkışa ihtiyacınız olduğunda kullanın response_format . Örnekler için bkz. pandas veya 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)

'product' ve 'response' sütunlarını içeren bir veri çerçevesini gösteren ekran görüntüsü. 'response' sütunu, ürün için ayrıntılı bir konu satırı içerir.

ai.similarity: Benzerlik hesaplama

işlevi, ai.similarity her giriş değerini bir başvuru değeriyle veya başka bir sütundaki bir değerle karşılaştırır. Puanlar, zıt anlam için -1 ile aynı anlam için 1 arasında değişir.

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

'names', 'industries' ve 'similarity' sütunlarını içeren bir veri çerçevesinin ekran görüntüsü. 'Benzerlik' sütunu, ad ve sektör için benzerlik puanlarına sahiptir.

ai.summarize: Metni özetleme

İşlev ai.summarize , her satırdaki metni, dosya içeriğini, tek bir sütunu veya tüm sütunları özetler.

Özetleri yönergelerle özelleştirme

Tonu, uzunluğu, hedef kitleyi veya odağı denetlemek için kullanın instructions . Örnekler için bkz. pandas veya 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)

Veri çerçevesini gösteren ekran görüntüsü. 'Summaries' sütununda, karşılık gelen satırda yalnızca 'description' sütununun özeti bulunur.

ai.translate: Metni çevirme

ai.translate işlevi metni başka bir dile çevirir.

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

'metin' ve 'çeviriler' sütunlarını içeren bir veri çerçevesinin ekran görüntüsü. 'çeviriler' sütunu, İspanyolcaya çevrilmiş metni içerir.

PySpark AI İşlevlerini Zincirleme

PySpark AI Fonksiyonları, df.ai eriştiricisini sonuç şemasına bağlı tutan DataFrame'ler döndürür. Ara DataFrame'leri oluşturmadan dönüşümleri zincirleyin.

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

ai.stats ile kullanım istatistiklerini görüntüleme

Yapay zeka tarafından oluşturulmuş bir Series veya DataFrame üzerinde kullanım ve yürütme ölçümlerini incelemek için ai.stats kullanın.

ai.stats aşağıdaki gibi istatistiklere sahip bir DataFrame döndürür:

  • num_successful: AI işlevi tarafından başarıyla işlenen satır sayısı.
  • num_exceptions: Yürütme sırasında özel durumla karşılaşan satır sayısı. Bu satırlar, aifunc.ExceptionResult örneği olarak temsil edilir.
  • num_unevaluated: Önceki bir istisna değerlendirmeye devam etmeyi imkânsız hâle getirdiği için işlenmeyen satır sayısı. Bu satırlar, aifunc.NotEvaluatedResult örneği olarak temsil edilir.
  • num_harmful: Azure OpenAI içerik filtresi tarafından engellenen satır sayısı. Bu satırlar, aifunc.FilterResult örneği olarak temsil edilir.
  • cached_tokens: Önbelleğe alınan giriş belirteçlerinin toplam sayısı.
  • input_tokens: AI işlev çağrısı için kullanılan toplam giriş belirteci sayısı.
  • output_tokens: Model tarafından oluşturulan çıktı belirteçlerinin toplam sayısı.
  • reasoning_tokens: Akıl yürütme modelleri tarafından kullanılan akıl yürütme belirteçlerinin toplam sayısı.
  • model: AI işlev çağrısı için kullanılan model dağıtım adı.

Çıkış şu tabloya benzer olabilir:

num_successful num_exceptions num_unevaluated num_harmful önbelleğe_alınmış_belirteçler input_tokens output_tokens akıl yürütme birimleri client_type input_types model
2 0 0 0 0 555 4 0 fabric_llm_endpoint {"text": 2} gpt-5-mini

Tip

Kullanımı, hata desenlerini ve belirteç tüketimini izlemek için kullanın ai.stats .

Kapasite sınırına ulaşan satırlar, aifunc.CapacityExceededResult örnekleri olarak gösterilir. Pandas iş akışlarında başarılı çıkışları yanıtsız çıkışlardan ayırmak için kullanın aifunc.split_results ; böylece kapasite sınırlı satırları inceleyebilir ve kapasite kullanılabilir duruma geldikten veya sınır giderildikten sonra bunları yeniden deneyebilirsiniz.

Maliyet şeffaflığı

pandas AI İşlevleri, progress_bar_mode="stats" ile çalıştırma sırasında belirteç sayılarını ve kapasite birimi tahminlerini gösterebilir. PySpark için sonuç DataFrame'inde kullanın df.ai.stats .

Fabric Kapasite Ölçümleri uygulaması, model çağrısı tüketimini yapay zeka İşlevleri işlemi olarak bildirir. Ayrıntılar için bkz. AI İşlevleri için Faturalama.

Değerlendir ve hızlandır

Uçtan uca pandas ve PySpark örnekleri için AI İşlevleri Başlangıç Not Defterlerini kullanın. Üretimden önce çıktı kalitesini değerlendirmek için AI İşlevleri Değerlendirme Not Defterlerini kullanın.