OpenAI API 補完エンドポイント#

: このエンドポイントは LLM グラフでのみ機能します。

API リファレンス#

OpenVINO モデルサーバーに、OpenAI API を使用した completions エンドポイントが含まれるようになりました。API の詳細については、OpenAI API リファレンスを参照してください。エンドポイントはパスを介して公開されます:

http://server_name:port/v3/completions

要求の例#

curl http://localhost/v3/completions \ 
    -H "Content-Type: application/json" \ 
    -d '{ "model": "llama3", "prompt": "This is a test", "stream": false }'

応答の例#

{ 
  "choices": [ 
    { 
      "finish_reason": "stop", 
      "index": 0, 
      "logprobs": null, 
      "text": "You are testing me!"     } 
  ], 
  "created": 1716825108, 
  "model": "llama3", 
  "object": "text_completion" 
}

要求#

一般#

パラメーター

OpenVINO™ モデルサーバー

OpenAI /補完 API

vLLM サービングのサンプリング・パラメーター

タイプ

説明

モデル

文字列 (必須)

使用するモデル名管理者から見ると、これは、目的のモデルを使用して生成をスケジュールするように構成された MediaPipe グラフに割り当てられた名前です。

ストリーム

ブーリアン (オプション、デフォルトは false)

true に設定すると、部分的なメッセージデルタがクライアントに送信されます。生成チャンクは、利用可能になるとデータのみのサーバー送信イベントとして送信され、ストリームは data: [DONE] メッセージによって終了します。Python コードの例:

プロンプト

⚠️

文字列または配列 (必須)

補完を生成するプロンプト。文字列、文字列の配列、トークンの配列、またはトークン配列の配列としてエンコードされます。制限事項: 現在、単一文字列プロンプトのみがサポートされています。

max_tokens

整数

生成できるトークンの最大数。設定されていない場合は、EOS トークンが生成されると生成が停止します。

ignore_eos

ブーリアン (デフォルトは false)

EOS トークンが生成された後に EOS トークンを無視してトークンの生成を継続するかどうか。true に設定されている場合、許容される最大 max_tokens 値は 4000 です。

ビーム・サーチ・サンプリング固有#

パラメーター

OpenVINO™ モデルサーバー

OpenAI /補完 API

vLLM サービングのサンプリング・パラメーター

タイプ

説明

n

整数 (デフォルトは 1)

指定されたプロンプトに対して返される出力シーケンスの数。この値は 1 <= N <= BEST_OF の範囲でなければなりません。

best_of

整数 (デフォルトは 1)

プロンプトから生成される出力シーケンスの数。これらの best_of シーケンスから、上位 n 個のシーケンスが返されます。best_ofn 以上である必要があります。これは、ビーム検索サンプリングのビーム幅として扱われます。

diversity_penalty

float (デフォルトは 1.0)

特定の時間に他のグループのビームと同じトークンが生成された場合に、この値がビームのスコアから減算されます。arXiv 1909.05858 を参照してください。

length_penalty

float (デフォルトは 1.0)

ビームベースの生成で使用される長さに対する指数ペナルティー。これはシーケンスの長さ指数として適用され、シーケンスのスコアを分割するために使用されます。スコアはシーケンスの対​​数尤度 (つまり負) であるため、length_penalty > 0.0 の場合は長いシーケンスが推奨され、length_penalty < 0.0 の場合は短いシーケンスが推奨されます。

多項式サンプリング固有#

パラメーター

OpenVINO™ モデルサーバー

OpenAI /補完 API

vLLM サービングのサンプリング・パラメーター

タイプ

説明

温度

float (デフォルトは 0.0)

この値は、多項式サンプリングのトークン確率を調整するのに使用されます。> 0.0 に設定すると、多項式サンプリングが有効になります。

top_p

float (デフォルトは 1.0)

考慮する上位トークンの累積確率を制御します。(0, 1] である必要があります。すべてのトークンを考慮するには 1 に設定します。

top_k

int (デフォルトは 0)

考慮する上位トークンの番号を制御します。すべてのトークンを考慮するには 0 に設定します。

repetition_penalty

float (デフォルトは 1.0)

新しいトークンとプロンプトのこれまでに生成されたテキストに表示されるかどうかに基づいて、新しいトークンにペナルティーを課します。値が 1.0 より大きい場合、モデルは新しいトークンを使用するように促され、値が 1.0 より小さい場合、モデルはトークンを繰り返すように促されます。1.0 はペナルティーがないことを意味します。

seed

整数 (デフォルトは 0)

生成に使用するランダムシード。

OpenAI サービスでサポートされていないパラメーター:#

  • echo

  • frequency_penalty

  • logit_bias

  • logprobs

  • presence_penalty

  • stop

  • stream_options

  • suffix

vLLM でサポートされていないパラメーター:#

  • presence_penalty

  • frequency_penalty

  • min_p

  • use_beam_search (OpenVINO モデルサーバーでビーム検索を有効にするには best_of パラメーターを増やすだけです)

  • early_stopping

  • stop

  • stop_token_ids

  • include_stop_str_in_output

  • min_tokens

  • logprobs

  • prompt_logprobs

  • detokenize

  • skip_special_tokens

  • spaces_between_special_tokens

  • logits_processors

  • truncate_prompt_tokens

応答#

パラメーター

OpenVINO™ モデルサーバー

OpenAI /補完 API

タイプ

説明

選択

配列

チャット補完の選択肢のリスト。n が 1 より大きい場合は、複数になることがあります (ビーム検索または多項式サンプリング)。

choices.index

整数

選択リスト内の選択インデックス。

choices.text

文字列

モデルによって生成されたチャット補完テキスト。

choices.finish_reason

⚠️

文字列または null

モデルがトークンの生成を停止した理由。モデルが自然な停止ポイントまたは指定された停止シーケンスに到達した場合は stop、リクエストで指定されたトークンの最大数に達した場合は length、生成が継続している場合 (ストリーミング) は null になります。ただし、現在のバージョンでは length はサポートされていません

choices.logprobs

オブジェクトまたは null

選択の確率情報をログに記録します。現在のバージョンでは、logprobs は常に null です。

生成

文字列

チャット補完が作成された時点の Unix タイムスタンプ (秒単位)。

モデル

文字列

チャット補完に使用されるモデル。

オブジェクト

文字列

常に text_completion

OpenAI サービスでサポートされていないパラメーター:#

  • id

  • system_fingerprint

  • 使用法

関連情報#

OpenAI API で提供される LLM モデルを使用したエンドツーエンドのデモ

C コードの一部

LLM 計算機

REST API 拡張機能を使用してカスタム計算機を作成する開発者ガイド