Azure Fundamentals · Lektion

Azure OpenAI Service

Distribuera en GPT-modell i Azure OpenAI Service, anropa completions-API:t från ett skript och förstå principerna för ansvarsfull AI samt alternativen för innehållsfiltrering.

Lektion 4 av 413 steg

Azure OpenAI Service är en gratis lektion i Azure Fundamentals på CoddyKit. Detta är lektion 4 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Azure Fundamentals, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Azure Fundamentals innehåller totalt 4 lektioner.

Vad är Azure OpenAI Service?

Azure OpenAI Service ger åtkomst till OpenAI:s stora språkmodeller – inklusive modellerna GPT-4, GPT-3.5-turbo, DALL-E och Embeddings – via Microsofts Azure-molninfrastruktur. Till skillnad från att använda OpenAI API direkt ger Azure OpenAI företagsfunktioner som private networking via VNet/Private Link, Microsofts efterlevnadscertifieringar (ISO 27001, SOC 2, GDPR), content filtering, sekretess för kunddata (dina data används inte för att träna OpenAI:s grundmodeller) samt integrering med Azure RBAC och övervakning.

Begära åtkomst och distribuera modeller

Azure OpenAI kräver en godkänd prenumeration – åtkomsten är begränsad och måste begäras via ett formulär. När åtkomsten har godkänts skapar du en Azure OpenAI-resurs och därefter en deployment i den. En distribution kopplar en modell (t.ex. gpt-4) till ett distributionsnamn (t.ex. my-gpt4) och en tokenkvot (gräns för antal token per minut). Du anropar API:et med distributionsnamnet, inte basmodellens namn. Flera distributioner med olika modeller eller kvoter kan finnas i samma resurs.

# Create an Azure OpenAI resource
az cognitiveservices account create \
  --name myOpenAI \
  --resource-group myRG \
  --kind OpenAI \
  --sku S0 \
  --location eastus

# Create a deployment
az cognitiveservices account deployment create \
  --name myOpenAI \
  --resource-group myRG \
  --deployment-name my-gpt4 \
  --model-name gpt-4 \
  --model-version '0613' \
  --model-format OpenAI \
  --sku-name Standard \
  --sku-capacity 10

API för chattkompletteringar

chat completions API (/openai/deployments/{deployment}/chat/completions) tar emot en lista med meddelanden och roller (system, user, assistant) och returnerar modellens svar. Meddelandet system anger modellens beteende och persona. Meddelandet user innehåller prompten eller frågan. Tidigare turer i konversationen inkluderas i meddelandearrayen så att modellen behåller kontexten genom en dialog med flera turer. Temperaturen (0–2) styr hur slumpmässigt svaret blir.

# Chat completion API call
curl -X POST 'https://myOpenAI.openai.azure.com/openai/deployments/my-gpt4/chat/completions?api-version=2024-02-01' \
  -H 'api-key: <key>' \
  -H 'Content-Type: application/json' \
  -d '{
    "messages": [
      {"role": "system", "content": "You are a helpful Azure expert."},
      {"role": "user", "content": "Explain what a Recovery Services vault is."}
    ],
    "temperature": 0.7,
    "max_tokens": 500
  }'

Grunderna i prompt engineering

Prompt engineering innebär att utforma effektiva indata-meddelanden för att få bästa möjliga resultat från en språkmodell. Viktiga tekniker är: System prompt – ge modellen en tydlig roll och tydliga begränsningar; Few-shot examples – visa modellen 2–5 exempel på önskat indata- och utdataformat; Chain-of-thought – be modellen tänka steg för steg innan den ger det slutliga svaret; Constraints – instruera modellen uttryckligen om format, längd och vad som ska undvikas. Bra promptar minskar hallucinationer och förbättrar konsekvensen.

Embeddings för semantisk sökning

Embeddings omvandlar text till en tät numerisk vektor som fångar den semantiska betydelsen. Två textstycken med liknande betydelse får vektorer som ligger nära varandra i vektorrummet (mätt med cosinuslikhet). Azure OpenAI:s embeddings-slutpunkt (/embeddings) använder modellen text-embedding-ada-002 för att generera vektorer med 1 536 dimensioner. Du använder embeddings för att bygga semantisk sökning (hitta dokument som liknar en fråga), RAG (Retrieval-Augmented Generation) och rekommendationssystem.

# Get an embedding vector for a piece of text
curl -X POST 'https://myOpenAI.openai.azure.com/openai/deployments/my-embedding/embeddings?api-version=2024-02-01' \
  -H 'api-key: <key>' \
  -H 'Content-Type: application/json' \
  -d '{
    "input": "Azure Site Recovery replicates VMs to a secondary region."
  }'

Innehållsfiltrering

Azure OpenAI innehåller ett flerskiktat system för content filtering som körs på både promptar (indata) och kompletteringar (utdata). Det identifierar och blockerar innehåll inom fyra kategorier: hat, sexuellt innehåll, våld och självskada. Varje kategori har tre allvarlighetsnivåer (låg, medel och hög), och du kan konfigurera filtreringströsklarna per kategori. Försök till promptinjektion (jailbreak-försök att kringgå systemprompten) filtreras också. Innehållsfiltrering är aktiverad som standard och kan inte inaktiveras för de flesta modeller utan en motivering utifrån användningsfallet.

Retrieval-Augmented Generation (RAG)

RAG förankrar språkmodellens svar i dina egna data i stället för att enbart förlita sig på modellens träningskunskap. Mönstret ser ut så här: (1) indexera dokumenten i en vektorlagring (t.ex. Azure AI Search), (2) när en användare ställer en fråga bäddar du in frågan och söker i vektorlagringen efter relevanta dokumentdelar, (3) inkludera dessa delar i systemprompten som kontext, (4) modellen besvarar frågan utifrån den angivna kontexten. RAG minskar hallucinationer och gör det möjligt för LLM:er att besvara frågor om privata och aktuella data utan finjustering.

Finjustering jämfört med RAG

Två metoder utökar modellernas funktioner med anpassade data. Finjustering tränar en ny modellversion på era exempel och bygger in kunskapen i modellvikterna – bäst när modellen ska lära sig specifika stilar, format eller beteenden som är svåra att beskriva i en prompt. RAG hämtar relevant information vid inferenstillfället och tillhandahåller den i kontexten – bättre för stora kunskapsbaser som ändras ofta, eftersom ni uppdaterar vektorindexet i stället för att träna om modellen. För de flesta användningsfall inom företag föredras RAG tack vare lägre kostnad och snabbare iterationer.

Azure AI Studio (AI Foundry)

Azure AI Studio (som byter namn till Azure AI Foundry) är en enhetlig portal för att bygga generativa AI-program i Azure. Tjänsten tillhandahåller en playground för interaktiv testning av modellens svar, verktyg för att utvärdera modellkvalitet mot dataset med facitdata, en designer för prompt flow för att bygga och distribuera RAG-pipelines som REST-API:er samt integrering med GitHub och VS Code för utvecklararbetsflöden. Azure AI Studio förenklar vägen från modelldistribution till ett AI-program i produktion.

Tokenprissättning och kvothantering

Azure OpenAI prissätts per 1 000 token som bearbetas – där en token motsvarar ungefär 4 tecken eller 0,75 ord. Både indata-token (prompt) och utdata-token (svar) debiteras. GPT-4 kostar betydligt mer per token än GPT-3.5-turbo. Varje distribution har en tokens-per-minute-kvot (TPM) som begränsar genomströmningen för att förhindra missbruk. Om ert program överskrider kvoten returnerar API:et 429 TooManyRequests. Ni kan begära höjda kvoter eller implementera exponentiell backoff och logik för nya försök på klientsidan.

Ansvarsfull AI för generativ AI

Microsoft tillämpar sina principer för ansvarsfull AI specifikt på generativ AI. Förankring – svar bör baseras på verifierbar information (RAG hjälper till). Transparens – användare bör veta att de interagerar med AI. Förhindrande av skada – innehållsfilter blockerar skadliga utdata. Integritet – era data i Azure OpenAI används inte för att träna OpenAI:s globala modeller. Program som bygger på Azure OpenAI måste innehålla en riskbedömning av användningsfallet och införa åtgärder för identifierade skador i enlighet med Microsofts Acceptable Use Policy.

Snabbtest

Testa era kunskaper om koncepten i Microsoft Azure Fundamentals (AZ-900) från den här lektionen.

Lektionssammanfattning

I den här lektionen har ni lärt er att Azure OpenAI Service ger åtkomst på företagsnivå till GPT-4 och andra modeller med funktioner för privat nätverk och regelefterlevnad, att chat completions API möjliggör flervägskonversationer med rollerna system/användare/assistent och att embeddings och RAG förankrar modellsvar i era privata data för att minska hallucinationer. Härnäst utforskar vi Azure Arc för hantering av hybrida resurser och lokala resurser via Azures kontrollplan.

Gratis att börja

Lär dig Azure Fundamentals med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
30
Lektioner
120

Vanliga frågor

Är lektionen ”Azure OpenAI Service” gratis?

Ja – hela texten till ”Azure OpenAI Service” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Azure Fundamentals, kan Ni uppgradera till CoddyKit PRO. Kursen i Azure Fundamentals innehåller totalt 4 lektioner.

Vad lär jag mig i ”Azure OpenAI Service”?

Distribuera en GPT-modell i Azure OpenAI Service, anropa completions-API:t från ett skript och förstå principerna för ansvarsfull AI samt alternativen för innehållsfiltrering. Ni övar på Azure Fundamentals med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Azure Fundamentals?

Du behöver inga förkunskaper. Utbildningen i Azure Fundamentals på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 4 av 4.

Hur lång tid tar lektionen ”Azure OpenAI Service”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Azure Fundamentals-lektionen?

Ja. Varje Azure Fundamentals-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Översikt över Azure Cognitive Services
  2. Language- och Vision-API:er i praktiken
  3. Azure Machine Learning Studio
  4. Azure OpenAI Service
← Tillbaka till Azure Fundamentals