Share via


Azure OpenAI Service REST API-referens

Den här artikeln innehåller information om rest-API-slutpunkterna för inferens för Azure OpenAI.

Autentisering

Azure OpenAI tillhandahåller två metoder för autentisering. Du kan använda ANTINGEN API-nycklar eller Microsoft Entra-ID.

  • API-nyckelautentisering: För den här typen av autentisering måste alla API-begäranden innehålla API-nyckeln i api-key HTTP-huvudet. Snabbstarten innehåller vägledning för hur du gör anrop med den här typen av autentisering.

  • Microsoft Entra-ID-autentisering: Du kan autentisera ett API-anrop med hjälp av en Microsoft Entra-token. Autentiseringstoken ingår i en begäran som Authorization rubrik. Den angivna token måste föregås av Bearer, till exempel Bearer YOUR_AUTH_TOKEN. Du kan läsa vår guide om autentisering med Microsoft Entra-ID.

REST API-versionshantering

Tjänst-API:erna versionshanteras med frågeparametern api-version. Alla versioner följer datumstrukturen ÅÅÅÅÅ-MM-DD. Till exempel:

POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/completions?api-version=2024-02-01

Kompletteringar

Med åtgärden Slutföranden genererar modellen en eller flera förutsagda slutföranden baserat på en angivet prompt. Tjänsten kan också returnera sannolikheterna för alternativa token vid varje position.

Skapa ett slutförande

POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/completions?api-version={api-version}

Sökvägsparametrar

Parameter Type Obligatorisk? beskrivning
your-resource-name sträng Obligatoriskt Namnet på din Azure OpenAI-resurs.
deployment-id sträng Obligatoriskt Det distributionsnamn du valde när du distribuerade modellen.
api-version sträng Obligatoriskt Den API-version som ska användas för den här åtgärden. Formatet är ÅÅÅÅ-MM-DD.

Versioner som stöds

Begärandetext

Parameter Type Obligatorisk? Standardvärde beskrivning
prompt sträng eller matris Valfritt <\|endoftext\|> Uppmaningen eller uppmaningarna att generera slutföranden för, kodade som en sträng eller matris med strängar. <\|endoftext\|> är den dokumentavgränsare som modellen ser under träningen, så om en fråga inte anges genereras modellen som från början av ett nytt dokument.
max_tokens integer Valfritt 16 Det maximala antalet token som ska genereras i slutförandet. Antalet token för din fråga plus max_tokens får inte överskrida modellens kontextlängd. De flesta modeller har en kontextlängd på 2 048 token (förutom de senaste modellerna, som stöder 4096).
temperature Nummer Valfritt 1 Vilken samplingstemperatur som ska användas, mellan 0 och 2. Högre värden innebär att modellen tar fler risker. Prova 0.9 för mer kreativa program och 0 (argmax sampling) för dem med ett väldefinierat svar. Vi rekommenderar vanligtvis att du ändrar detta eller top_p men inte båda.
top_p Nummer Valfritt 1 Ett alternativ till sampling med temperatur, som kallas kärnsampling, där modellen tar hänsyn till resultatet av token med top_p sannolikhetsmassa. Så 0,1 innebär att endast token som består av den översta 10 % sannolikhetsmassan beaktas. Vi rekommenderar vanligtvis att du ändrar detta eller temperatur men inte båda.
logit_bias map Valfritt NULL Ändra sannolikheten för att angivna token visas i slutförandet. Accepterar ett json-objekt som mappar token (som anges av deras token-ID i GPT-tokenizern) till ett associerat bias-värde från -100 till 100. Du kan använda det här tokeniserarverktyget (som fungerar för både GPT-2 och GPT-3) för att konvertera text till token-ID:t. Matematiskt läggs biasen till i de logits som genereras av modellen före sampling. Den exakta effekten varierar per modell, men värden mellan -1 och 1 bör minska eller öka sannolikheten för val. värden som -100 eller 100 bör resultera i ett förbud eller exklusivt val av relevant token. Du kan till exempel skicka {"50256": -100} för att förhindra <att token |endoftext|> genereras.
user sträng Valfritt En unik identifierare som representerar slutanvändaren, som kan hjälpa dig att övervaka och upptäcka missbruk
n integer Valfritt 1 Hur många slutföranden som ska genereras för varje fråga. Obs! Eftersom den här parametern genererar många slutföranden kan den snabbt förbruka din tokenkvot. Använd noggrant och se till att du har rimliga inställningar för max_tokens och stoppa.
stream boolean Valfritt Falsk Om du vill strömma tillbaka partiella förlopp. Om det anges skickas token som databaserade serverutskickade händelser när de blir tillgängliga, med strömmen avslutad av ett data: [DONE]-meddelande.
logprobs integer Valfritt NULL Inkludera loggens sannolikheter på logprobs mest sannolika token, samt valda token. Om logprobs till exempel är 10 returnerar API:et en lista över de 10 mest sannolika token. API:et returnerar alltid logprob för den samplade token, så det kan finnas upp till logprobs+1-element i svaret. Den här parametern kan inte användas med gpt-35-turbo.
suffix sträng Valfritt NULL Suffixet som kommer efter att infogad text har slutförts.
echo boolean Valfritt Falsk Upprepa uppmaningen utöver slutförandet. Den här parametern kan inte användas med gpt-35-turbo.
stop sträng eller matris Valfritt NULL Upp till fyra sekvenser där API:et slutar generera ytterligare token. Den returnerade texten innehåller inte stoppsekvensen. För GPT-4 Turbo med Vision stöds upp till två sekvenser.
presence_penalty Nummer Valfritt 0 Tal mellan -2.0 och 2.0. Positiva värden straffar nya token baserat på om de visas i texten hittills, vilket ökar modellens sannolikhet att prata om nya ämnen.
frequency_penalty Nummer Valfritt 0 Tal mellan -2.0 och 2.0. Positiva värden straffar nya token baserat på deras befintliga frekvens i texten hittills, vilket minskar modellens sannolikhet att upprepa samma rad ordagrant.
best_of integer Valfritt 1 Genererar best_of slutför serversidan och returnerar den "bästa" (den med den lägsta loggens sannolikhet per token). Resultat kan inte strömmas. När det används med n styr best_of antalet kandidatavslut och n anger hur många som ska returneras – best_of måste vara större än n. Obs! Eftersom den här parametern genererar många slutföranden kan den snabbt förbruka din tokenkvot. Använd noggrant och se till att du har rimliga inställningar för max_tokens och stoppa. Den här parametern kan inte användas med gpt-35-turbo.

Exempelbegäranden

curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/completions?api-version=2024-02-01\
  -H "Content-Type: application/json" \
  -H "api-key: YOUR_API_KEY" \
  -d "{
  \"prompt\": \"Once upon a time\",
  \"max_tokens\": 5
}"

Exempelsvar

{
    "id": "cmpl-4kGh7iXtjW4lc9eGhff6Hp8C7btdQ",
    "object": "text_completion",
    "created": 1646932609,
    "model": "ada",
    "choices": [
        {
            "text": ", a dark line crossed",
            "index": 0,
            "logprobs": null,
            "finish_reason": "length"
        }
    ]
}

I exempelsvaret finish_reason är det lika med stop. Om finish_reason det är lika content_filter kan du läsa vår guide för innehållsfiltrering för att förstå varför detta sker.

Inbäddningar

Få en vektorrepresentation av en viss indata som enkelt kan användas av maskininlärningsmodeller och andra algoritmer.

Kommentar

OpenAI tillåter för närvarande ett större antal matrisindata med text-embedding-ada-002. Azure OpenAI stöder för närvarande indatamatriser upp till 16 för text-embedding-ada-002 (Version 2). Båda kräver att maxgränsen för indatatoken per API-begäran förblir under 8191 för den här modellen.

Skapa en inbäddning

POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/embeddings?api-version={api-version}

Sökvägsparametrar

Parameter Type Obligatorisk? beskrivning
your-resource-name sträng Obligatoriskt Namnet på din Azure OpenAI-resurs.
deployment-id sträng Obligatoriskt Namnet på modelldistributionen. Du måste först distribuera en modell innan du kan göra anrop.
api-version sträng Obligatoriskt Den API-version som ska användas för den här åtgärden. Formatet är ÅÅÅÅ-MM-DD.

Versioner som stöds

Begärandetext

Parameter Type Obligatorisk? Standardvärde beskrivning
input sträng eller matris Ja Ej tillämpligt Indatatext för att hämta inbäddningar för, kodad som en matris eller sträng. Antalet indatatoken varierar beroende på vilken modell du använder. Stöder endast text-embedding-ada-002 (Version 2) matrisindata.
user sträng Nej Null En unik identifierare som representerar slutanvändaren. Detta hjälper Azure OpenAI att övervaka och upptäcka missbruk. Skicka inte PII-identifierare i stället använda pseudoanonymiserade värden, till exempel GUID
encoding_format sträng Nej float Formatet för att returnera inbäddningarna i. Kan vara antingen float eller base64. Standardvärdet är float.

[Har lagts till i 2024-03-01-preview].
dimensions integer Nej Antalet dimensioner som resulterande inbäddningar av utdata ska ha. Stöds endast i text-embedding-3 och senare modeller.

[Har lagts till i 2024-03-01-preview]

Exempelbegäranden

curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/embeddings?api-version=2024-02-01 \
  -H "Content-Type: application/json" \
  -H "api-key: YOUR_API_KEY" \
  -d "{\"input\": \"The food was delicious and the waiter...\"}"

Exempelsvar

{
  "object": "list",
  "data": [
    {
      "object": "embedding",
      "embedding": [
        0.018990106880664825,
        -0.0073809814639389515,
        .... (1024 floats total for ada)
        0.021276434883475304,
      ],
      "index": 0
    }
  ],
  "model": "text-similarity-babbage:001"
}

Chatten har slutförts

Skapa slutföranden för chattmeddelanden med modellerna GPT-35-Turbo och GPT-4.

Skapa chattavslut

POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/chat/completions?api-version={api-version}

Sökvägsparametrar

Parameter Type Obligatorisk? beskrivning
your-resource-name sträng Obligatoriskt Namnet på din Azure OpenAI-resurs.
deployment-id sträng Obligatoriskt Namnet på modelldistributionen. Du måste först distribuera en modell innan du kan göra anrop.
api-version sträng Obligatoriskt Den API-version som ska användas för den här åtgärden. Detta följer formatet YYYY-MM-DD eller YYYY-MM-DD-preview.

Versioner som stöds

Viktigt!

Parametrarna functions och function_call har inaktuella med versionen av API: 2023-12-01-preview ets version. Ersättningen för functions är parametern tools . Ersättningen för function_call är parametern tool_choice . Parallella funktionsanrop som introducerades som en del av 2023-12-01-preview stöds endast med gpt-35-turbo (1106) och gpt-4 (1106-förhandsversion) även kallat GPT-4 Turbo Preview.

Parameter Type Obligatorisk? Standardvärde beskrivning
messages matris Obligatoriskt Samlingen med kontextmeddelanden som är associerade med denna begäran om att chatten ska slutföras. Typisk användning börjar med ett chattmeddelande för systemrollen som innehåller instruktioner för assistentens beteende, följt av alternerande meddelanden mellan användar- och assistentrollerna.
temperature Nummer Valfritt 1 Vilken samplingstemperatur som ska användas, mellan 0 och 2. Högre värden som 0,8 gör utdata mer slumpmässiga, medan lägre värden som 0,2 gör det mer fokuserat och deterministiskt. Vi rekommenderar vanligtvis att du ändrar detta eller top_p men inte båda.
role sträng Ja Ej tillämpligt Anger vem som ger det aktuella meddelandet. Kan vara system,user,assistant,tooleller function.
content sträng eller matris Ja Ej tillämpligt Innehållet i meddelandet. Det måste vara en sträng, såvida det inte finns i ett visionsaktiverat scenario. Om det är en del av meddelandet, med hjälp av user GPT-4 Turbo with Vision-modellen, med den senaste API-versionen, måste det content vara en matris med strukturer, där varje objekt representerar antingen text eller en bild:
  • text: Indatatext representeras som en struktur med följande egenskaper:
    • type = "text"
    • text = indatatexten
  • images: En indatabild representeras som en struktur med följande egenskaper:
    • type = "image_url"
    • image_url = en struktur med följande egenskaper:
      • url = bildens URL
      • (valfritt) detail = high, low, eller auto
contentPart objekt Nej Ej tillämpligt En del av en användares multimodala meddelande. Det kan vara antingen texttyp eller bildtyp. Om text är det en textsträng. Om bilden är det ett contentPartImage objekt.
contentPartImage objekt Nej Ej tillämpligt Representerar en användaruppladdad bild. Den har en url egenskap, som antingen är en URL för bilden eller grundläggande 64-kodade bilddata. Den har också en detail egenskap som kan vara auto, loweller high.
enhancements objekt Nej Ej tillämpligt Representerar de visionsförbättringsfunktioner som begärdes för chatten. Den har grounding och egenskaper, var och ocr en har en boolesk enabled egenskap. Använd dessa för att begära OCR-tjänsten och/eller objektidentifierings-/grundtjänsten [Den här förhandsversionsparametern är inte tillgänglig i GA-API:et 2024-02-01 och är inte längre tillgänglig i förhandsversions-API:er efter 2024-03-01-preview.]
dataSources objekt Nej Ej tillämpligt Representerar ytterligare resursdata. Visuellt innehåll resursdata behövs för visionsförbättring. Den har en type egenskap, som ska vara "AzureComputerVision" och en parameters egenskap, som har en endpoint och key -egenskap. Dessa strängar ska anges till slutpunkts-URL:en och åtkomstnyckeln för din Visuellt innehåll resurs.
n integer Valfritt 1 Hur många alternativ för chattavslut som ska genereras för varje indatameddelande.
stream boolean Valfritt falskt Om det anges skickas delvisa meddelandedelta, till exempel i ChatGPT. Token skickas som databaserade serverutskickade händelser när de blir tillgängliga, och strömmen avslutas med ett data: [DONE] meddelande."
stop sträng eller matris Valfritt NULL Upp till 4 sekvenser där API:et slutar generera ytterligare token.
max_tokens integer Valfritt Inf Det maximala antalet token som tillåts för det genererade svaret. Som standard är antalet token som modellen kan returnera (4096 – prompttoken).
presence_penalty Nummer Valfritt 0 Tal mellan -2.0 och 2.0. Positiva värden straffar nya token baserat på om de visas i texten hittills, vilket ökar modellens sannolikhet att prata om nya ämnen.
frequency_penalty Nummer Valfritt 0 Tal mellan -2.0 och 2.0. Positiva värden straffar nya token baserat på deras befintliga frekvens i texten hittills, vilket minskar modellens sannolikhet att upprepa samma rad ordagrant.
logit_bias objekt Valfritt NULL Ändra sannolikheten för att angivna token visas i slutförandet. Accepterar ett json-objekt som mappar token (som anges av deras token-ID i tokenizern) till ett associerat bias-värde från -100 till 100. Matematiskt läggs biasen till i de logits som genereras av modellen före sampling. Den exakta effekten varierar per modell, men värden mellan -1 och 1 bör minska eller öka sannolikheten för val. värden som -100 eller 100 bör resultera i ett förbud eller exklusivt val av relevant token.
user sträng Valfritt En unik identifierare som representerar slutanvändaren, vilket kan hjälpa Azure OpenAI att övervaka och upptäcka missbruk.
function_call Valfritt [Deprecated in 2023-12-01-preview replacement parameter is tools_choice]Styr hur modellen svarar på funktionsanrop. "ingen" innebär att modellen inte anropar en funktion och svarar slutanvändaren. auto innebär att modellen kan välja mellan en slutanvändare eller anropa en funktion. Om du anger en viss funktion via {"name": "my_function"} tvingar modellen att anropa den funktionen. "none" är standard när inga funktioner finns. auto är standardvärdet om det finns funktioner. Den här parametern kräver API-version 2023-07-01-preview
functions FunctionDefinition[] Valfritt [Deprecated in 2023-12-01-preview replacement paremeter is tools] En lista över funktioner som modellen kan generera JSON-indata för. Den här parametern kräver API-version 2023-07-01-preview
tools sträng (Verktygets typ. Endast function stöds.) Valfritt En lista över verktyg som modellen kan anropa. För närvarande stöds endast funktioner som ett verktyg. Använd det här alternativet om du vill ange en lista över funktioner som modellen kan generera JSON-indata för. Den här parametern kräver API-version 2023-12-01-preview
tool_choice sträng eller objekt Valfritt ingen är standard när det inte finns några funktioner. auto är standardvärdet om det finns funktioner. Styr vilken (om någon) funktion som anropas av modellen. Ingen innebär att modellen inte anropar en funktion och i stället genererar ett meddelande. auto innebär att modellen kan välja mellan att generera ett meddelande eller anropa en funktion. Om du anger en viss funktion via {"type: "function", "function": {"name": "my_function"}} tvingar modellen att anropa funktionen. Den här parametern kräver API-version 2023-12-01-preview eller senare.
top_p Nummer Nej Standard:1
Min:0
Max:1
Ett alternativ till sampling med temperatur, som kallas kärnsampling, där modellen tar hänsyn till resultatet av token med top_p sannolikhetsmassa. Så 0,1 innebär att endast token som består av den översta 10 % sannolikhetsmassan beaktas.\nVi rekommenderar vanligtvis att du ändrar detta eller temperature men inte båda."
log_probs boolean Nej Om du vill returnera loggannolikheter för utdatatoken eller inte. Om sant returnerar loggannolikerna för varje utdatatoken som returneras i content i message. Det här alternativet är för närvarande inte tillgängligt för gpt-4-vision-preview modellen.
top_logprobs integer Nej Min: 0
Max: 5
Ett heltal mellan 0 och 5 som anger antalet mest sannolika token som ska returneras vid varje tokenposition, var och en med en associerad loggsannolikhet. logprobs måste anges till true om den här parametern används.
response_format objekt Nej Ett objekt som anger det format som modellen måste mata ut. Används för att aktivera JSON-läge.
seed integer Nej 0 Om det anges gör vårt system bästa för att sampla deterministiskt, så att upprepade begäranden med samma seed och parametrar ska returnera samma resultat. Determinism är inte garanterad och du bör referera till svarsparametern system_fingerprint för att övervaka ändringar i serverdelen.

Alla parametrar är inte tillgängliga i varje API-version.

Exempelbegäranden

Chatt med endast text

curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/chat/completions?api-version=2024-02-01 \
  -H "Content-Type: application/json" \
  -H "api-key: YOUR_API_KEY" \
  -d '{"messages":[{"role": "system", "content": "You are a helpful assistant."},{"role": "user", "content": "Does Azure OpenAI support customer managed keys?"},{"role": "assistant", "content": "Yes, customer managed keys are supported by Azure OpenAI."},{"role": "user", "content": "Do other Azure AI services support this too?"}]}'

Chatta med vision

curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/chat/completions?api-version=2023-12-01-preview \
  -H "Content-Type: application/json" \
  -H "api-key: YOUR_API_KEY" \
  -d '{"messages":[{"role":"system","content":"You are a helpful assistant."},{"role":"user","content":[{"type":"text","text":"Describe this picture:"},{ "type": "image_url", "image_url": { "url": "https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png", "detail": "high" } }]}]}'

Förbättrad chatt med vision

  • Stöds inte med GPT-4 Turbo GA-modellengpt-4Version:turbo-2024-04-09
  • Inte stöd för2024-02-01och2024-04-01-preview nyare API-versioner.
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/extensions/chat/completions?api-version=2023-12-01-preview \
  -H "Content-Type: application/json" \
  -H "api-key: YOUR_API_KEY" \
  -d '{"enhancements":{"ocr":{"enabled":true},"grounding":{"enabled":true}},"dataSources":[{"type":"AzureComputerVision","parameters":{"endpoint":" <Computer Vision Resource Endpoint> ","key":"<Computer Vision Resource Key>"}}],"messages":[{"role":"system","content":"You are a helpful assistant."},{"role":"user","content":[{"type":"text","text":"Describe this picture:"},{"type":"image_url","image_url":"https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png"}]}]}'

Exempelsvar

{
    "id": "chatcmpl-6v7mkQj980V1yBec6ETrKPRqFjNw9",
    "object": "chat.completion",
    "created": 1679072642,
    "model": "gpt-35-turbo",
    "usage":
    {
        "prompt_tokens": 58,
        "completion_tokens": 68,
        "total_tokens": 126
    },
    "choices":
    [
        {
            "message":
            {
                "role": "assistant",
                "content": "Yes, other Azure AI services also support customer managed keys.
                    Azure AI services offer multiple options for customers to manage keys, such as
                    using Azure Key Vault, customer-managed keys in Azure Key Vault or
                    customer-managed keys through Azure Storage service. This helps customers ensure
                    that their data is secure and access to their services is controlled."
            },
            "finish_reason": "stop",
            "index": 0
        }
    ]
}

Utdataformatering justerad för enkel läsning, faktiska utdata är ett enda textblock utan radbrytningar.

I exempelsvaret finish_reason är det lika med stop. Om finish_reason det är lika content_filter kan du läsa vår guide för innehållsfiltrering för att förstå varför detta sker.

ChatMessage

Ett enda rolltilldekringsmeddelande i en chattinteraktion.

Namn Type Beskrivning
innehåll sträng Texten som är associerad med den här meddelandenyttolasten.
function_call FunctionCall Namnet och argumenten för en funktion som ska anropas, som genereras av modellen.
name sträng Författaren name till det här meddelandet. name krävs om rollen är function, och det ska vara namnet på den funktion vars svar finns i content. Kan innehålla a-z, A-Z, 0-9 och understreck, med en maximal längd på 64 tecken.
roll ChatRole Rollen som är associerad med den här meddelandenyttolasten

ChatRole

En beskrivning av det avsedda syftet med ett meddelande i en chattinteraktion.

Namn Type Beskrivning
Assistent sträng Den roll som ger svar på systeminstrukna, användarinstrukna indata.
function sträng Den roll som ger funktionsresultat för chattens slutföranden.
system sträng Rollen som instruerar eller anger assistentens beteende.
användare sträng Rollen som ger indata för chattavslut.

Funktion

Detta används med parametern tools som lades till i API-versionen 2023-12-01-preview.

Namn Type Beskrivning
description sträng En beskrivning av vad funktionen gör, som används av modellen för att välja när och hur funktionen ska anropas
name sträng Namnet på den funktion som ska anropas. Måste vara a-z, A-Z, 0-9, eller innehålla understreck och bindestreck, med en maximal längd på 64
parametrar objekt Parametrarna som funktionerna accepterar, som beskrivs som ett JSON-schemaobjekt. Se JSON-schemareferensen för dokumentation om formatet."

FunctionCall-Inaktuell

Namnet och argumenten för en funktion som ska anropas, som genereras av modellen. Detta kräver API-version 2023-07-01-preview

Namn Type Beskrivning
Argument sträng Argumenten för att anropa funktionen med, som genereras av modellen i JSON-format. Modellen genererar inte alltid giltig JSON och kan fabricera parametrar som inte definierats av funktionsschemat. Verifiera argumenten i koden innan du anropar funktionen.
name sträng Namnet på funktionen som ska anropas.

FunctionDefinition-Inaktuell

Definitionen av en anropare-angiven funktion som chatten slutför kan anropa som svar på matchande användarindata. Detta kräver API-version 2023-07-01-preview

Namn Type Beskrivning
description sträng En beskrivning av vad funktionen gör. Modellen använder den här beskrivningen när du väljer funktionen och tolkar dess parametrar.
name sträng Namnet på den funktion som ska anropas.
parametrar Parametrarna som funktionerna accepterar, som beskrivs som ett JSON-schemaobjekt .

Tillägg för slutföranden

Dokumentationen för det här avsnittet har flyttats. Se referensdokumentationen för Azure OpenAI På dina data i stället.

Bildgenerering

Begär en genererad avbildning (DALL-E 3)

Generera och hämta en batch med bilder från en text bildtext.

POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/images/generations?api-version={api-version} 

Sökvägsparametrar

Parameter Type Obligatorisk? beskrivning
your-resource-name sträng Obligatoriskt Namnet på din Azure OpenAI-resurs.
deployment-id sträng Obligatoriskt Namnet på din DALL-E 3-modelldistribution, till exempel MyDalle3. Du måste först distribuera en DALL-E 3-modell innan du kan göra anrop.
api-version sträng Obligatoriskt Den API-version som ska användas för den här åtgärden. Formatet är ÅÅÅÅ-MM-DD.

Versioner som stöds

Begärandetext

Parameter Type Obligatorisk? Standardvärde beskrivning
prompt sträng Obligatoriskt En textbeskrivning av de önskade bilderna. Den maximala längden är 4 000 tecken.
n integer Valfritt 1 Antalet bilder som ska genereras. Endast n=1 stöds för DALL-E 3.
size sträng Valfritt 1024x1024 Storleken på de genererade bilderna. Måste vara en av 1792x1024, 1024x1024eller 1024x1792.
quality sträng Valfritt standard Kvaliteten på de genererade bilderna. Måste vara hd eller standard.
response_format sträng Valfritt url Formatet där de genererade bilderna returneras måste vara url (en URL som pekar på bilden) eller b64_json (baskoden på 64 byte i JSON-format).
style sträng Valfritt vivid Formatmallen för de genererade bilderna. Måste vara natural eller vivid (för hyperrealistiska/dramatiska bilder).
user sträng Valfritt En unik identifierare som representerar slutanvändaren, som kan hjälpa till att övervaka och upptäcka missbruk.

Dalle-2 stöds nu i 2024-05-01-preview.

Exempelbegäranden

curl -X POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/images/generations?api-version=2023-12-01-preview \
  -H "Content-Type: application/json" \
  -H "api-key: YOUR_API_KEY" \
  -d '{
    "prompt": "An avocado chair",
    "size": "1024x1024",
    "n": 1,
    "quality": "hd", 
    "style": "vivid"
  }'

Exempelsvar

Åtgärden returnerar en 202 statuskod och ett GenerateImagesResponse JSON-objekt som innehåller åtgärdens ID och status.

{ 
    "created": 1698116662, 
    "data": [ 
        { 
            "url": "url to the image", 
            "revised_prompt": "the actual prompt that was used" 
        }, 
        { 
            "url": "url to the image" 
        },
        ...
    ]
} 

Begär en genererad avbildning (förhandsversion av DALL-E 2)

Generera en batch med bilder från en text bildtext.

POST https://{your-resource-name}.openai.azure.com/openai/images/generations:submit?api-version={api-version}

Sökvägsparametrar

Parameter Type Obligatorisk? beskrivning
your-resource-name sträng Obligatoriskt Namnet på din Azure OpenAI-resurs.
api-version sträng Obligatoriskt Den API-version som ska användas för den här åtgärden. Formatet är ÅÅÅÅ-MM-DD.

Versioner som stöds

Begärandetext

Parameter Type Obligatorisk? Standardvärde beskrivning
prompt sträng Obligatoriskt En textbeskrivning av de önskade bilderna. Den maximala längden är 1 000 tecken.
n integer Valfritt 1 Antalet bilder som ska genereras. Måste vara mellan 1 och 5.
size sträng Valfritt 1 024 × 1 024 Storleken på de genererade bilderna. Måste vara en av 256x256, 512x512eller 1024x1024.

Exempelbegäranden

curl -X POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/images/generations:submit?api-version=2023-06-01-preview \
  -H "Content-Type: application/json" \
  -H "api-key: YOUR_API_KEY" \
  -d '{
"prompt": "An avocado chair",
"size": "512x512",
"n": 3
}'

Exempelsvar

Åtgärden returnerar en 202 statuskod och ett GenerateImagesResponse JSON-objekt som innehåller åtgärdens ID och status.

{
  "id": "f508bcf2-e651-4b4b-85a7-58ad77981ffa",
  "status": "notRunning"
}

Hämta ett genererat bildresultat (förhandsversion av DALL-E 2)

Använd det här API:et för att hämta resultatet av en avbildningsgenereringsåtgärd. Bildgenerering är för närvarande endast tillgängligt med api-version=2023-06-01-preview.

GET https://{your-resource-name}.openai.azure.com/openai/operations/images/{operation-id}?api-version={api-version}

Sökvägsparametrar

Parameter Type Obligatorisk? beskrivning
your-resource-name sträng Obligatoriskt Namnet på din Azure OpenAI-resurs.
operation-id sträng Obligatoriskt DET GUID som identifierar den ursprungliga begäran om bildgenerering.

Versioner som stöds

Exempelbegäranden

curl -X GET "https://{your-resource-name}.openai.azure.com/openai/operations/images/{operation-id}?api-version=2023-06-01-preview"
-H "Content-Type: application/json"
-H "Api-Key: {api key}"

Exempelsvar

När åtgärden har slutförts returneras en 200 statuskod och ett OperationResponse JSON-objekt. Fältet status kan vara "notRunning" (aktiviteten är i kö men har inte startat ännu), "running", , "canceled""succeeded"(aktiviteten har överskriden tidsgräns), "failed"eller "deleted". En succeeded status anger att den genererade avbildningen är tillgänglig för nedladdning på den angivna URL:en. Om flera avbildningar genererades returneras alla url:er i fältet result.data .

{
  "created": 1685064331,
  "expires": 1685150737,
  "id": "4b755937-3173-4b49-bf3f-da6702a3971a",
  "result": {
    "data": [
      {
        "url": "<URL_TO_IMAGE>"
      },
      {
        "url": "<URL_TO_NEXT_IMAGE>"
      },
      ...
    ]
  },
  "status": "succeeded"
}

Ta bort en genererad avbildning från servern (förhandsversion av DALL-E 2)

Du kan använda åtgärds-ID:t som returnerades av begäran för att ta bort motsvarande avbildning från Azure-servern. Genererade bilder tas bort automatiskt efter 24 timmar som standard, men du kan utlösa borttagningen tidigare om du vill.

DELETE https://{your-resource-name}.openai.azure.com/openai/operations/images/{operation-id}?api-version={api-version}

Sökvägsparametrar

Parameter Type Obligatorisk? beskrivning
your-resource-name sträng Obligatoriskt Namnet på din Azure OpenAI-resurs.
operation-id sträng Obligatoriskt DET GUID som identifierar den ursprungliga begäran om bildgenerering.

Versioner som stöds

Exempelbegäranden

curl -X DELETE "https://{your-resource-name}.openai.azure.com/openai/operations/images/{operation-id}?api-version=2023-06-01-preview"
-H "Content-Type: application/json"
-H "Api-Key: {api key}"

Response

Åtgärden returnerar en 204 statuskod om den lyckas. Det här API:et lyckas bara om åtgärden är i ett sluttillstånd (inte running).

Tal till text

Du kan använda en Whisper-modell i Azure OpenAI Service för tal till text-transkription eller talöversättning. Mer information om hur du använder en Whisper-modell finns i snabbstarten och översikten över Whisper-modellen.

Begära ett tal till text-transkription

Transkriberar en ljudfil.

POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/audio/transcriptions?api-version={api-version}

Sökvägsparametrar

Parameter Type Obligatorisk? beskrivning
your-resource-name sträng Obligatoriskt Namnet på din Azure OpenAI-resurs.
deployment-id sträng Obligatoriskt Namnet på din Whisper-modelldistribution, till exempel MyWhisperDeployment. Du måste först distribuera en Whisper-modell innan du kan göra anrop.
api-version sträng Obligatoriskt Den API-version som ska användas för den här åtgärden. Det här värdet följer YYYY-MM-DD-formatet.

Versioner som stöds

Begärandetext

Parameter Type Obligatorisk? Standardvärde beskrivning
file fil Ja Ej tillämpligt Ljudfilsobjektet (inte filnamnet) som transkriberas i något av följande format: flac, , mp4mp3, mpeg, mpga, m4a, ogg, waveller webm.

Filstorleksgränsen för Whisper-modellen i Azure OpenAI Service är 25 MB. Om du behöver transkribera en fil som är större än 25 MB kan du dela upp den i segment. Du kan också använda Batch-transkriptions-API:et för Azure AI Speech.

Du kan hämta exempelljudfiler från Azure AI Speech SDK-lagringsplatsen på GitHub.
language sträng Nej Null Språket för indataljudet, till exempel fr. Att tillhandahålla indataspråket i ISO-639-1-format förbättrar noggrannheten och svarstiden.

Listan över språk som stöds finns i OpenAI-dokumentationen.
prompt sträng Nej Null En valfri text som vägleder modellens formatmall eller fortsätter med ett tidigare ljudsegment. Uppmaningen ska matcha ljudspråket.

Mer information om frågor, inklusive exempel på användningsfall, finns i OpenAI-dokumentationen.
response_format sträng Nej json Formatet för avskriftsutdata i något av följande alternativ: json, text, srt, verbose_json eller vtt.

Standardvärdet är json.
temperature Nummer Nej 0 Provtagningstemperaturen, mellan 0 och 1.

Högre värden som 0,8 gör utdata mer slumpmässiga, medan lägre värden som 0,2 gör det mer fokuserat och deterministiskt. Om värdet är 0 använder modellen loggsannolikhet för att automatiskt öka temperaturen tills vissa tröskelvärden uppnås.

Standardvärdet är 0.
timestamp_granularities matris Valfritt segment Tidsstämpelkornigheterna som ska fyllas i för den här transkriptionen. response_format måste anges verbose_json för att använda tidsstämpelkornigheter. Något av eller båda alternativen stöds: word, eller segment. Obs! Det finns ingen ytterligare svarstid för segmenttidsstämplar, men att generera ordtidsstämplar medför ytterligare svarstid. [Lades till 2024-04-01-prevew]

Exempelbegäranden

curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/audio/transcriptions?api-version=2023-09-01-preview \
  -H "Content-Type: multipart/form-data" \
  -H "api-key: $YOUR_API_KEY" \
  -F file="@./YOUR_AUDIO_FILE_NAME.wav" \
  -F "language=en" \
  -F "prompt=The transcript contains zoology terms and geographical locations." \
  -F "temperature=0" \
  -F "response_format=srt"

Exempelsvar

1
00:00:00,960 --> 00:00:07,680
The ocelot, Lepardus paradalis, is a small wild cat native to the southwestern United States,

2
00:00:07,680 --> 00:00:13,520
Mexico, and Central and South America. This medium-sized cat is characterized by

3
00:00:13,520 --> 00:00:18,960
solid black spots and streaks on its coat, round ears, and white neck and undersides.

4
00:00:19,760 --> 00:00:27,840
It weighs between 8 and 15.5 kilograms, 18 and 34 pounds, and reaches 40 to 50 centimeters

5
00:00:27,840 --> 00:00:34,560
16 to 20 inches at the shoulders. It was first described by Carl Linnaeus in 1758.

6
00:00:35,360 --> 00:00:42,880
Two subspecies are recognized, L. p. paradalis and L. p. mitis. Typically active during twilight

7
00:00:42,880 --> 00:00:48,480
and at night, the ocelot tends to be solitary and territorial. It is efficient at climbing,

8
00:00:48,480 --> 00:00:54,480
leaping, and swimming. It preys on small terrestrial mammals such as armadillo, opossum,

9
00:00:54,480 --> 00:00:56,480
and lagomorphs.

Begära ett tal till textöversättning

Översätter en ljudfil från ett annat språk till engelska. Listan över språk som stöds finns i OpenAI-dokumentationen.

POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/audio/translations?api-version={api-version}

Sökvägsparametrar

Parameter Type Obligatorisk? beskrivning
your-resource-name sträng Obligatoriskt Namnet på din Azure OpenAI-resurs.
deployment-id sträng Obligatoriskt Namnet på din Whisper-modelldistribution, till exempel MyWhisperDeployment. Du måste först distribuera en Whisper-modell innan du kan göra anrop.
api-version sträng Obligatoriskt Den API-version som ska användas för den här åtgärden. Det här värdet följer YYYY-MM-DD-formatet.

Versioner som stöds

Begärandetext

Parameter Type Obligatorisk? Standardvärde beskrivning
file fil Ja Ej tillämpligt Ljudfilsobjektet (inte filnamnet) som transkriberas i något av följande format: flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav eller webm.

Filstorleksgränsen för Azure OpenAI Whisper-modellen är 25 MB. Om du behöver transkribera en fil som är större än 25 MB kan du dela upp den i segment.

Du kan ladda ned exempelljudfiler från Azure AI Speech SDK-lagringsplatsen på GitHub.
prompt sträng Nej Null En valfri text som vägleder modellens formatmall eller fortsätter med ett tidigare ljudsegment. Uppmaningen ska matcha ljudspråket.

Mer information om frågor, inklusive exempel på användningsfall, finns i OpenAI-dokumentationen.
response_format sträng Nej json Formatet för avskriftsutdata i något av följande alternativ: json, text, srt, verbose_json eller vtt.

Standardvärdet är json.
temperature Nummer Nej 0 Provtagningstemperaturen, mellan 0 och 1.

Högre värden som 0,8 gör utdata mer slumpmässiga, medan lägre värden som 0,2 gör det mer fokuserat och deterministiskt. Om värdet är 0 använder modellen loggsannolikhet för att automatiskt öka temperaturen tills vissa tröskelvärden uppnås.

Standardvärdet är 0.

Exempelbegäranden

curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/audio/translations?api-version=2023-09-01-preview \
  -H "Content-Type: multipart/form-data" \
  -H "api-key: $YOUR_API_KEY" \
  -F file="@./YOUR_AUDIO_FILE_NAME.wav" \
  -F "temperature=0" \
  -F "response_format=json"

Exempelsvar

{
  "text": "Hello, my name is Wolfgang and I come from Germany. Where are you heading today?"
}

Text till tal

Syntetisera text till tal.

POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/audio/speech?api-version={api-version}

Sökvägsparametrar

Parameter Type Obligatorisk? beskrivning
your-resource-name sträng Obligatoriskt Namnet på din Azure OpenAI-resurs.
deployment-id sträng Obligatoriskt Namnet på distributionen av text till talmodell, till exempel MyTextToSpeechDeployment. Du måste först distribuera en text till talmodell (till exempel tts-1 eller tts-1-hd) innan du kan göra anrop.
api-version sträng Obligatoriskt Den API-version som ska användas för den här åtgärden. Det här värdet följer YYYY-MM-DD-formatet.

Versioner som stöds

Begärandetext

Parameter Type Obligatorisk? Standardvärde beskrivning
model string Ja Ej tillämpligt En av de tillgängliga TTS-modellerna: tts-1 eller tts-1-hd
input sträng Ja Ej tillämpligt Texten som ska genereras för. Den maximala längden är 4 096 tecken. Ange indatatext på önskat språk.1
voice sträng Ja Ej tillämpligt Den röst som ska användas när ljudet genereras. Röster som stöds är alloy, echo, fable, onyx, novaoch shimmer. Förhandsversioner av rösterna är tillgängliga i OpenAI-text till talguiden.

1 Text till talmodeller stöder i allmänhet samma språk som Whisper-modellen. Listan över språk som stöds finns i OpenAI-dokumentationen.

Exempelbegäranden

curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/audio/speech?api-version=2024-02-15-preview \
 -H "api-key: $YOUR_API_KEY" \
 -H "Content-Type: application/json" \
 -d '{
    "model": "tts-hd",
    "input": "I'm excited to try text to speech.",
    "voice": "alloy"
}' --output speech.mp3

Exempelsvar

Talet returneras som en ljudfil från föregående begäran.

API:er för hantering

Azure OpenAI distribueras som en del av Azure AI-tjänsterna. Alla Azure AI-tjänster förlitar sig på samma uppsättning hanterings-API:er för att skapa, uppdatera och ta bort åtgärder. Hanterings-API:erna används också för att distribuera modeller i en Azure OpenAI-resurs.

Referensdokumentation för API:er för hantering

Nästa steg

Lär dig mer om modeller och finjustering med REST-API:et. Läs mer om de underliggande modeller som driver Azure OpenAI.