Referenční informace k rozhraní Azure OpenAI Service REST API
Tento článek obsahuje podrobnosti o koncových bodech rozhraní REST API pro odvozování pro Azure OpenAI.
Ověřování
Azure OpenAI poskytuje dvě metody ověřování. Můžete použít klíče rozhraní API nebo ID Microsoft Entra.
Ověřování pomocí klíče rozhraní API: Pro tento typ ověřování musí všechny požadavky rozhraní API obsahovat klíč rozhraní API v
api-key
hlavičce HTTP. Rychlý start obsahuje pokyny k volání s tímto typem ověřování.Ověřování ID Microsoft Entra: Volání rozhraní API můžete ověřit pomocí tokenu Microsoft Entra. Ověřovací tokeny jsou součástí požadavku jako hlavičky
Authorization
. Zadaný token musí předcházetBearer
napříkladBearer YOUR_AUTH_TOKEN
. Můžete si přečíst náš návod k ověřování pomocí Microsoft Entra ID.
Správa verzí rozhraní REST API
Rozhraní API služby se označují verzí pomocí parametru dotazu api-version
. Všechny verze mají datovou strukturu RRRR-MM-DD. Příklad:
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/completions?api-version=2024-02-01
Dokončení
Při operaci Dokončení model vygeneruje jedno nebo více předpovídaných dokončení na základě zadané výzvy. Služba může také vrátit pravděpodobnosti alternativních tokenů na každé pozici.
Vytvoření dokončení
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/completions?api-version={api-version}
Parametry cesty
Parametr | Typ | Povinné? | Popis |
---|---|---|---|
your-resource-name |
string | Požaduje se | Název prostředku Azure OpenAI |
deployment-id |
řetězec | Požaduje se | Název nasazení, který jste zvolili při nasazování modelu. |
api-version |
řetězec | Požaduje se | Verze rozhraní API, která se má použít pro tuto operaci. To má formát RRRR-MM-DD. |
Podporované verze
2022-12-01
Swagger spec2023-03-15-preview
(1. července 2024) Swagger spec2023-05-15
Swagger spec2023-06-01-preview
Swagger spec2023-07-01-preview
(1. července 2024) Swagger spec2023-08-01-preview
(1. července 2024) Swagger spec2023-09-01-preview
(1. července 2024) Swagger spec2023-10-01-preview
Swagger spec2023-12-01-preview
(1. července 2024) Swagger spec2024-02-15-preview
Swagger spec2024-03-01-preview
Swagger spec2024-04-01-preview
Swagger spec2024-02-01
Swagger spec
Text požadavku
Parametr | Typ | Povinné? | Výchozí | Popis |
---|---|---|---|---|
prompt |
řetězec nebo pole | Volitelné | <\|endoftext\|> |
Výzva nebo výzva k vygenerování dokončení pro, zakódované jako řetězec nebo pole řetězců. <\|endoftext\|> je oddělovač dokumentu, který model vidí během trénování, takže pokud není zadána výzva, model se vygeneruje, jako by byl od začátku nového dokumentu. |
max_tokens |
integer | Volitelné | 16 | Maximální počet tokenů, které se mají vygenerovat v dokončení. Počet tokenů výzvy plus max_tokens nesmí překročit délku kontextu modelu. Většina modelů má kontextovou délku 2048 tokenů (s výjimkou nejnovějších modelů, které podporují 4096). |
temperature |
Číslo | Volitelné | 0 | Jakou teplotu vzorkování použít, mezi 0 a 2. Vyšší hodnoty znamenají, že model riskuje více. Zkuste 0,9 pro kreativní aplikace a 0 (argmax sampling ) pro ty s dobře definovanou odpovědí. Obecně doporučujeme toto nebo top_p změnit, ale ne obojí. |
top_p |
Číslo | Volitelné | 0 | Alternativou k odběru vzorků s teplotou, označovanou jako vzorkování jádra, kde model bere v úvahu výsledky tokenů s top_p hmotností pravděpodobnosti. Hodnota 0,1 tedy znamená, že se považují pouze tokeny, které tvoří 10% hmotnost pravděpodobnosti. Obecně doporučujeme změnit tuto nebo teplotu, ale ne obojí. |
logit_bias |
map | Volitelné | null | Upravte pravděpodobnost výskytu zadaných tokenů v dokončení. Přijímá objekt JSON, který mapuje tokeny (určené jejich ID tokenu v tokenizátoru GPT) na přidruženou hodnotu předsudku od -100 do 100. Tento nástroj tokenizátoru (který funguje pro GPT-2 i GPT-3) můžete použít k převodu textu na ID tokenů. Matematicky se před vzorkováním přidá do logitů vygenerovaných modelem. Přesný účinek se liší podle modelu, ale hodnoty mezi -1 a 1 by měly snížit nebo zvýšit pravděpodobnost výběru; hodnoty jako -100 nebo 100 by měly vést k zákazu nebo výhradnímu výběru příslušného tokenu. Můžete například předat {"50256": -100}, abyste zabránili generování tokenu <|endoftext|> . |
user |
řetězec | Volitelné | Jedinečný identifikátor představující koncového uživatele, který může pomoct s monitorováním a zjišťováním zneužití | |
n |
integer | Volitelné | 0 | Kolik dokončení se má vygenerovat pro každou výzvu. Poznámka: Protože tento parametr generuje mnoho dokončení, může rychle spotřebovat kvótu tokenu. Pečlivě používejte a ujistěte se, že máte rozumné nastavení pro max_tokens a zastavit. |
stream |
boolean | Volitelné | False | Zda se má streamovat zpět částečný průběh. Pokud je tato sada nastavená, tokeny se posílají jako události odesílané pouze daty, jakmile budou dostupné, a datový proud se ukončí zprávou [DONE]. |
logprobs |
integer | Volitelné | null | Zahrňte pravděpodobnosti protokolu do nejpravděpodobnějších tokenů protokolu a také zvolených tokenů. Pokud je například logprobs 10, rozhraní API vrátí seznam 10 nejpravděpodobnějších tokenů. Rozhraní API vždy vrátí protokolprob ukázkového tokenu, takže v odpovědi může být až logprobs+1 prvků. Tento parametr nelze použít s parametrem gpt-35-turbo . |
suffix |
řetězec | Volitelné | null | Přípona, která následuje po dokončení vloženého textu. |
echo |
boolean | Volitelné | False | Ozvěte se vedle dokončení výzvy. Tento parametr nelze použít s parametrem gpt-35-turbo . |
stop |
řetězec nebo pole | Volitelné | null | Až čtyři sekvence, ve kterých rozhraní API přestane generovat další tokeny. Vrácený text nebude obsahovat sekvenci zastavení. U GPT-4 Turbo s vision se podporují až dvě sekvence. |
presence_penalty |
Číslo | Volitelné | 0 | Číslo mezi -2,0 a 2,0 Kladné hodnoty sankují nové tokeny na základě toho, jestli se zatím zobrazují v textu, což zvyšuje pravděpodobnost, že model mluví o nových tématech. |
frequency_penalty |
Číslo | Volitelné | 0 | Číslo mezi -2,0 a 2,0 Kladné hodnoty sankují nové tokeny na základě jejich stávající frekvence v textu, což snižuje pravděpodobnost opakování stejného doslovného znění řádku modelu. |
best_of |
integer | Volitelné | 0 | Vygeneruje best_of dokončení na straně serveru a vrátí "nejlepší" (ten s nejnižší pravděpodobností protokolu na token). Výsledky se nedají streamovat. Při použití s argumentem n best_of určuje počet dokončení kandidáta a n určuje, kolik se má vrátit – best_of musí být větší než n. Poznámka: Protože tento parametr generuje mnoho dokončení, může rychle spotřebovat kvótu tokenu. Pečlivě používejte a ujistěte se, že máte rozumné nastavení pro max_tokens a zastavit. Tento parametr nelze použít s parametrem gpt-35-turbo . |
Příklad požadavku
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
}"
Příklad odpovědi
{
"id": "cmpl-4kGh7iXtjW4lc9eGhff6Hp8C7btdQ",
"object": "text_completion",
"created": 1646932609,
"model": "ada",
"choices": [
{
"text": ", a dark line crossed",
"index": 0,
"logprobs": null,
"finish_reason": "length"
}
]
}
V ukázkové odpovědi se finish_reason
rovná stop
. Pokud finish_reason
se rovná, content_filter
projděte si průvodce filtrováním obsahu a zjistěte, proč k tomu dochází.
Vkládání
Získejte vektorové znázornění daného vstupu, které lze snadno využívat modely strojového učení a další algoritmy.
Poznámka:
OpenAI v současné době umožňuje větší počet vstupů pole s text-embedding-ada-002
. Azure OpenAI aktuálně podporuje vstupní pole až 16 pro text-embedding-ada-002 (Version 2)
. Obě vyžadují maximální limit vstupního tokenu pro každý požadavek rozhraní API, aby pro tento model zůstal pod 8191.
Vytvoření vkládání
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/embeddings?api-version={api-version}
Parametry cesty
Parametr | Typ | Povinné? | Popis |
---|---|---|---|
your-resource-name |
string | Požaduje se | Název prostředku Azure OpenAI |
deployment-id |
řetězec | Požaduje se | Název nasazení modelu. Než budete moct volat, musíte nejprve nasadit model. |
api-version |
řetězec | Požaduje se | Verze rozhraní API, která se má použít pro tuto operaci. To má formát RRRR-MM-DD. |
Podporované verze
2023-03-15-preview
(1. července 2024) Swagger spec2023-05-15
Swagger spec2023-06-01-preview
Swagger spec2023-07-01-preview
(1. července 2024) Swagger spec2023-08-01-preview
(1. července 2024) Swagger spec2023-09-01-preview
(1. července 2024) Swagger spec2023-10-01-preview
Swagger spec2023-12-01-preview
(1. července 2024) Swagger spec2024-02-15-preview
Swagger spec2024-03-01-preview
Swagger spec2024-04-01-preview
Swagger spec2024-02-01
Swagger spec
Text požadavku
Parametr | Typ | Povinné? | Výchozí | Popis |
---|---|---|---|---|
input |
řetězec nebo pole | Yes | – | Vstupní text pro získání vkládání pro, kódované jako pole nebo řetězec. Počet vstupních tokenů se liší podle toho, jaký model používáte. Podporuje pouze text-embedding-ada-002 (Version 2) vstup pole. |
user |
string | No | Null | Jedinečný identifikátor představující koncového uživatele. To pomůže Službě Azure OpenAI monitorovat a zjišťovat zneužití. Nepředávejte identifikátory PII místo toho pseudoanonymizované hodnoty, jako jsou identifikátory GUID. |
encoding_format |
string | No | float |
Formát pro vrácení vložených objektů. Může to být buď float nebo base64 . Výchozí hodnota float je . [Přidáno do 2024-03-01-preview ]. |
dimensions |
integer | No | Početdimenzích Podporováno pouze v text-embedding-3 novějších modelech. [Přidáno do 2024-03-01-preview ] |
Příklad požadavku
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...\"}"
Příklad odpovědi
{
"object": "list",
"data": [
{
"object": "embedding",
"embedding": [
0.018990106880664825,
-0.0073809814639389515,
.... (1024 floats total for ada)
0.021276434883475304,
],
"index": 0
}
],
"model": "text-similarity-babbage:001"
}
Dokončení chatu
Vytvářejte dokončování pro zprávy chatu pomocí modelů GPT-35-Turbo a GPT-4.
Vytváření dokončování chatů
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/chat/completions?api-version={api-version}
Parametry cesty
Parametr | Typ | Povinné? | Popis |
---|---|---|---|
your-resource-name |
string | Požaduje se | Název prostředku Azure OpenAI |
deployment-id |
řetězec | Požaduje se | Název nasazení modelu. Než budete moct volat, musíte nejprve nasadit model. |
api-version |
řetězec | Požaduje se | Verze rozhraní API, která se má použít pro tuto operaci. To se řídí formátem RRRR-MM-DD nebo RRRR-MM-DD-preview. |
Podporované verze
2023-03-15-preview
(1. července 2024) Swagger spec2023-05-15
Swagger spec2023-06-01-preview
Swagger spec2023-07-01-preview
(1. července 2024) Swagger spec2023-08-01-preview
(1. července 2024) Swagger spec2023-09-01-preview
(1. července 2024) Swagger spec2023-10-01-preview
Swagger spec2023-12-01-preview
(1. července 2024) (Tato verze nebo vyšší požadovaná pro scénáře zpracování obrazu) Swagger spec2024-02-15-preview
Swagger spec2024-03-01-preview
Swagger spec2024-04-01-preview
Swagger spec2024-02-01
Swagger spec
Text požadavku
Text požadavku se skládá z řady zpráv. Model vygeneruje odpověď na poslední zprávu s použitím dřívějších zpráv jako kontextu.
Parametr | Typ | Povinné? | Výchozí | Popis |
---|---|---|---|---|
messages |
pole | Yes | – | Série zpráv přidružených k této žádosti o dokončení chatu. Měla by obsahovat předchozí zprávy v konverzaci. Každá zpráva má a role content . |
role |
string | Yes | – | Určuje, kdo dává aktuální zprávu. Může to být system ,user ,assistant ,tool , nebo function . |
content |
řetězec nebo pole | Yes | – | Obsah zprávy. Musí to být řetězec, pokud se nejedná o scénář s podporou zpracování obrazu. Pokud je součástí user zprávy pomocí modelu GPT-4 Turbo s obrazem s nejnovější verzí rozhraní API, musí content být pole struktur, kde každá položka představuje text nebo obrázek:
|
contentPart |
objekt | No | – | Část vícemodální zprávy uživatele Může to být typ textu nebo typ obrázku. Pokud se jedná o text, bude to textový řetězec. Pokud je obrázek, bude contentPartImage to objekt. |
contentPartImage |
objekt | No | – | Představuje obrázek nahraný uživatelem. url Má vlastnost, která je buď adresa URL obrázku, nebo základní 64 kódovaná data obrázku. Má také detail vlastnost, která může být auto , low nebo high . |
enhancements |
objekt | No | – | Představuje funkce vylepšení obrazu požadované pro chat. grounding Má a ocr vlastnosti, každý má logickou enabled vlastnost. Použijte je k vyžádání služby OCR nebo služby rozpoznávání objektů nebo uzemnění [Tento parametr preview není k dispozici v 2024-02-01 rozhraní API ga a už není k dispozici v rozhraních API ve verzi Preview po 2024-03-01-preview .] |
dataSources |
objekt | No | – | Představuje další data o prostředcích. Počítačové zpracování obrazu data prostředků jsou potřebná pro vylepšení zpracování obrazu. type Má vlastnost, která by měla být "AzureComputerVision" a parameters vlastnost, která má vlastnost endpoint a key vlastnost. Tyto řetězce by měly být nastavené na adresu URL koncového bodu a přístupový klíč vašeho prostředku Počítačové zpracování obrazu. |
Příklad požadavku
Chat jen pro 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?"}]}'
Chat s obrazem
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" } }]}]}'
Vylepšený chat se zrakem
- Verze modelu
gpt-4
GPT-4 Turbo GA se nepodporuje:turbo-2024-04-09
- Nepodporovaná
2024-02-01
verze rozhraní API a2024-04-01-preview
novějších verzí.
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"}]}]}'
Příklad odpovědi
{
"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
}
]
}
Formátování výstupu upravené pro snadné čtení, skutečný výstup je jeden blok textu bez konců řádků.
V ukázkové odpovědi se finish_reason
rovná stop
. Pokud finish_reason
se rovná, content_filter
projděte si průvodce filtrováním obsahu a zjistěte, proč k tomu dochází.
Důležité
Parametry functions
jsou function_call
zastaralé s vydáním 2023-12-01-preview
verze rozhraní API. Nahrazením functions
parametru tools
je. Nahrazením function_call
parametru tool_choice
je. Paralelní volání funkcí, které bylo zavedeno jako součást aplikace 2023-12-01-preview
, je podporováno pouze v gpt-35-turbo
(1106) a gpt-4
(1106-Preview) známé také jako GPT-4 Turbo Preview.
Parametr | Typ | Povinné? | Výchozí | Popis |
---|---|---|---|---|
messages |
pole | Požaduje se | Kolekce kontextových zpráv přidružených k tomuto požadavku na dokončení chatu. Typické použití začíná chatovou zprávou pro roli Systém, která poskytuje pokyny pro chování asistenta, následované alternací zpráv mezi rolemi Uživatel a Asistent. | |
temperature |
Číslo | Volitelné | 0 | Jakou teplotu vzorkování použít, mezi 0 a 2. Vyšší hodnoty jako 0,8 způsobí, že výstup bude náhodnější, zatímco nižší hodnoty, jako je 0,2, zajistí větší zaměření a deterministiku. Obecně doporučujeme tuto změnu změnit, top_p ale ne obojí. |
n |
integer | Volitelné | 0 | Kolik možností dokončení chatu se má vygenerovat pro každou vstupní zprávu. |
stream |
boolean | Volitelné | false (nepravda) | Pokud je tato možnost nastavená, budou odeslány částečné rozdíly zpráv, například v ChatGPT. Tokeny se posílají jako události odesílané jen pro data, jakmile budou k dispozici, s datovým proudem ukončeným zprávou data: [DONE] ." |
stop |
řetězec nebo pole | Volitelné | null | Až 4 sekvence, ve kterých rozhraní API přestane generovat další tokeny. |
max_tokens |
integer | Volitelné | Inf | Maximální počet tokenů povolených pro vygenerovanou odpověď. Ve výchozím nastavení bude počet tokenů, které model může vrátit, (4096 – tokeny výzvy). |
presence_penalty |
Číslo | Volitelné | 0 | Číslo mezi -2,0 a 2,0 Kladné hodnoty sankují nové tokeny na základě toho, jestli se zatím zobrazují v textu, což zvyšuje pravděpodobnost, že model mluví o nových tématech. |
frequency_penalty |
Číslo | Volitelné | 0 | Číslo mezi -2,0 a 2,0 Kladné hodnoty sankují nové tokeny na základě jejich stávající frekvence v textu, což snižuje pravděpodobnost opakování stejného doslovného znění řádku modelu. |
logit_bias |
objekt | Volitelné | null | Upravte pravděpodobnost výskytu zadaných tokenů v dokončení. Přijímá objekt JSON, který mapuje tokeny (určené jejich ID tokenu v tokenizátoru) na přidruženou hodnotu předsudku od -100 do 100. Matematicky se před vzorkováním přidá do logitů vygenerovaných modelem. Přesný účinek se liší podle modelu, ale hodnoty mezi -1 a 1 by měly snížit nebo zvýšit pravděpodobnost výběru; hodnoty jako -100 nebo 100 by měly vést k zákazu nebo výhradnímu výběru příslušného tokenu. |
user |
řetězec | Volitelné | Jedinečný identifikátor představující koncového uživatele, který může azure OpenAI pomoct monitorovat a zjišťovat zneužití. | |
function_call |
Volitelné | [Deprecated in 2023-12-01-preview replacement parameter is tools_choice] Určuje, jak model reaguje na volání funkcí. "none" znamená, že model nevolá funkci a reaguje na koncového uživatele. auto znamená, že model může vybrat mezi koncovým uživatelem nebo voláním funkce. Určení konkrétní funkce prostřednictvím {"name": "my_function"} vynutí, aby model volal danou funkci. "none" je výchozí, pokud nejsou k dispozici žádné funkce. auto je výchozí, pokud jsou k dispozici funkce. Tento parametr vyžaduje verzi rozhraní API. 2023-07-01-preview |
||
functions |
FunctionDefinition[] |
Volitelné | [Deprecated in 2023-12-01-preview replacement paremeter is tools] Seznam funkcí, pro které může model generovat vstupy JSON. Tento parametr vyžaduje verzi rozhraní API. 2023-07-01-preview |
|
tools |
string (Typ nástroje. Podporuje se jenom function .) |
Volitelné | Seznam nástrojů, které model může volat. V současné době se jako nástroj podporují jenom funkce. Pomocí tohoto příkazu můžete poskytnout seznam funkcí, pro které může model generovat vstupy JSON. Tento parametr vyžaduje verzi rozhraní API. 2023-12-01-preview |
|
tool_choice |
řetězec nebo objekt | Volitelné | žádná není výchozí, pokud nejsou k dispozici žádné funkce. auto je výchozí, pokud jsou k dispozici funkce. |
Určuje, která funkce (pokud existuje) volána modelem. Žádný znamená, že model nebude volat funkci a místo toho vygeneruje zprávu. auto znamená, že model může vybrat mezi generováním zprávy nebo voláním funkce. Určení konkrétní funkce prostřednictvím typu {"type: "function", "function": {"name": "my_function"}} vynutí, aby model volal danou funkci. Tento parametr vyžaduje verzi 2023-12-01-preview rozhraní API nebo novější. |
ChatMessage
Jedna zpráva s atributem role v rámci interakce dokončení chatu.
Name | Typ | Popis |
---|---|---|
content | string | Text přidružený k této datové části zprávy. |
function_call | FunctionCall | Název a argumenty funkce, které by se měly volat, jak je vygeneroval model. |
name | string | Autor name této zprávy. name je vyžadována, pokud je function role a měla by to být název funkce, jejíž odpověď je v content . Může obsahovat a-z, A-Z, 0-9 a podtržítka s maximální délkou 64 znaků. |
role | ChatRole | Role přidružená k této datové části zprávy |
ChatRole
Popis zamýšleného účelu zprávy v rámci interakce s dokončením chatu.
Name | Typ | Popis |
---|---|---|
Asistent | string | Role, která poskytuje odpovědi na vstup s pokynem systému a uživatelem. |
function | string | Role, která poskytuje výsledky funkce pro dokončování chatu. |
systém | string | Role, která dává pokyn nebo nastavuje chování asistenta. |
user | string | Role, která poskytuje vstup pro dokončování chatu. |
Function
Používá se s parametrem tools
přidaným ve verzi 2023-12-01-preview
rozhraní API .
Name | Typ | Popis |
---|---|---|
description | string | Popis toho, co funkce dělá, kterou model používá k výběru, kdy a jak funkci volat |
name | string | Název funkce, která se má volat. Musí být a-z, A-Z, 0-9 nebo obsahovat podtržítka a pomlčky s maximální délkou 64 |
parametry | objekt | Parametry, které funkce přijímají, jsou popsané jako objekt schématu JSON. Dokumentaci k formátu najdete v referenčních informacích ke schématu JSON. |
FunctionCall – zastaralé
Název a argumenty funkce, které by se měly volat, jak je vygeneroval model. To vyžaduje verzi rozhraní API. 2023-07-01-preview
Name | Typ | Popis |
---|---|---|
Argumenty | string | Argumenty pro volání funkce s vygenerovaným modelem ve formátu JSON. Model negeneruje vždy platný json a může generovat parametry, které nejsou definovány schématem vaší funkce. Před voláním funkce ověřte argumenty v kódu. |
name | string | Název funkce, která se má volat. |
FunkceDefinition– zastaralé
Definice funkce zadané volajícího, která může dokončení chatu vyvolat v reakci na odpovídající vstup uživatele. To vyžaduje verzi rozhraní API. 2023-07-01-preview
Rozšíření dokončení
Dokumentace pro tuto část se přesunula. Místo toho si prohlédněte referenční dokumentaci k Azure OpenAI ve vašich datech.
Generování obrázků
Žádost o vygenerovanou image (DALL-E 3)
Vygenerujte a načtěte dávku obrázků z textového popis.
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/images/generations?api-version={api-version}
Parametry cesty
Parametr | Typ | Povinné? | Popis |
---|---|---|---|
your-resource-name |
string | Požaduje se | Název prostředku Azure OpenAI |
deployment-id |
řetězec | Požaduje se | Název nasazení modelu DALL-E 3, například MyDalle3. Před voláním musíte nejprve nasadit model DALL-E 3. |
api-version |
řetězec | Požaduje se | Verze rozhraní API, která se má použít pro tuto operaci. To má formát RRRR-MM-DD. |
Podporované verze
2023-12-01-preview (retiring July 1, 2024)
Swagger spec2024-02-15-preview
Swagger spec2024-03-01-preview
Swagger spec2024-04-01-preview
Swagger spec2024-02-01
Swagger spec
Text požadavku
Parametr | Typ | Povinné? | Výchozí | Popis |
---|---|---|---|---|
prompt |
string | Požaduje se | Textový popispožadovaných Maximální délka je 4000 znaků. | |
n |
integer | Volitelné | 0 | Počet obrázků, které se mají vygenerovat. Podporuje se pouze n=1 pro DALL-E 3. |
size |
řetězec | Volitelné | 1024x1024 |
Velikost vygenerovaných obrázků. Musí být jedním z 1792x1024 , 1024x1024 nebo 1024x1792 . |
quality |
řetězec | Volitelné | standard |
Kvalita vygenerovaných obrázků. Musí být hd nebo standard . |
response_format |
řetězec | Volitelné | url |
Formát, ve kterém se generované obrázky vrátí, musí být url (adresa URL odkazující na obrázek) nebo b64_json (základní kód 64 bajtů ve formátu JSON). |
style |
řetězec | Volitelné | vivid |
Styl vygenerovaných obrázků Musí být natural nebo vivid (pro hyperrealistické nebo dramatické obrazy). |
user |
řetězec | Volitelné | Jedinečný identifikátor představující koncového uživatele, který může pomoct monitorovat a zjišťovat zneužití. |
Příklad požadavku
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"
}'
Příklad odpovědi
Operace vrátí stavový 202
kód a GenerateImagesResponse
objekt JSON obsahující ID a stav operace.
{
"created": 1698116662,
"data": [
{
"url": "url to the image",
"revised_prompt": "the actual prompt that was used"
},
{
"url": "url to the image"
},
...
]
}
Vyžádání vygenerované image (DALL-E 2 Preview)
Vygenerujte dávku obrázků z textového popis.
POST https://{your-resource-name}.openai.azure.com/openai/images/generations:submit?api-version={api-version}
Parametry cesty
Parametr | Typ | Povinné? | Popis |
---|---|---|---|
your-resource-name |
string | Požaduje se | Název prostředku Azure OpenAI |
api-version |
řetězec | Požaduje se | Verze rozhraní API, která se má použít pro tuto operaci. To má formát RRRR-MM-DD. |
Podporované verze
2023-06-01-preview
Swagger spec
Text požadavku
Parametr | Typ | Povinné? | Výchozí | Popis |
---|---|---|---|---|
prompt |
string | Požaduje se | Textový popispožadovaných Maximální délka je 1000 znaků. | |
n |
integer | Volitelné | 0 | Počet obrázků, které se mají vygenerovat. Musí být mezi 1 a 5. |
size |
řetězec | Volitelné | 1024 × 1024 | Velikost vygenerovaných obrázků. Musí být jedním z 256x256 , 512x512 nebo 1024x1024 . |
Příklad požadavku
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
}'
Příklad odpovědi
Operace vrátí stavový 202
kód a GenerateImagesResponse
objekt JSON obsahující ID a stav operace.
{
"id": "f508bcf2-e651-4b4b-85a7-58ad77981ffa",
"status": "notRunning"
}
Získání vygenerovaného výsledku obrázku (DALL-E 2 Preview)
Toto rozhraní API slouží k načtení výsledků operace generování image. Generování imagí je aktuálně k dispozici pouze s api-version=2023-06-01-preview
.
GET https://{your-resource-name}.openai.azure.com/openai/operations/images/{operation-id}?api-version={api-version}
Parametry cesty
Parametr | Typ | Povinné? | Popis |
---|---|---|---|
your-resource-name |
string | Požaduje se | Název prostředku Azure OpenAI |
operation-id |
řetězec | Požaduje se | Identifikátor GUID, který identifikuje původní požadavek na generování image. |
Podporované verze
2023-06-01-preview
Swagger spec
Příklad požadavku
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}"
Příklad odpovědi
Po úspěšném dokončení operace vrátí stavový 200
kód a OperationResponse
objekt JSON. Pole status
může být "notRunning"
(úkol je zařazen do fronty, ale ještě není spuštěn), "running"
, , , "succeeded"
( "canceled"
úkol vypršel časový limit), "failed"
nebo "deleted"
. succeeded
Stav označuje, že vygenerovaný obrázek je k dispozici ke stažení na dané adrese URL. Pokud se vygenerovalo více obrázků, vrátí se v result.data
poli všechny jejich adresy URL.
{
"created": 1685064331,
"expires": 1685150737,
"id": "4b755937-3173-4b49-bf3f-da6702a3971a",
"result": {
"data": [
{
"url": "<URL_TO_IMAGE>"
},
{
"url": "<URL_TO_NEXT_IMAGE>"
},
...
]
},
"status": "succeeded"
}
Odstranění vygenerované image ze serveru (DALL-E 2 Preview)
K odstranění odpovídající image ze serveru Azure můžete použít ID operace vrácené požadavkem. Ve výchozím nastavení se vygenerované image automaticky odstraní po 24 hodinách, ale pokud chcete, můžete odstranění aktivovat dříve.
DELETE https://{your-resource-name}.openai.azure.com/openai/operations/images/{operation-id}?api-version={api-version}
Parametry cesty
Parametr | Typ | Povinné? | Popis |
---|---|---|---|
your-resource-name |
string | Požaduje se | Název prostředku Azure OpenAI |
operation-id |
řetězec | Požaduje se | Identifikátor GUID, který identifikuje původní požadavek na generování image. |
Podporované verze
2023-06-01-preview
Swagger spec
Příklad požadavku
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
Operace v případě úspěchu vrátí stavový 204
kód. Toto rozhraní API je úspěšné pouze v případě, že je operace v koncovém stavu (ne running
).
Převod řeči na text
V Azure OpenAI Service můžete použít model Šepta pro převod řeči na přepis textu nebo překlad řeči. Další informace o použití modelu Whisper najdete v rychlém startu a přehledu modelu Whisper.
Vyžádání přepisu řeči na text
Přepíše zvukový soubor.
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/audio/transcriptions?api-version={api-version}
Parametry cesty
Parametr | Typ | Povinné? | Popis |
---|---|---|---|
your-resource-name |
string | Požaduje se | Název vašeho prostředku Azure OpenAI. |
deployment-id |
řetězec | Požaduje se | Název nasazení modelu Whisper, například MyWhisperDeployment. Než budete moct volat, musíte nejprve nasadit model Whisper. |
api-version |
řetězec | Požaduje se | Verze rozhraní API, která se má použít pro tuto operaci. Tato hodnota se řídí formátem RRRR-MM-DD. |
Podporované verze
2023-09-01-preview
(1. července 2024) Swagger spec2023-10-01-preview
Swagger spec2023-12-01-preview
(1. července 2024) Swagger spec2024-02-15-preview
Swagger spec2024-03-01-preview
Swagger spec2024-04-01-preview
Swagger spec2024-02-01
Swagger spec
Text požadavku
Parametr | Typ | Povinné? | Výchozí | Popis |
---|---|---|---|---|
file |
soubor | Yes | – | Objekt zvukového souboru (nikoli název souboru) pro přepis v jednom z těchto formátů: flac , , mp3 mp4 , mpeg , mpga m4a , , ogg nebo wav webm .Limit velikosti souboru pro model Whisper ve službě Azure OpenAI je 25 MB. Pokud potřebujete přepsat soubor větší než 25 MB, rozdělte ho do bloků dat. Alternativně můžete použít rozhraní API pro dávkový přepis služby Azure AI Speech. Ukázkové zvukové soubory můžete získat z úložiště Azure AI Speech SDK na GitHubu. |
language |
string | No | Null | Jazyk vstupního zvuku, například fr . Poskytování jazyka zadávání vstupu ve formátu ISO-639-1 zlepšuje přesnost a latenci.Seznam podporovaných jazyků najdete v dokumentaci k OpenAI. |
prompt |
string | No | Null | Volitelný text pro vodítko stylu modelu nebo pokračování v předchozím zvukovém segmentu. Výzva by měla odpovídat jazyku zvuku. Další informace o výzev, včetně ukázkových případů použití, najdete v dokumentaci k OpenAI. |
response_format |
string | No | json | Formát výstupu přepisu v jedné z těchto možností: json, text, srt, verbose_json nebo vtt. Výchozí hodnota je json. |
temperature |
Číslo | No | 0 | Teplota vzorkování mezi 0 a 1. Vyšší hodnoty jako 0,8 zvýtožní výstup náhodněji, zatímco nižší hodnoty, jako je 0,2, zvýší jejich zaměření a deterministiku. Pokud je nastavená hodnota 0, model používá pravděpodobnost protokolu k automatickému zvýšení teploty , dokud se nenarazí na určité prahové hodnoty. Výchozí hodnota je 0. |
timestamp_granularities |
pole | Volitelné | segment | Členitosti časového razítka, které se mají pro tento přepis naplnit. response_format musí být nastavená verbose_json tak, aby používala členitosti časového razítka. Podporují se obě tyto možnosti: word nebo segment . Poznámka: Pro časová razítka segmentů neexistuje žádná další latence, ale generování časových razítek slov způsobuje další latenci. [Přidáno v roce 2024-04-01-prevew] |
Příklad požadavku
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"
Příklad odpovědi
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.
Vyžádání překladu řeči na text
Přeloží zvukový soubor z jiného jazyka do angličtiny. Seznam podporovaných jazyků najdete v dokumentaci k OpenAI.
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/audio/translations?api-version={api-version}
Parametry cesty
Parametr | Typ | Povinné? | Popis |
---|---|---|---|
your-resource-name |
string | Požaduje se | Název vašeho prostředku Azure OpenAI. |
deployment-id |
řetězec | Požaduje se | Název nasazení modelu Whisper, například MyWhisperDeployment. Než budete moct volat, musíte nejprve nasadit model Whisper. |
api-version |
řetězec | Požaduje se | Verze rozhraní API, která se má použít pro tuto operaci. Tato hodnota se řídí formátem RRRR-MM-DD. |
Podporované verze
2023-09-01-preview
(1. července 2024) Swagger spec2023-10-01-preview
Swagger spec2023-12-01-preview
(1. července 2024) Swagger spec2024-02-15-preview
Swagger spec2024-03-01-preview
Swagger spec2024-02-01
Swagger spec
Text požadavku
Parametr | Typ | Povinné? | Výchozí | Popis |
---|---|---|---|---|
file |
soubor | Yes | – | Objekt zvukového souboru (ne název souboru) pro přepis v jednom z těchto formátů: flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav nebo webm. Limit velikosti souboru pro model Azure OpenAI Whisper je 25 MB. Pokud potřebujete přepsat soubor větší než 25 MB, rozdělte ho do bloků dat. Ukázkové zvukové soubory si můžete stáhnout z úložiště Azure AI Speech SDK na GitHubu. |
prompt |
string | No | Null | Volitelný text pro vodítko stylu modelu nebo pokračování v předchozím zvukovém segmentu. Výzva by měla odpovídat jazyku zvuku. Další informace o výzev, včetně ukázkových případů použití, najdete v dokumentaci k OpenAI. |
response_format |
string | No | json | Formát výstupu přepisu v jedné z těchto možností: json, text, srt, verbose_json nebo vtt. Výchozí hodnota je json. |
temperature |
Číslo | No | 0 | Teplota vzorkování mezi 0 a 1. Vyšší hodnoty jako 0,8 zvýtožní výstup náhodněji, zatímco nižší hodnoty, jako je 0,2, zvýší jejich zaměření a deterministiku. Pokud je nastavená hodnota 0, model používá pravděpodobnost protokolu k automatickému zvýšení teploty , dokud se nenarazí na určité prahové hodnoty. Výchozí hodnota je 0. |
Příklad požadavku
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"
Příklad odpovědi
{
"text": "Hello, my name is Wolfgang and I come from Germany. Where are you heading today?"
}
Text na řeč
Syntetizace textu na řeč.
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/audio/speech?api-version={api-version}
Parametry cesty
Parametr | Typ | Povinné? | Popis |
---|---|---|---|
your-resource-name |
string | Požaduje se | Název vašeho prostředku Azure OpenAI. |
deployment-id |
řetězec | Požaduje se | Název vašeho textu pro nasazení modelu řeči, například MyTextToSpeechDeployment. Než budete moct volat, musíte nejdřív nasadit textový model na řeč (například tts-1 nebo tts-1-hd ). |
api-version |
řetězec | Požaduje se | Verze rozhraní API, která se má použít pro tuto operaci. Tato hodnota se řídí formátem RRRR-MM-DD. |
Podporované verze
2024-02-15-preview
Swagger spec2024-03-01-preview
Swagger spec2024-04-01-preview
Swagger spec
Text požadavku
Parametr | Typ | Povinné? | Výchozí | Popis |
---|---|---|---|---|
model |
string | Yes | – | Jeden z dostupných modelů TTS: tts-1 nebo tts-1-hd |
input |
string | Yes | – | Text, pro který chcete vygenerovat zvuk. Maximální délka je 4096 znaků. Zadejte vstupní text v jazyce podle vašeho výběru.1 |
voice |
string | Yes | – | Hlas, který se má použít při generování zvuku. Podporované hlasy jsou alloy , , fable echo onyx , , nova , a shimmer . Náhledy hlasů jsou k dispozici v průvodci převodem řeči na text OpenAI. |
1 Text na řečové modely obecně podporují stejné jazyky jako model Šept. Seznam podporovaných jazyků najdete v dokumentaci k OpenAI.
Příklad požadavku
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
Příklad odpovědi
Řeč se vrátí jako zvukový soubor z předchozího požadavku.
Rozhraní API pro správu
Azure OpenAI se nasadí jako součást služeb Azure AI. Všechny služby Azure AI spoléhají na stejnou sadu rozhraní API pro správu při vytváření, aktualizaci a odstraňování operací. Rozhraní API pro správu se také používají k nasazování modelů v rámci prostředku Azure OpenAI.
Referenční dokumentace k rozhraním API pro správu
Další kroky
Seznamte se s modely a vyladěním pomocí rozhraní REST API. Přečtěte si další informace o základních modelech, které power Azure OpenAI.