Az Azure OpenAI REST API használata
Az Azure OpenAI egy REST API-t kínál a válaszok interakciójához és generálásához, amellyel a fejlesztők AI-funkciókat adhatnak az alkalmazásaikhoz. Ez az egység az API-ból származó példahasználatot, bemenetet és kimenetet ismerteti.
Feljegyzés
Az API használata előtt létre kell hoznia egy Azure OpenAI-erőforrást az Azure Portalon, üzembe kell helyeznie egy modellt az adott erőforrásban, és le kell kérnie a végpontot és a kulcsokat. Az Azure OpenAI szolgáltatás használatának első lépéseiből megtudhatja, hogyan teheti ezt meg.
A REST API minden hívásához szüksége lesz a végpontra és az Azure OpenAI-erőforrás kulcsára, valamint az üzembe helyezett modellhez megadott névre. Az alábbi példákban a következő helyőrzőket használjuk:
Helyőrző neve | Érték |
---|---|
YOUR_ENDPOINT_NAME |
Ez az alapvégpont az Azure Portal Kulcsok & végpont szakaszában található. Ez az erőforrás alapvégpontja, például https://sample.openai.azure.com/ . |
YOUR_API_KEY |
A kulcsok az Azure Portal Kulcsok &végpont szakaszában találhatók. Az erőforráshoz bármelyik kulcsot használhatja. |
YOUR_DEPLOYMENT_NAME |
Ez az üzembe helyezési név a modell Azure OpenAI Studióban való üzembe helyezésekor megadott név. |
Csevegés befejezése
Miután üzembe helyezett egy modellt az Azure OpenAI-erőforrásban, kéréssel küldhet egy kérést POST
a szolgáltatásnak.
curl https://YOUR_ENDPOINT_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/chat/completions?api-version=2023-03-15-preview \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d '{"messages":[{"role": "system", "content": "You are a helpful assistant, teaching people about AI."},
{"role": "user", "content": "Does Azure OpenAI support multiple languages?"},
{"role": "assistant", "content": "Yes, Azure OpenAI supports several languages, and can translate between them."},
{"role": "user", "content": "Do other Azure AI Services support translation too?"}]}'
Az API válasza hasonló lesz a következő JSON-hoz:
{
"id": "chatcmpl-6v7mkQj980V1yBec6ETrKPRqFjNw9",
"object": "chat.completion",
"created": 1679001781,
"model": "gpt-35-turbo",
"usage": {
"prompt_tokens": 95,
"completion_tokens": 84,
"total_tokens": 179
},
"choices": [
{
"message":
{
"role": "assistant",
"content": "Yes, other Azure AI Services also support translation. Azure AI Services offer translation between multiple languages for text, documents, or custom translation through Azure AI Services Translator."
},
"finish_reason": "stop",
"index": 0
}
]
}
A REST-végpontok lehetővé teszik egyéb opcionális bemeneti paraméterek megadását, például temperature
, max_tokens
és így tovább. Ha bármelyik paramétert fel szeretné venni a kérésbe, adja hozzá őket a kérelem bemeneti adataihoz.
Beágyazások
A beágyazások olyan konkrét formátumok esetén hasznosak, amelyeket a gépi tanulási modellek könnyen felhasználhatnak. Ha beágyazást szeretne létrehozni a bemeneti szövegből, POST
küldjön egy kérést a embeddings
végpontnak.
curl https://YOUR_ENDPOINT_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/embeddings?api-version=2022-12-01 \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d "{\"input\": \"The food was delicious and the waiter...\"}"
Beágyazások létrehozásakor mindenképpen használjon beágyazáshoz készült modellt az Azure OpenAI-ban. Ezek a modellek a text-embedding
keresett funkcióktól függően kezdődnek, vagy text-similarity
attól függően, hogy milyen funkciókat keresnek.
Az API válasza hasonló lesz a következő JSON-hoz:
{
"object": "list",
"data": [
{
"object": "embedding",
"embedding": [
0.0172990688066482523,
-0.0291879814639389515,
....
0.0134544348834753042,
],
"index": 0
}
],
"model": "text-embedding-ada:002"
}