Udostępnij przez


, Dostosowywanie funkcji sztucznej inteligencji używając biblioteki pandas

Funkcje sztucznej inteligencji są zaprojektowane tak, aby działać od razu po uruchomieniu, z domyślnie skonfigurowanym bazowym modelem i ustawieniami. Użytkownicy, którzy chcą bardziej elastycznych konfiguracji, mogą jednak dostosować swoje rozwiązania za pomocą kilku dodatkowych wierszy kodu.

Ważne

  • Funkcje sztucznej inteligencji są używane w środowisku Fabric Runtime 1.3 (Spark 3.5), (Python 3.11) i nowszych wersjach.
  • Zapoznaj się z wymaganiami wstępnymi w tym artykule przeglądowym, w tym z instalacjami bibliotek , które są tymczasowo konieczne do używania funkcji sztucznej inteligencji.
  • Chociaż podstawowy model może obsługiwać kilka języków, większość funkcji sztucznej inteligencji jest zoptymalizowana pod kątem użycia w tekstach w języku angielskim.

Uwaga / Notatka

  • W tym artykule opisano dostosowywanie funkcji sztucznej inteligencji za pomocą pandas. Aby dostosować funkcje sztucznej inteligencji za pomocą narzędzia PySpark, zobacz ten artykuł.
  • Zobacz wszystkie funkcje sztucznej inteligencji w tym artykule przeglądu.

Konfiguracje

Domyślnie funkcje sztucznej inteligencji są obsługiwane przez wbudowany punkt końcowy AI w systemie Fabric. Ustawienia modelu języka dużego (LLM) są globalnie konfigurowane w aifunc.Conf klasie. Jeśli pracujesz z funkcjami AI w bibliotece Python pandas, możesz użyć klasy aifunc.Conf, aby zmodyfikować niektóre lub wszystkie te ustawienia.

Parameter Description Default
concurrency
Opcjonalnie
Liczba int , która wyznacza maksymalną liczbę wierszy do przetwarzania równolegle z żądaniami asynchronicznymi do modelu. Wyższe wartości przyspieszają czas przetwarzania (jeśli pojemność może go pomieścić). Można go skonfigurować do 1000. 200
embedding_deployment_name
Opcjonalnie
Ciąg , który wyznacza nazwę wdrożenia modelu osadzania, które obsługuje funkcje sztucznej inteligencji. text-embedding-ada-002
model_deployment_name
Opcjonalnie
Ciąg , który wyznacza nazwę wdrożenia modelu językowego, które obsługuje funkcje sztucznej inteligencji. Możesz wybrać spośród modeli obsługiwanych przez Fabric. gpt-4.1-mini
reasoning_effort
Opcjonalnie
Używane przez modele serii gpt-5 do określenia liczby tokenów rozumowania, których powinny używać. Można ustawić wartość na openai.NOT_GIVEN lub wartość tekstową: "minimal", "low", "medium" lub "high". openai.NOT_GIVEN
seed
Opcjonalnie
int, który wyznacza inicjator do użycia na potrzeby odpowiedzi modelu bazowego. Domyślne zachowanie wybiera losową wartość początkową dla każdego wiersza. Wybór stałej wartości zwiększa powtarzalność eksperymentów. openai.NOT_GIVEN
temperature
Opcjonalnie
Liczba zmiennoprzecinkowa między wartością 0.0 a wartością 1.0 oznacza temperaturę bazowego modelu. Wyższe temperatury zwiększają losowość lub kreatywność danych wyjściowych modelu. 0.0
timeout
Opcjonalnie
int, która wyznacza liczbę sekund przed wystąpieniem błędu przekroczenia limitu czasu przez funkcję sztucznej inteligencji. Domyślnie nie ma limitu czasu. Żaden
top_p
Opcjonalnie
Liczba zmiennoprzecinkowa z zakresu od 0 do 1. Niższa wartość (na przykład 0,1) ogranicza model do rozważenia tylko najbardziej prawdopodobnych tokenów, dzięki czemu dane wyjściowe będą bardziej deterministyczne. Wyższa wartość (na przykład 0,9) umożliwia uzyskanie bardziej zróżnicowanych i kreatywnych danych wyjściowych dzięki włączeniu szerszego zakresu tokenów. openai.NOT_GIVEN
use_progress_bar
Opcjonalnie
Pokaż pasek postępu tqdm dla postępu funkcji sztucznej inteligencji nad danymi wejściowymi. Używa tqdm pod kapturem. Wartość logiczna, którą można ustawić na True lub False. True
verbosity
Opcjonalnie
Używane przez modele serii gpt-5 dla długości danych wyjściowych. Można ustawić na openai.NOT_GIVEN lub ciąg znaków "niski", "średni" lub "wysoki". openai.NOT_GIVEN

Wskazówka

  • Jeśli pojemność wdrożenia modelu może pomieścić więcej żądań, ustawienie wyższych wartości współbieżności może przyspieszyć czas przetwarzania.

Poniższy przykładowy kod pokazuje, jak zastąpić aifunc.Conf ustawienia globalnie, tak aby były stosowane do wszystkich wywołań funkcji sztucznej inteligencji w sesji:

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

aifunc.default_conf.temperature = 0.5 # Default: 0.0
aifunc.default_conf.concurrency = 300 # Default: 200

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")
df["sentiment"] = df["text"].ai.analyze_sentiment()
display(df)

Możesz również dostosować te ustawienia dla każdego wywołania poszczególnych funkcji. Każda funkcja sztucznej inteligencji akceptuje opcjonalny parametr conf. Poniższy przykładowy kod modyfikuje domyślne ustawienia aifunc wyłącznie dla wywołania funkcji ai.translate, używając niestandardowej wartości temperatury. (Wywołanie ai.analyze_sentiment nadal używa wartości domyślnych, ponieważ nie ustawiono żadnych wartości niestandardowych).

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

from synapse.ml.aifunc import Conf

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", conf=Conf(temperature=0.5))
df["sentiment"] = df["text"].ai.analyze_sentiment()
display(df)

Poniższy przykładowy kod pokazuje, jak skonfigurować gpt-5 i inne modele rozumowania dla wszystkich funkcji.

aifunc.default_conf.model_deployment_name = "gpt-5"
aifunc.default_conf.temperature = 1  # gpt-5 only accepts default value of temperature
aifunc.default_conf.top_p = 1  # gpt-5 only accepts default value of top_p
aifunc.default_conf.verbosity = "low"
aifunc.default_conf.reasoning_effort = "low"

Modele niestandardowe

Aby użyć modelu AI innego niż domyślny, możesz wybrać inny model obsługiwany przez Fabric lub skonfigurować niestandardowy punkt końcowy dla modelu.

Wybieranie innego obsługiwanego dużego modelu językowego

Wybierz jeden z modeli obsługiwanych przez Fabric i skonfiguruj go za pomocą parametru model_deployment_name. Tę konfigurację można wykonać na jeden z dwóch sposobów:

  • Na poziomie globalnym w klasie aifunc.Conf. Przykład:

    aifunc.default_conf.model_deployment_name = "<model deployment name>"
    
  • Indywidualnie w każdym wywołaniu funkcji sztucznej inteligencji:

    df["translations"] = df["text"].ai.translate(
        "spanish",
        conf=Conf(model_deployment_name="<model deployment name>"),
    )
    

Wybieranie innego obsługiwanego modelu osadzania

Wybierz jeden z modeli obsługiwanych przez Fabric i skonfiguruj go za pomocą parametru embedding_deployment_name. Tę konfigurację można wykonać na jeden z dwóch sposobów:

  • Na poziomie globalnym w klasie aifunc.Conf. Przykład:

    aifunc.default_conf.embedding_deployment_name = "<embedding deployment name>"
    
  • Indywidualnie przy każdym wywołaniu funkcji sztucznej inteligencji. Przykład:

    df["embedding"] = df["text"].ai.embed(
        conf=Conf(embedding_deployment_name="<embbedding deployment name>"),
    )
    

Skonfiguruj niestandardowy punkt końcowy modelu

Domyślnie funkcje sztucznej inteligencji używają interfejsu API punktu końcowego LLM Fabric do zunifikowanego rozliczania i łatwego uruchomienia. Możesz użyć własnego punktu końcowego modelu, konfigurując klienta zgodnego z Azure OpenAI lub kompatybilnego z OpenAI, w tym ustawienia punktu końcowego oraz klucza. W poniższym przykładzie pokazano, jak przenieść własny zasób rozwiązania Microsoft AI Foundry (dawniej Azure OpenAI) przy użyciu polecenia aifunc.setup:

from openai import AzureOpenAI

# Example to create client for Microsoft AI Foundry OpenAI models
client = AzureOpenAI(
    azure_endpoint="https://<ai-foundry-resource>.openai.azure.com/",
    api_key="<API_KEY>",
    api_version=aifunc.session.api_version,  # Default "2025-04-01-preview"
    max_retries=aifunc.session.max_retries,  # Default: sys.maxsize ~= 9e18
)
aifunc.setup(client)  # Set the client for all functions.

Wskazówka

  • Możesz skonfigurować niestandardowy zasób usługi AI Foundry do używania modeli poza interfejsem OpenAI.

Poniższy przykładowy kod używa wartości zastępczych, aby pokazać, jak zastąpić wbudowany punkt końcowy Fabric AI za pomocą niestandardowego zasobu rozwiązania Microsoft AI Foundry do korzystania z modeli innych niż OpenAI.

Ważne

  • Obsługa modeli rozwiązania Microsoft AI Foundry jest ograniczona do modeli, które obsługują Chat Completions interfejs API i akceptują response_format parametr ze schematem JSON
  • Dane wyjściowe mogą się różnić w zależności od zachowania wybranego modelu AI. Zapoznaj się z możliwościami innych modeli z odpowiednią ostrożnością
  • Funkcje AI oparte na osadzaniu ai.embed i ai.similarity nie są obsługiwane, gdy korzysta się z zasobu AI Foundry.
from openai import OpenAI

# Example to create client for Azure AI Foundry models
client = OpenAI(
    base_url="https://<ai-foundry-resource>.services.ai.azure.com/openai/v1/",
    api_key="<API_KEY>",
    max_retries=aifunc.session.max_retries,  # Default: sys.maxsize ~= 9e18
)
aifunc.setup(client)  # Set the client for all functions.

aifunc.default_conf.model_deployment_name = "grok-4-fast-non-reasoning"