Zdieľať cez


Prispôsobenie konfigurácie funkcií AI

Funkcie AI, ktoré sú v súčasnosti vo verzii verejnej ukážky, umožňujú používateľom využiť silu natívnych veľkých jazykových modelov (LLM) služby Fabric na transformáciu a obohatenie svojich podnikových údajov. Sú navrhnuté tak, aby fungovali správne, s predvoleným nakonfigurovaným základným modelom a nastaveniami. Používatelia, ktorí chcú flexibilnejšie konfigurácie, si však môžu svoje riešenia prispôsobiť niekoľkými ďalšími riadkami kódu.

Dôležitý

Táto funkcia je v ukážkena použitie v runtime služby Fabric 1.3 a novších verziách.

  • Prečítajte si požiadavky uvedené v článku s prehľadomvrátane inštalácií knižnice , ktoré sú dočasne potrebné na používanie funkcií AI.
  • Napriek tomu, že základný model dokáže pracovať v niekoľkých jazykoch, väčšina funkcií AI je optimalizovaná na používanie v textoch v anglickom jazyku.
  • Počas počiatočného zavádzania funkcií AI sú používatelia dočasne obmedzení na 1 000 žiadostí za minútu so vstavaným koncovým bodom AI služby Fabric.

Prispôsobenie funkcií AI pomocou pandy

V predvolenom nastavení sú funkcie AI napájané vstavaným koncovým bodom AI služby Fabric. Nastavenia llm sú globálne nakonfigurované v triede aifunc.Conf. Ak pracujete s funkciami AI v pandas, môžete použiť triedu aifunc.Conf na úpravu niektorých alebo všetkých týchto nastavení:

parameter popisu predvolená
model_deployment_name
Voliteľný
Reťazec , ktorý určuje názov nasadenia jazykového modelu, na ktorý určujú funkcie AI. gpt-35-turbo-0125
embedding_deployment_name
Voliteľný
reťazec, ktorý určuje názov nasadenia vloženého modelu, na ktorý poháňa funkcie umelej inteligencie. text-embedding-ada-002
temperature
Voliteľný
medzi 0,0 a 1,0, ktorý určí teplotu základného modelu. Vyššie teploty zvyšujú náhodnosť alebo kreativitu výstupov modelu. 0,0
seed
Voliteľný
int, ktorý určí osivo, ktoré sa použije na odozvu základného modelu. Predvolené správanie náhodne vyberie semennú hodnotu pre každý riadok. Výberom konštantnej hodnoty získate lepšiu reprodukovateľnosť experimentov. openai. NOT_GIVEN
timeout
Voliteľný
int, ktorá určí počet sekúnd pred funkciou umelej inteligencie vyvolá chybu v dôsledku časového obmedzenia. V predvolenom nastavení nie je k dispozícii žiaden časový dátum. Žiadne
max_concurrency
Voliteľný
int, ktorý určí maximálny počet riadkov, ktoré sa majú spracovať paralelne s asynchrónnymi požiadavkami do modelu. Vyššie hodnoty urýchlia čas spracovania (ak ju vaša kapacita dokáže prispôsobiť). 4

Nasledujúca ukážka kódu zobrazuje, ako globálne prepísať nastavenia aifunc.Conf tak, aby sa vzťahovali na všetky volania funkcie AI v danej relácii:

# This code uses AI. Always review output for mistakes. 
# Read terms: https://azure.microsoft.com/support/legal/preview-supplemental-terms/

aifunc.default_conf.temperature = 0.5 # Default: 0.0
aifunc.default_conf.max_concurrency = 10 # Default: 4

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)

Tieto nastavenia môžete tiež prispôsobiť pre každé volanie funkcie. Každá funkcia AI akceptuje voliteľný parameter conf. Nasledujúca ukážka kódu upravuje predvolené nastavenia aifunc len pre volanie funkcie ai.translate za použitia vlastnej hodnoty teploty. (Volanie ai.analyze_sentiment stále používa predvolené hodnoty, pretože nie sú nastavené žiadne vlastné hodnoty.)

# This code uses AI. Always review output for mistakes. 
# Read terms: https://azure.microsoft.com/support/legal/preview-supplemental-terms/

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)

Ak chcete nahradiť vlastný prostriedok Azure OpenAI LLM namiesto natívneho llm služby Fabric, môžete funkciu aifunc.setup použiť s vlastným klientom, ako je to znázornené v nasledujúcej ukážke kódu:

from openai import AzureOpenAI

# Example of creating a custom client
client = AzureOpenAI(
    api_key="your-api-key",
    azure_endpoint="https://your-openai-endpoint.openai.azure.com/",
    api_version=aifunc.session.api_version,  # Default "2024-10-21"
    max_retries=aifunc.session.max_retries,  # Default: sys.maxsize ~= 9e18
)

aifunc.setup(client)  # Set the client for all functions

Prispôsobenie funkcií AI pomocou PySparku

Ak pracujete s funkciami AI v PySparku, môžete použiť triedu OpenAIDefaults na úpravu základného jazykového modelu, ktorý tieto funkcie poháňa. Nasledujúca ukážka kódu napríklad používa zástupné hodnoty na zobrazenie toho, ako môžete prepísať vstavaný koncový bod AI služby Fabric s vlastným nasadením nástroja Azure OpenAI LLM:

from synapse.ml.services.openai import OpenAIDefaults
defaults = OpenAIDefaults()

defaults.set_deployment_name("your-deployment-name")
defaults.set_subscription_key("your-subscription-key")
defaults.set_URL("https://your-openai-endpoint.openai.azure.com/")
defaults.set_temperature(0.05)

Vlastné hodnoty môžete nahradiť názvom nasadenia, kľúčom predplatného, URL adresou koncového bodu a vlastnou teplotou:

parameter popisu
deployment_name Hodnota reťazca, ktorá určuje vlastný názov nasadenia modelu v Azure OpenAI alebo Azure AI Foundry. Na portáli Azure sa táto hodnota zobrazí v časti Resource Management > Nasadenie modelu. Na portáli Azure AI Foundry sa táto hodnota zobrazí na stránke Nasadenia. V predvolenom nastavení je natívne nasadenie koncového bodu služby Fabric LLM nastavené na gpt-35-turbo-0125.
subscription_key Kľúč rozhrania API používaný na overovanie s vaším prostriedkom LLM. Na portáli Azure sa táto hodnota zobrazí v časti Kľúče a Koncový bod.
URL URL adresa s určujúcim koncový bod vášho zdroja LLM. Na portáli Azure sa táto hodnota zobrazí v časti Kľúče a Koncový bod. Napríklad: "https://your-openai-endpoint.openai.azure.com/".
temperature Číselná hodnota v rozsahu od 0,0 do 1,0. Vyššie teploty zvyšujú náhodnosť alebo kreativitu výstupov základného modelu. V predvolenom nastavení je teplota koncového bodu Fabric LLM nastavená na 0,0.

Každý z parametrov OpenAIDefaults môžete načítať a vytlačiť pomocou nasledujúcej ukážky kódu:

print(defaults.get_deployment_name())
print(defaults.get_subscription_key())
print(defaults.get_URL())
print(defaults.get_temperature())

Parametre môžete tiež resetovať rovnako jednoducho, ako ste ich upravili. Nasledujúca ukážka kódu resetuje knižnicu funkcií AI tak, aby využívala predvolený koncový bod LLM služby Fabric:

defaults.reset_deployment_name()
defaults.reset_subscription_key()
defaults.reset_URL()
defaults.reset_temperature()