OpenAI推論サービス
推論タスクを実行するための推論エンドポイントをopenai
サービスで作成します。
リクエスト
PUT /_inference/<task_type>/<inference_id>
パスパラメータ
<inference_id>
- (必須、文字列) 推論エンドポイントの一意の識別子。
<task_type>
- (必須、文字列) モデルが実行する推論タスクのタイプ。
利用可能なタスクタイプ:completion
,text_embedding
.
リクエストボディ
service
- (必須、文字列) 指定されたタスクタイプに対してサポートされるサービスのタイプ。この場合、
openai
。 service_settings
- (必須、オブジェクト) 推論モデルをインストールするために使用される設定。
これらの設定はopenai
サービスに特有です。api_key
- (必須、文字列) あなたのOpenAIアカウントの有効なAPIキー。あなたのOpenAI APIキーは、OpenAIアカウントのAPIキーセクションで見つけることができます。
APIキーは推論モデルの作成時に一度だけ提供する必要があります。推論APIを取得するはあなたのAPIキーを取得しません。推論モデルを作成した後、関連付けられたAPIキーを変更することはできません。異なるAPIキーを使用したい場合は、推論モデルを削除し、同じ名前と更新されたAPIキーで再作成してください。 model_id
- (必須、文字列) 推論タスクに使用するモデルの名前。利用可能なテキスト埋め込みモデルのリストについては、OpenAIのドキュメントを参照してください。
organization_id
- (オプション、文字列) あなたの組織の一意の識別子。組織IDは、OpenAIアカウントの設定
> 組織で見つけることができます。 url
- (オプション、文字列) リクエストに使用するURLエンドポイント。テスト目的で変更可能です。デフォルトは
https://api.openai.com/v1/embeddings
です。 rate_limit
- (オプション、オブジェクト)
openai
サービスは、タスクタイプに応じて許可されるリクエストのデフォルト数を設定します。text_embedding
の場合は3000
に設定されています。completion
の場合は500
に設定されています。これにより、OpenAIから返されるレート制限エラーの数を最小限に抑えることができます。これを変更するには、サービス設定内のこのオブジェクトのrequests_per_minute
設定を設定します:
テキスト
"rate_limit": {
"requests_per_minute": <<number_of_requests>>
}
OpenAIのレート制限に関する詳細情報は、アカウント制限で確認できます。
task_settings
- (オプション、オブジェクト) 推論タスクを構成するための設定。これらの設定は、指定した
<task_type>
に特有です。- `````user
- (オプション、文字列) リクエストを発行するユーザーを指定します。これは悪用検出に使用できます。
task_settings
はtext_embedding
タスクタイプのため user
- (オプション、文字列) リクエストを発行するユーザーを指定します。これは悪用検出に使用できます。
OpenAIサービスの例
以下の例は、openai-embeddings
という推論エンドポイントを作成してtext_embedding
タスクタイプを実行する方法を示しています。
Python
resp = client.inference.put(
task_type="text_embedding",
inference_id="openai-embeddings",
inference_config={
"service": "openai",
"service_settings": {
"api_key": "<api_key>",
"model_id": "text-embedding-ada-002"
}
},
)
print(resp)
Js
const response = await client.inference.put({
task_type: "text_embedding",
inference_id: "openai-embeddings",
inference_config: {
service: "openai",
service_settings: {
api_key: "<api_key>",
model_id: "text-embedding-ada-002",
},
},
});
console.log(response);
コンソール
PUT _inference/text_embedding/openai-embeddings
{
"service": "openai",
"service_settings": {
"api_key": "<api_key>",
"model_id": "text-embedding-ada-002"
}
}
次の例は、openai-completion
という推論エンドポイントを作成してcompletion
タスクタイプを実行する方法を示しています。
Python
resp = client.inference.put(
task_type="completion",
inference_id="openai-completion",
inference_config={
"service": "openai",
"service_settings": {
"api_key": "<api_key>",
"model_id": "gpt-3.5-turbo"
}
},
)
print(resp)
Js
const response = await client.inference.put({
task_type: "completion",
inference_id: "openai-completion",
inference_config: {
service: "openai",
service_settings: {
api_key: "<api_key>",
model_id: "gpt-3.5-turbo",
},
},
});
console.log(response);
コンソール
PUT _inference/completion/openai-completion
{
"service": "openai",
"service_settings": {
"api_key": "<api_key>",
"model_id": "gpt-3.5-turbo"
}
}