Azure Fundamentals · Lektion

Azure OpenAI Service

Udrul en GPT-model i Azure OpenAI Service, kald completions-API'et fra et script, og forstå principperne for ansvarlig AI og mulighederne for indholdsfiltrering.

Lektion 4 af 413 trin

Azure OpenAI Service er en gratis Azure Fundamentals-lektion på CoddyKit. Dette er lektion 4 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Azure Fundamentals, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Azure Fundamentals-kurset indeholder 4 lektioner i alt.

Hvad er Azure OpenAI Service?

Azure OpenAI Service giver adgang til OpenAI's store sprogmodeller — herunder GPT-4, GPT-3.5-turbo, DALL-E og modeller til Embeddings — via Microsofts Azure-cloudinfrastruktur. I modsætning til direkte brug af OpenAI API'et giver Azure OpenAI dig virksomhedsfunktioner som privat netværk via VNet/Private Link, Microsofts compliance-certificeringer (ISO 27001, SOC 2, GDPR), indholdsfiltrering, beskyttelse af kundedata (dine data bruges ikke til at træne OpenAI's grundmodeller) samt integration med Azure RBAC og overvågning.

Anmodning om adgang og implementering af modeller

Azure OpenAI kræver et godkendt abonnement — adgangen er begrænset og skal anmodes via en formular. Når adgangen er godkendt, opretter du en Azure OpenAI-ressource og derefter en deployment i den. En implementering knytter en model (f.eks. gpt-4) til et implementeringsnavn (f.eks. my-gpt4) og en tokenkvote (grænse for antal tokens pr. minut). Du kalder API'et ved hjælp af implementeringsnavnet, ikke navnet på grundmodellen. Flere implementeringer med forskellige modeller eller kvoter kan eksistere side om side i den samme ressource.

# 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 til chatfuldførelser

API'et til chatfuldførelser (/openai/deployments/{deployment}/chat/completions) accepterer en liste over meddelelser med rollerne (system, user, assistant) og returnerer modellens svar. Meddelelsen fra system angiver modellens adfærd og persona. Meddelelsen fra user indeholder prompten eller spørgsmålet. Tidligere replikker i samtalen inkluderes i meddelelsesarrayet, så modellen bevarer konteksten gennem en dialog med flere ture. Temperaturen (0–2) styrer, hvor tilfældige svarene er.

# 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
  }'

Grundlæggende prompt engineering

Prompt engineering er praksissen med at formulere effektive inputmeddelelser for at få de bedste resultater fra en sprogmodel. Vigtige teknikker omfatter: Systemprompt — giv modellen en tydelig rolle og tydelige begrænsninger; Few-shot-eksempler — vis modellen 2–5 eksempler på det ønskede input-output-format; Chain-of-thought — bed modellen om at tænke trin for trin, før den giver det endelige svar; Begrænsninger — instruér modellen udtrykkeligt om format, længde og hvad den skal undgå. Gode prompts reducerer hallucinationer og forbedrer ensartetheden.

Indlejringer til semantisk søgning

Indlejringer konverterer tekst til en tæt numerisk vektor, der indfanger den semantiske betydning. To tekststykker med en lignende betydning vil have vektorer, der ligger tæt på hinanden i vektorrummet (målt med cosinuslighed). Azure OpenAI's slutpunkt til indlejringer (/embeddings) bruger modellen text-embedding-ada-002 til at generere vektorer med 1.536 dimensioner. Du bruger indlejringer til at opbygge semantisk søgning (finde dokumenter, der ligner en forespørgsel), RAG (Retrieval-Augmented Generation) og anbefalingssystemer.

# 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."
  }'

Indholdsfiltrering

Azure OpenAI indeholder et indholdsfiltreringssystem i flere lag, der kører på både prompts (input) og chatfuldførelser (output). Det registrerer og blokerer indhold inden for fire kategorier: had, seksuelt indhold, vold og selvskade. Hver kategori har tre alvorlighedsniveauer (lav, mellem og høj), og du kan konfigurere filtreringstærsklerne for hver kategori. Forsøg på promptinjektion (jailbreaks, der forsøger at tilsidesætte systemprompten) filtreres også. Indholdsfiltrering er aktiveret som standard og kan ikke deaktiveres for de fleste modeller uden en begrundelse baseret på anvendelsesområdet.

Retrieval-Augmented Generation (RAG)

RAG forankrer sprogmodellens svar i dine egne data i stedet for udelukkende at basere sig på modellens træningsviden. Mønstret er: (1) indeksér dine dokumenter i et vektorlager (f.eks. Azure AI Search), (2) når en bruger stiller et spørgsmål, indlejr spørgsmålet og søg i vektorlageret efter relevante dokumentudsnit, (3) inkludér disse udsnit i systemprompten som kontekst, (4) modellen besvarer spørgsmålet ud fra den angivne kontekst. RAG reducerer hallucinationer og gør det muligt for LLM'er at besvare spørgsmål om private og aktuelle data uden finjustering.

Finjustering sammenlignet med RAG

To metoder udvider modellens funktioner med brugerdefinerede data. Finjustering træner en ny modelversion på dine eksempler og indarbejder viden i modellens vægte — bedst til at lære modellen bestemte stile, formater eller adfærd, som er svære at beskrive i en prompt. RAG henter relevante oplysninger på inferenstidspunktet og giver dem med i konteksten — bedre til store vidensbaser, der ændres ofte, fordi du opdaterer vektorindekset i stedet for at træne modellen igen. Til de fleste virksomhedsanvendelser foretrækkes RAG på grund af lavere omkostninger og hurtigere iteration.

Azure AI Studio (AI Foundry)

Azure AI Studio (som omdøbes til Azure AI Foundry) er en samlet portal til at udvikle generative AI-applikationer på Azure. Den indeholder en sandkasse til interaktiv test af modelgenereringer, værktøjer til evaluering af modelkvalitet i forhold til datasæt med facit, en designer til promptflow til opbygning og implementering af RAG-pipelines som REST-API'er samt integration med GitHub og VS Code til udviklernes arbejdsgange. Azure AI Studio gør vejen fra modelimplementering til en AI-applikation i produktion enklere.

Tokenpriser og kvotestyring

Azure OpenAI prissættes pr. 1.000 tokens, hvor en token svarer til cirka 4 tegn eller 0,75 ord. Både inputtokens (prompten) og outputtokens (genereringen) faktureres. GPT-4 koster betydeligt mere pr. token end GPT-3.5-turbo. Hver implementering har en tokens pr. minut-kvote (TPM), der begrænser gennemløbet for at forhindre misbrug. Hvis din applikation overskrider kvoten, returnerer API'et 429 TooManyRequests. Du kan anmode om højere kvoter eller implementere eksponentiel backoff og genforsøg på klientsiden.

Ansvarlig AI til generativ AI

Microsoft anvender sine principper for ansvarlig AI specifikt på generativ AI. Forankring — svar bør være baseret på oplysninger, der kan verificeres (RAG hjælper). Gennemsigtighed — brugere bør vide, at de interagerer med AI. Forebyggelse af skade — indholdsfiltre blokerer skadeligt output. Privatliv — dine data i Azure OpenAI bruges ikke til at træne OpenAI's globale modeller. Applikationer, der er udviklet på Azure OpenAI, skal indeholde en risikovurdering af anvendelsen og implementere begrænsninger for identificerede skader som krævet i Microsofts politik for acceptabel brug.

Hurtig kontrol

Test din forståelse af begreberne fra Microsoft Azure Fundamentals (AZ-900) i denne lektion.

Opsummering af lektionen

I denne lektion har du lært, at Azure OpenAI Service giver adgang i virksomhedsklasse til GPT-4 og andre modeller med privat netværk og funktioner til overholdelse af regler, at chat completions API driver samtaler med flere turer ved hjælp af rollerne system/bruger/assistent, og at embeddings og RAG forankrer modellens svar i dine private data for at reducere hallucinationer. Dernæst undersøger vi Azure Arc til administration af hybride ressourcer og ressourcer i lokale miljøer via Azures kontrolplan.

Gratis at komme i gang

Lær Azure Fundamentals med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
30
Lektioner
120

Ofte stillede spørgsmål

Er lektionen “Azure OpenAI Service” gratis?

Ja — hele teksten til “Azure OpenAI Service” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Azure Fundamentals-kurset, skal du opgradere til CoddyKit PRO. Azure Fundamentals-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Azure OpenAI Service”?

Udrul en GPT-model i Azure OpenAI Service, kald completions-API'et fra et script, og forstå principperne for ansvarlig AI og mulighederne for indholdsfiltrering. Du øver dig i Azure Fundamentals med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Azure Fundamentals?

Der kræves ingen tidligere erfaring. Azure Fundamentals på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 4 af 4.

Hvor lang tid tager lektionen “Azure OpenAI Service”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Azure Fundamentals-lektion?

Ja. Alle Azure Fundamentals-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Oversigt over Azure Cognitive Services
  2. Language- og Vision-API'er i praksis
  3. Azure Machine Learning Studio
  4. Azure OpenAI Service
← Tilbage til Azure Fundamentals