Azure OpenAI Service の REST API リファレンス
この記事では、Azure OpenAI の推論 REST API エンドポイントについて詳しく説明します。
認証
Azure OpenAI には、2 つの認証方法が用意されています。 API キーまたは Azure Active Directory のいずれかを使用できます。
API キー認証: この種類の認証の場合、すべての API 要求で、
api-key
HTTP ヘッダーに API キーを含める必要があります。 クイック スタートに、この種類の認証を使用して呼び出しを行う方法に関するガイダンスが用意されています。Azure Active Directory 認証: Azure Active Directory トークンを使用して API 呼び出しを認証できます。 認証トークンは、
Authorization
ヘッダーとして要求に含まれます。 指定するトークンの前にBearer
を付ける必要があります (例:Bearer YOUR_AUTH_TOKEN
)。 Azure Active Directory での認証に関する攻略ガイドをお読みください。
REST API のバージョン管理
サービス API は、api-version
クエリ パラメーターを使用してバージョン管理されます。 すべてのバージョンは、YYYY-MM-DD 日付構造に従います。 たとえば、次のように入力します。
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/completions?api-version=2023-05-15
入力候補
入力候補操作では、指定したプロンプトに基づいて、モデルによって 1 つ以上の予測入力候補が生成されます。 サービスでは、それぞれの位置で代替トークンの確率を返すこともできます。
入力候補の作成
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/completions?api-version={api-version}
パス パラメーター
パラメーター | Type | 必須 | 説明 |
---|---|---|---|
your-resource-name |
string | 必須 | Azure OpenAI リソースの名前。 |
deployment-id |
string | 必須 | モデルのデプロイ時に選択したデプロイ名。 |
api-version |
string | 必須 | この操作に使用する API バージョン。 これは、YYYY-MM-DD 形式に従います。 |
サポートされているバージョン
2022-12-01
Swagger の仕様2023-03-15-preview
Swagger の仕様2023-05-15
Swagger の仕様2023-06-01-preview
Swagger の仕様2023-07-01-preview
Swagger の仕様2023-08-01-preview
Swagger の仕様
要求本文
パラメーター | Type | 必須 | Default | 説明 |
---|---|---|---|---|
prompt |
文字列または配列 | オプション | <\|endoftext\|> |
文字列、または文字列の配列としてエンコードされた、補完を生成するプロンプト。 <\|endoftext\|> はトレーニング中にモデルが確認するドキュメント区切り記号であるため、プロンプトを指定しない場合、モデルは新しいドキュメントの先頭からのように生成します。 |
max_tokens |
整数 (integer) | 省略可能 | 16 | 入力候補に生成するトークンの最大数。 プロンプトのトークン数と max_tokens の合計は、モデルのコンテキスト長を超えることはできません。 ほとんどのモデルのコンテキスト長は 2048 トークンです (4096 をサポートする最新のモデルを除く)。 |
temperature |
number | オプション | 1 | 使用するサンプリング温度 (0 から 2)。 値が大きいほど、モデルはより多くのリスクを負います。 よりクリエイティブなアプリケーションの場合は 0.9、明確に定義された回答の場合は 0 (argmax sampling ) をお試しください。 一般的に、これと top_p の両方ではなく、いずれかを変更することをお勧めします。 |
top_p |
number | オプション | 1 | 核サンプリングと呼ばれる、温度によるサンプリングの代替で、モデルはで top_p 確率質量を持つトークンの結果が考慮されます。 したがって、0.1 は、上位 10% の確率質量を含むトークンのみが考慮されることを意味します。 一般的に、これと temperature の両方ではなく、いずれかを変更することをお勧めします。 |
logit_bias |
map | オプション | null | 指定したトークンが入力候補に表示される可能性を変更します。 トークン (GPT トークナイザーのトークン ID で指定) を関連付けられたバイアス値 (-100 から 100) にマップする json オブジェクトを受け入れます。 このトークナイザー ツール (GPT-2 と GPT-3 の両方で機能) を使用して、テキストをトークン ID に変換できます。 数学的には、サンプリングの前にモデルによって生成されたロジットにバイアスが追加されます。 正確な効果はモデルごとに異なりますが、-1 から 1 の値では選択の可能性が低下または増加し、-100 や 100 などの値では、関連するトークンの禁止または排他的な選択になります。 たとえば、{"50256": -100} を渡して、<|endoftext|> トークンが生成されないようにすることができます。 |
user |
string | 省略可能 | エンド ユーザーを表す一意の識別子。不正使用の監視と検出に役立ちます | |
n |
整数 (integer) | 省略可能 | 1 | プロンプトごとに生成する入力候補の数。 注: このパラメーターにより多くの入力候補が生成されるため、トークン クォータがすぐに消費される可能性があります。 慎重に使用し、max_tokens と stop の設定が合理的であることを確認してください。 |
stream |
boolean | 省略可能 | False | 部分的な進行状況をストリーム バックするかどうか。 設定した場合、トークンは、使用可能になると data-only server-sent イベントとして送信され、ストリームはデータ [DONE] メッセージで終了します。 |
logprobs |
整数 (integer) | 省略可能 | null | logprobs の最も可能性の高いトークンと、選択したトークンのログ確率を含めます。 たとえば、logprobs が 10 の場合、API は可能性が最も高い 10 個のトークンの一覧を返します。 API は常にサンプリングされたトークンの logprob を返します。そのため、応答には最大 logprobs+1 の要素が含まれる可能性があります。 このパラメーターは gpt-35-turbo では使用できません。 |
suffix |
string | 省略可能 | null | 挿入されたテキストの入力候補の後に付加されるサフィックス。 |
echo |
boolean | 省略可能 | False | 入力候補に加えてプロンプトをエコーバックします。 このパラメーターは gpt-35-turbo では使用できません。 |
stop |
文字列または配列 | オプション | null | API がそれ以上のトークンの生成を停止する、最大 4 つのシーケンス。 返されるテキストに停止シーケンスは含まれません。 |
presence_penalty |
number | オプション | 0 | -2.0 から 2.0 の数値。 正の値を指定すると、これまでのテキストに出現するかどうかに基づいて新しいトークンにペナルティが課せられ、モデルが新しいトピックを扱う可能性が高まります。 |
frequency_penalty |
number | オプション | 0 | -2.0 から 2.0 の数値。 値を正にすると、これまでのテキストに存在する頻度に基づいて新しいトークンにペナルティが課せられ、モデルが同じ行を逐語的に繰り返す可能性が低下します。 |
best_of |
整数 (integer) | 省略可能 | 1 | サーバー側 best_of 入力候補を生成し、"best" (トークンあたりのログ確率が最低のもの) を返します。 結果をストリーミングすることはできません。 n と共に使用する場合、best_of は入力候補の数を制御し、n は返す数を指定します。best_of は n より大きくする必要があります。 注: このパラメーターにより多くの入力候補が生成されるため、トークン クォータがすぐに消費される可能性があります。 慎重に使用し、max_tokens と stop の設定が合理的であることを確認してください。 このパラメーターは gpt-35-turbo では使用できません。 |
要求の例
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/completions?api-version=2023-05-15\
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d "{
\"prompt\": \"Once upon a time\",
\"max_tokens\": 5
}"
応答の例
{
"id": "cmpl-4kGh7iXtjW4lc9eGhff6Hp8C7btdQ",
"object": "text_completion",
"created": 1646932609,
"model": "ada",
"choices": [
{
"text": ", a dark line crossed",
"index": 0,
"logprobs": null,
"finish_reason": "length"
}
]
}
応答の例では、finish_reason
と stop
は等しくなります。 finish_reason
と content_filter
が等しい場合は、コンテンツのフィルター処理のガイドを参照して、これが発生している理由を理解してください。
埋め込み
機械学習モデルやその他のアルゴリズムで簡単に使用できる、特定の入力のベクター表現を取得します。
注意
OpenAI では現在、text-embedding-ada-002
を使用して、より多くの配列入力を許可しています。 Azure OpenAI は現在、text-embedding-ada-002 (Version 2)
に対して最大 16 個の入力配列をサポートしています。 どちらの場合も、このモデルでは API 要求あたりの最大入力トークン制限を 8191 未満に抑える必要があります。
埋め込みの作成
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/embeddings?api-version={api-version}
パス パラメーター
パラメーター | Type | 必須 | 説明 |
---|---|---|---|
your-resource-name |
string | 必須 | Azure OpenAI リソースの名前。 |
deployment-id |
string | 必須 | モデル デプロイの名前。 呼び出しを行うためにはまずモデルをデプロイすることが必要です。 |
api-version |
string | 必須 | この操作に使用する API バージョン。 これは、YYYY-MM-DD 形式に従います。 |
サポートされているバージョン
2022-12-01
Swagger の仕様2023-03-15-preview
Swagger の仕様2023-05-15
Swagger の仕様2023-06-01-preview
Swagger の仕様2023-07-01-preview
Swagger の仕様2023-08-01-preview
Swagger の仕様
要求本文
パラメーター | Type | 必須 | Default | 説明 |
---|---|---|---|---|
input |
文字列または配列 | はい | 該当なし | 配列または文字列としてエンコードされた、埋め込みを取得する入力テキスト。 入力トークンの数は、使用しているモデルによって異なります。 text-embedding-ada-002 (Version 2) のみが配列入力をサポートしています。 |
user |
string | No | [Null] | エンドユーザーを表す一意の識別子。 Azure OpenAI による不正使用の監視と検出に役立ちます。 PII 識別子を渡さないでください。代わりに GUID などの仮名化された値を使用してください |
要求の例
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/embeddings?api-version=2023-05-15 \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d "{\"input\": \"The food was delicious and the waiter...\"}"
応答の例
{
"object": "list",
"data": [
{
"object": "embedding",
"embedding": [
0.018990106880664825,
-0.0073809814639389515,
.... (1024 floats total for ada)
0.021276434883475304,
],
"index": 0
}
],
"model": "text-similarity-babbage:001"
}
チャット入力候補
GPT-35-Turbo と GPT-4 モデルを使用して、チャット メッセージの入力候補を作成します。
チャット入力候補を作成する
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/chat/completions?api-version={api-version}
パス パラメーター
パラメーター | Type | 必須 | 説明 |
---|---|---|---|
your-resource-name |
string | 必須 | Azure OpenAI リソースの名前。 |
deployment-id |
string | 必須 | モデル デプロイの名前。 呼び出しを行うためにはまずモデルをデプロイすることが必要です。 |
api-version |
string | 必須 | この操作に使用する API バージョン。 これは、YYYY-MM-DD 形式に従います。 |
サポートされているバージョン
2023-03-15-preview
Swagger の仕様2023-05-15
Swagger の仕様2023-06-01-preview
Swagger の仕様2023-07-01-preview
Swagger の仕様2023-08-01-preview
Swagger の仕様
要求の例
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/chat/completions?api-version=2023-05-15 \
-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?"}]}'
応答の例
{"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}]}
応答の例では、finish_reason
と stop
は等しくなります。 finish_reason
と content_filter
が等しい場合は、コンテンツのフィルター処理のガイドを参照して、これが発生している理由を理解してください。
読みやすいように出力形式が調整されています。実際の出力は改行のない単一のテキスト ブロックです。
パラメーター | Type | 必須 | Default | 説明 |
---|---|---|---|---|
messages |
array | 必須 | このチャット完了要求に関連付けられたコンテキスト メッセージのコレクション。 一般的な使用法は、アシスタントの動作に関する指示を提供するシステム ロールのチャット メッセージで始まり、その後、ユーザー ロールとアシスタント ロールの間でメッセージが交互に送信されます。 | |
temperature |
number | オプション | 1 | 使用するサンプリング温度 (0 から 2)。 0.8 のような大きい値にすると、出力はよりランダムになり、0.2 のような小さい値にすると、出力はより集中的および確定的になります。\n一般に、これと top_p のいずれかを変更し、両方は変更しないことをお勧めします。 |
n |
整数 (integer) | 省略可能 | 1 | 入力メッセージごとに生成するチャット入力候補の選択肢の数。 |
stream |
boolean | 省略可能 | false | 設定すると、ChatGPT と同様に部分的なメッセージ デルタが送信されます。 トークンは、使用可能になると data-only server-sent イベントとして送信され、ストリームは data: [DONE] メッセージで終了します。 |
stop |
文字列または配列 | オプション | null | API がそれ以上のトークンの生成を停止する、最大 4 つのシーケンス。 |
max_tokens |
整数 (integer) | 省略可能 | inf | 生成された回答に許可されるトークンの最大数。 既定では、モデルが返すことができるトークンの数は (4096 - プロンプト トークン) になります。 |
presence_penalty |
number | オプション | 0 | -2.0 から 2.0 の数値。 正の値を指定すると、これまでのテキストに出現するかどうかに基づいて新しいトークンにペナルティが課せられ、モデルが新しいトピックを扱う可能性が高まります。 |
frequency_penalty |
number | オプション | 0 | -2.0 から 2.0 の数値。 値を正にすると、これまでのテキストに存在する頻度に基づいて新しいトークンにペナルティが課せられ、モデルが同じ行を逐語的に繰り返す可能性が低下します。 |
logit_bias |
object | 省略可能 | null | 指定したトークンが入力候補に表示される可能性を変更します。 トークン (トークナイザーのトークン ID で指定) を関連付けられたバイアス値 (-100 から 100) にマップする json オブジェクトを受け入れます。 数学的には、サンプリングの前にモデルによって生成されたロジットにバイアスが追加されます。 正確な効果はモデルごとに異なりますが、-1 から 1 の値では選択の可能性が低下または増加し、-100 や 100 などの値では、関連するトークンの禁止または排他的な選択になります。 |
user |
string | 省略可能 | エンド ユーザーを表す一意の識別子。これは、Azure OpenAI が不正使用を監視および検出するのに役立ちます。 | |
function_call |
Optional | モデルが関数呼び出しにどのように応答するかを制御します。 "none" は、モデルが関数を呼び出さず、エンドユーザーに応答することを意味します。 "auto" は、モデルがエンド ユーザーまたは関数の呼び出しのどちらかを選択できることを意味します。 {"name": "my_function"} で特定の関数を指定すると、モデルはその関数を強制的に呼び出します。 関数が存在しない場合は、"none" が既定値です。 関数が存在する場合は、"auto" が既定値です。 このパラメーターには API バージョン 2023-07-01-preview が必要です |
||
functions |
FunctionDefinition[] |
Optional | モデルが JSON 入力を生成する可能性がある関数の一覧。 このパラメーターには API バージョン 2023-07-01-preview が必要です |
ChatMessage
チャット完了操作内の単一のロール属性メッセージ。
名前 | Type | 説明 |
---|---|---|
コンテンツ | string | このメッセージ ペイロードに関連付けられたテキスト。 |
function_call | FunctionCall | モデルによって生成された、呼び出される関数の名前と引数。 |
name | string | このメッセージの作成者の name 。 ロールが function の場合、name は必須であり、応答が content にある関数の名前である必要があります。 a ~ z、A ~ Z、0 ~ 9、アンダースコアを含めることができ、最大長は 64 文字です。 |
role | ChatRole | このメッセージ ペイロードに関連付けられたロール |
ChatRole
チャット完了操作内のメッセージの意図された目的の説明。
名前 | Type | 説明 |
---|---|---|
assistant | string | システム指示のユーザー入力に対する応答を提供するロール。 |
関数 (function) | string | チャット完了の関数結果を提供するロール。 |
システム | string | アシスタントの動作を指示または設定するロール。 |
user | string | チャット完了の入力を提供するロール。 |
FunctionCall
モデルによって生成された、呼び出される関数の名前と引数。 これには API バージョンが必要です 2023-07-01-preview
名前 | Type | 説明 |
---|---|---|
引数 | string | モデルによって JSON 形式で生成された、関数を呼び出すための引数。 モデルは常に有効な JSON を生成するとは限らず、関数スキーマで定義されていないパラメーターを作成する可能性があることに注意してください。 関数を呼び出す前に、コード内の引数を検証します。 |
name | string | 呼び出す関数の名前。 |
FunctionDefinition
一致するユーザー入力に応じてチャット完了が呼び出すことができる呼び出し元指定の関数の定義。 これには API バージョンが必要です 2023-07-01-preview
名前 | Type | 説明 |
---|---|---|
description | string | 関数の動作の説明。 モデルは、関数を選択し、そのパラメーターを解釈するときにこの説明を使用します。 |
name | string | 呼び出される関数の名前。 |
parameters | 関数が受け取るパラメーター。JSON スキーマ オブジェクトとして記述されます。 |
入力候補の拡張機能
チャット入力候補の拡張機能 (データに対する Azure OpenAI など)。
チャット入力候補拡張機能を使用する
POST {your-resource-name}/openai/deployments/{deployment-id}/extensions/chat/completions?api-version={api-version}
パス パラメーター
パラメーター | Type | 必須 | 説明 |
---|---|---|---|
your-resource-name |
string | 必須 | Azure OpenAI リソースの名前。 |
deployment-id |
string | 必須 | モデル デプロイの名前。 呼び出しを行うためにはまずモデルをデプロイすることが必要です。 |
api-version |
string | 必須 | この操作に使用する API バージョン。 これは、YYYY-MM-DD 形式に従います。 |
サポートされているバージョン
2023-06-01-preview
Swagger の仕様2023-07-01-preview
Swagger の仕様2023-08-01-preview
Swagger の仕様
要求の例
curl -i -X POST YOUR_RESOURCE_NAME/openai/deployments/YOUR_DEPLOYMENT_NAME/extensions/chat/completions?api-version=2023-06-01-preview \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d \
'
{
"temperature": 0,
"max_tokens": 1000,
"top_p": 1.0,
"dataSources": [
{
"type": "AzureCognitiveSearch",
"parameters": {
"endpoint": "'YOUR_AZURE_COGNITIVE_SEARCH_ENDPOINT'",
"key": "'YOUR_AZURE_COGNITIVE_SEARCH_KEY'",
"indexName": "'YOUR_AZURE_COGNITIVE_SEARCH_INDEX_NAME'"
}
}
],
"messages": [
{
"role": "user",
"content": "What are the differences between Azure Machine Learning and Azure AI services?"
}
]
}
'
応答の例
{
"id": "12345678-1a2b-3c4e5f-a123-12345678abcd",
"model": "",
"created": 1684304924,
"object": "chat.completion",
"choices": [
{
"index": 0,
"messages": [
{
"role": "tool",
"content": "{\"citations\": [{\"content\": \"\\nAzure AI services are cloud-based artificial intelligence (AI) services...\", \"id\": null, \"title\": \"What is Azure AI services\", \"filepath\": null, \"url\": null, \"metadata\": {\"chunking\": \"orignal document size=250. Scores=0.4314117431640625 and 1.72564697265625.Org Highlight count=4.\"}, \"chunk_id\": \"0\"}], \"intent\": \"[\\\"Learn about Azure AI services.\\\"]\"}",
"end_turn": false
},
{
"role": "assistant",
"content": " \nAzure AI services are cloud-based artificial intelligence (AI) services that help developers build cognitive intelligence into applications without having direct AI or data science skills or knowledge. [doc1]. Azure Machine Learning is a cloud service for accelerating and managing the machine learning project lifecycle. [doc1].",
"end_turn": true
}
]
}
]
}
パラメーター | Type | 必須 | Default | 説明 |
---|---|---|---|---|
messages |
array | 必須 | null | チャット形式でチャット入力候補を生成するメッセージ。 |
dataSources |
array | 必須 | データ特徴量で Azure OpenAI に使用するデータ ソース。 | |
temperature |
number | オプション | 0 | 使用するサンプリング温度 (0 から 2)。 0.8 のような大きい値にすると、出力はよりランダムになり、0.2 のような小さい値にすると、出力はより集中的および決定論的になります。 一般に、これと top_p の両方ではなく、いずれかを変更することをお勧めします。 |
top_p |
number | オプション | 1 | 核サンプリングと呼ばれる、温度によるサンプリングの代替の場合、モデルでは top_p 確率質量を持つトークンの結果が考慮されます。 したがって、0.1 は、上位 10% の確率質量を含むトークンのみが考慮されることを意味します。 一般的に、これと temperature の両方ではなく、いずれかを変更することをお勧めします。 |
stream |
boolean | 省略可能 | false | 設定すると、ChatGPT と同様に部分的なメッセージ デルタが送信されます。 トークンは、使用可能になると data-only server-sent イベントとして送信され、ストリームは "messages": [{"delta": {"content": "[DONE]"}, "index": 2, "end_turn": true}] メッセージで終了します。 |
stop |
文字列または配列 | オプション | null | API がそれ以上のトークンの生成を停止する、最大 2 つのシーケンス。 |
max_tokens |
整数 (integer) | 省略可能 | 1000 | 生成された回答に許可されるトークンの最大数。 既定では、モデルが返すことができるトークンの数は 4096 - prompt_tokens になります。 |
次のパラメーターは、dataSources
内の parameters
フィールド内で使用できます。
パラメーター | Type | 必須 | Default | 説明 |
---|---|---|---|---|
type |
string | 必須 | null | データ特徴量で Azure OpenAI に使用するデータ ソース。 Azure Cognitive Search の場合、値は AzureCognitiveSearch です。 |
endpoint |
string | 必須 | null | データ ソース エンドポイント。 |
key |
string | 必須 | null | サービスの Azure Cognitive Search 管理者キーの 1 つ。 |
indexName |
string | 必須 | null | 使用する検索インデックス。 |
fieldsMapping |
ディクショナリ | オプション | null | インデックス データ列マッピング。 |
inScope |
boolean | 省略可能 | true | 設定した場合、この値によって、根拠付けるデータ コンテンツに固有の応答が制限されます。 |
topNDocuments |
number | オプション | 5 | ドキュメント拡張のためにフェッチする必要があるドキュメントの数。 |
queryType |
string | 省略可能 | simple | Azure Cognitive Search に使用するクエリ オプションを示します。 |
semanticConfiguration |
string | 省略可能 | null | セマンティック検索の構成。 queryType が semantic に設定されている場合にのみ使用できます。 |
roleInformation |
string | 省略可能 | null | どう振る舞うべきかに関する指示と、応答の生成時に参照する必要があるコンテキストをモデルに渡します。 Azure OpenAI Studio の "システム メッセージ" に相当します。 詳細については、「データの使用」を参照してください。 トークン制限 100 が存在し、全体的なトークン制限に反映されます。 |
filter |
string | 省略可能 | null | 機密ドキュメントへのアクセスを制限するために使用されるフィルター パターン |
embeddingEndpoint |
string | 省略可能 | null | Ada 埋め込みモデル デプロイのエンドポイント URL。 ベクトル検索に使用されます。 |
embeddingKey |
string | 省略可能 | null | Ada 埋め込みモデル デプロイの API キー。 ベクトル検索に使用されます。 |
イメージの生成
生成されたイメージを要求する
テキスト キャプションから画像のバッチを生成します。
POST https://{your-resource-name}.openai.azure.com/openai/images/generations:submit?api-version={api-version}
パス パラメーター
パラメーター | Type | 必須 | 説明 |
---|---|---|---|
your-resource-name |
string | 必須 | Azure OpenAI リソースの名前。 |
api-version |
string | 必須 | この操作に使用する API バージョン。 これは、YYYY-MM-DD 形式に従います。 |
サポートされているバージョン
2023-06-01-preview
Swagger の仕様2023-07-01-preview
Swagger の仕様2023-08-01-preview
Swagger の仕様
要求本文
パラメーター | Type | 必須 | Default | 説明 |
---|---|---|---|---|
prompt |
string | 必須 | 目的のイメージのテキストの説明。 最大長は 1000 文字です。 | |
n |
整数 (integer) | 省略可能 | 1 | 生成するイメージの数。 1 から 5 の間である必要があります。 |
size |
string | 省略可能 | 1,024 x 1,024 | 生成されたイメージのサイズ。 256x256 、512x512 、1024x1024 のいずれかである必要があります。 |
要求の例
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
}'
応答の例
この操作によって、202
状態コードと、操作の ID と状態を含む GenerateImagesResponse
JSON オブジェクトが返されます。
{
"id": "f508bcf2-e651-4b4b-85a7-58ad77981ffa",
"status": "notRunning"
}
生成されたイメージの結果を取得する
この API を使用して、イメージ生成操作の結果を取得します。 イメージの生成は現在、api-version=2023-06-01-preview
でのみ使用できます。
GET https://{your-resource-name}.openai.azure.com/openai/operations/images/{operation-id}?api-version={api-version}
パス パラメーター
パラメーター | Type | 必須 | 説明 |
---|---|---|---|
your-resource-name |
string | 必須 | Azure OpenAI リソースの名前。 |
operation-id |
string | 必須 | 元のイメージ生成要求を識別する GUID。 |
サポートされているバージョン
2023-06-01-preview
Swagger の仕様2023-07-01-preview
Swagger の仕様2023-08-01-preview
Swagger の仕様
要求の例
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}"
応答の例
この操作が成功すると、200
状態コードと OperationResponse
JSON オブジェクトが返されます。 status
フィールドは "notRunning"
(タスクはキューに登録されているがまだ開始されていない)、"running"
、"succeeded"
、"canceled"
(タスクがタイムアウト)、"failed"
または "deleted"
になります。 succeeded
状態は、生成されたイメージが特定の URL でダウンロード可能であることを示します。 複数のイメージが生成された場合、それらの URL はすべて 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"
}
生成されたイメージをサーバーから削除する
要求によって返される操作 ID を使用して、対応するイメージを Azure サーバーから削除することができます。 生成されたイメージは、既定では 24 時間後に自動的に削除されますが、必要に応じて、より早く削除をトリガーできます。
DELETE https://{your-resource-name}.openai.azure.com/openai/operations/images/{operation-id}?api-version={api-version}
パス パラメーター
パラメーター | Type | 必須 | 説明 |
---|---|---|---|
your-resource-name |
string | 必須 | Azure OpenAI リソースの名前。 |
operation-id |
string | 必須 | 元のイメージ生成要求を識別する GUID。 |
サポートされているバージョン
2023-06-01-preview
Swagger の仕様2023-07-01-preview
Swagger の仕様2023-08-01-preview
Swagger の仕様
要求の例
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
操作が成功すると、204
状態コードが返されます。 この API は、操作が終了状態 (running
ではなく) の場合にのみ成功します。
音声テキスト変換
音声からテキストへの文字起こしを要求する
オーディオ ファイルを文字起こしします。
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/audio/transcriptions?api-version={api-version}
パス パラメーター
パラメーター | Type | 必須 | 説明 |
---|---|---|---|
your-resource-name |
string | 必須 | Azure OpenAI リソースの名前。 |
deployment-id |
string | 必須 | MyWhisperDeployment などの Whisper モデル デプロイの名前。 呼び出しを行うにはまず Whisper モデルをデプロイする必要があります。 |
api-version |
string | 必須 | この操作に使用する API バージョン。 この値は YYYY-MM-DD 形式に従います。 |
サポートされているバージョン
2023-09-01-preview
要求本文
パラメーター | Type | 必須 | Default | 説明 |
---|---|---|---|---|
file |
file | はい | 該当なし | 次のいずれかの形式で文字起こしするオーディオ ファイル オブジェクト (ファイル名ではありません): flac、mp3、mp4、mpeg、mpga、m4a、ogg、wav、webm。 Azure OpenAI の Whisper モデルのファイル サイズ上限は 25 MB です。 25 MB より大きいファイルを文字起こしする必要がある場合は、それをチャンクに分割します。 または、Azure AI 音声のバッチ文字起こし API を使用することもできます。 GitHub の Azure AI 音声 SDK リポジトリからサンプル オーディオ ファイルを入手できます。 |
language |
string | No | [Null] | fr などの入力オーディオの言語。 入力言語を ISO-639-1 形式で提供すると、精度と待機時間が向上します。サポートされている言語の一覧については、OpenAI のドキュメントを参照してください。 |
prompt |
string | No | [Null] | モデルのスタイルをガイドしたり、前のオーディオ セグメントを続行したりするための省略可能なテキスト。 プロンプトはオーディオ言語と一致する必要があります。 ユース ケースの例を含むプロンプトの詳細については、OpenAI のドキュメントを参照してください。 |
response_format |
string | いいえ | json | 次のいずれかのオプションのトランスクリプト出力の形式: json、text、srt、verbose_json、vtt。 既定値は json です。 |
temperature |
number | いいえ | 0 | 0 から 1 の間のサンプリング温度。 0.8 のような大きい値にすると、出力はよりランダムになり、0.2 のような小さい値にすると、出力はより集中的および決定論的になります。 0 に設定すると、モデルはログ確率を使用して、特定のしきい値に達するまで温度を自動的に上昇させます。 既定値は 0 です。 |
要求の例
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"
応答の例
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.
音声からテキストへの翻訳を要求する
オーディオ ファイルを別の言語から英語に翻訳します。 サポートされている言語の一覧については、OpenAI のドキュメントを参照してください。
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/audio/translations?api-version={api-version}
パス パラメーター
パラメーター | Type | 必須 | 説明 |
---|---|---|---|
your-resource-name |
string | 必須 | Azure OpenAI リソースの名前。 |
deployment-id |
string | 必須 | MyWhisperDeployment などの Whisper モデル デプロイの名前。 呼び出しを行うにはまず Whisper モデルをデプロイする必要があります。 |
api-version |
string | 必須 | この操作に使用する API バージョン。 この値は YYYY-MM-DD 形式に従います。 |
サポートされているバージョン
2023-09-01-preview
要求本文
パラメーター | Type | 必須 | Default | 説明 |
---|---|---|---|---|
file |
file | はい | 該当なし | 次のいずれかの形式で文字起こしするオーディオ ファイル オブジェクト (ファイル名ではありません): flac、mp3、mp4、mpeg、mpga、m4a、ogg、wav、webm。 Azure OpenAI の Whisper モデルのファイル サイズ上限は 25 MB です。 25 MB より大きいファイルを文字起こしする必要がある場合は、それをチャンクに分割します。 GitHub の Azure AI 音声 SDK リポジトリからサンプル オーディオ ファイルをダウンロードできます。 |
prompt |
string | No | [Null] | モデルのスタイルをガイドしたり、前のオーディオ セグメントを続行したりするための省略可能なテキスト。 プロンプトはオーディオ言語と一致する必要があります。 ユース ケースの例を含むプロンプトの詳細については、OpenAI のドキュメントを参照してください。 |
response_format |
string | いいえ | json | 次のいずれかのオプションのトランスクリプト出力の形式: json、text、srt、verbose_json、vtt。 既定値は json です。 |
temperature |
number | いいえ | 0 | 0 から 1 の間のサンプリング温度。 0.8 のような大きい値にすると、出力はよりランダムになり、0.2 のような小さい値にすると、出力はより集中的および決定論的になります。 0 に設定すると、モデルはログ確率を使用して、特定のしきい値に達するまで温度を自動的に上昇させます。 既定値は 0 です。 |
要求の例
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"
応答の例
{
"text": "Hello, my name is Wolfgang and I come from Germany. Where are you heading today?"
}
管理 API
Azure OpenAI は、Azure AI サービスの一部としてデプロイされます。 すべての Azure AI サービスは、作成、更新、削除の操作で同じ一連の管理 API に依存します。 管理 API は、OpenAI リソース内にモデルをデプロイするためにも使用されます。
次の手順
モデルと REST API を使用した微調整について説明します。 Azure OpenAI をサポートする基となるモデルに関する記事を確認します。