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 avBearer
, till exempelBearer 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
2022-12-01
Swagger-specifikation2023-03-15-preview
(går i pension 1 juli 2024) Swagger-specifikation2023-05-15
Swagger-specifikation2023-06-01-preview
Swagger-specifikation2023-07-01-preview
(går i pension 1 juli 2024) Swagger-specifikation2023-08-01-preview
(går i pension 1 juli 2024) Swagger-specifikation2023-09-01-preview
(går i pension 1 juli 2024) Swagger-specifikation2023-10-01-preview
Swagger-specifikation2023-12-01-preview
(går i pension 1 juli 2024) Swagger-specifikation2024-02-15-preview
Swagger-specifikation2024-03-01-preview
Swagger-specifikation2024-04-01-preview
Swagger-specifikation2024-05-01-preview
Swagger-specifikation2024-02-01
Swagger-specifikation
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
2023-03-15-preview
(går i pension 1 juli 2024) Swagger-specifikation2023-05-15
Swagger-specifikation2023-06-01-preview
Swagger-specifikation2023-07-01-preview
(går i pension 1 juli 2024) Swagger-specifikation2023-08-01-preview
(går i pension 1 juli 2024) Swagger-specifikation2023-09-01-preview
(går i pension 1 juli 2024) Swagger-specifikation2023-10-01-preview
Swagger-specifikation2023-12-01-preview
(går i pension 1 juli 2024) Swagger-specifikation2024-02-15-preview
Swagger-specifikation2024-03-01-preview
Swagger-specifikation2024-04-01-preview
Swagger-specifikation2024-05-01-preview
Swagger-specifikation2024-02-01
Swagger-specifikation
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
2023-03-15-preview
(går i pension 1 juli 2024) Swagger-specifikation2023-05-15
Swagger-specifikation2023-06-01-preview
Swagger-specifikation2023-07-01-preview
(går i pension 1 juli 2024) Swagger-specifikation2023-08-01-preview
(går i pension 1 juli 2024) Swagger-specifikation2023-09-01-preview
(går i pension 1 juli 2024) Swagger-specifikation2023-10-01-preview
Swagger-specifikation2023-12-01-preview
(går i pension 1 juli 2024) (Den här versionen eller större krävs för visionsscenarier) Swagger-specifikation2024-02-15-preview
Swagger-specifikation2024-03-01-preview
Swagger-specifikation2024-04-01-preview
Swagger-specifikation2024-05-01-preview
Swagger-specifikation2024-02-01
Swagger-specifikation
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 ,tool eller 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:
|
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 , low eller 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-modellen
gpt-4
Version:turbo-2024-04-09
- Inte stöd för
2024-02-01
och2024-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
2023-12-01-preview (retiring July 1, 2024)
Swagger-specifikation2024-02-15-preview
Swagger-specifikation2024-03-01-preview
Swagger-specifikation2024-04-01-preview
Swagger-specifikation2024-05-01-preview
Swagger-specifikation2024-02-01
Swagger-specifikation
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 , 1024x1024 eller 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
2023-06-01-preview
Swagger-specifikation
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 , 512x512 eller 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
2023-06-01-preview
Swagger-specifikation
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
2023-06-01-preview
Swagger-specifikation
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
2023-09-01-preview
(går i pension 1 juli 2024) Swagger-specifikation2023-10-01-preview
Swagger-specifikation2023-12-01-preview
(går i pension 1 juli 2024) Swagger-specifikation2024-02-15-preview
Swagger-specifikation2024-03-01-preview
Swagger-specifikation2024-04-01-preview
Swagger-specifikation2024-05-01-preview
Swagger-specifikation2024-02-01
Swagger-specifikation
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 , , mp4 mp3 , mpeg , mpga , m4a , ogg , wav eller 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
2023-09-01-preview
(går i pension 1 juli 2024) Swagger-specifikation2023-10-01-preview
Swagger-specifikation2023-12-01-preview
(går i pension 1 juli 2024) Swagger-specifikation2024-02-15-preview
Swagger-specifikation2024-03-01-preview
Swagger-specifikation2024-04-01-preview
Swagger-specifikation2024-05-01-preview
Swagger-specifikation2024-02-01
Swagger-specifikation
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
2024-02-15-preview
Swagger-specifikation2024-03-01-preview
Swagger-specifikation2024-04-01-preview
Swagger-specifikation2024-05-01-preview
Swagger-specifikation
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 , nova och 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.