プロバイダーのリクエスト変換ヘルパー。リクエスト送信前に、メッセージとリクエストオプションをモデルが宣言したケイパビリティに合わせて調整する(未対応の添付の除外、temperature/reasoning バリアントの導出、出力トークンの上限制限など)。

Members

(static, constant) OUTPUT_TOKEN_MAX

出力トークンのハード上限(CLOSEDCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX で上書き可能)。

(static, constant) ProviderTransform

プロバイダー変換ヘルパーを集約した名前空間。

Methods

(static) maxOutputTokens(model) → {number}

リクエストの最大出力トークン数を算出する。モデルの出力上限を OUTPUT_TOKEN_MAX にクランプする(上限が設定されていない場合はその上限値にフォールバックする)。

Parameters:
NameTypeDescription
modelObject

解決済みのモデル(その limit.output を参照する)。

Returns:

上限制限された最大出力トークン数。

Type: 
number

(static) message(msgs, model, _options) → {Array}

メッセージのファイルパートを、モデルが実際に受け付けられるモダリティに絞り込み、MIME タイプが未対応(または不明)のモダリティにマッピングされる添付を除外する。

Parameters:
NameTypeDescription
msgsArray

チャットメッセージ。

modelObject

解決済みのモデル(その capabilities.input を参照する)。

_options*

未使用。将来のリクエスト単位オプション用に予約。

Returns:

未対応のファイルパートを除去したメッセージ。

Type: 
Array

(static) options(input) → {Object}

リクエストオプションのバッグを構築する。呼び出し側のプロバイダーオプションを展開し、providerOptions を介して providerOptions 名前空間配下にネストする。

Parameters:
NameTypeDescription
inputObject

{model, providerOptions} — モデルと、呼び出し側から渡されたプロバイダーオプション。

Returns:

結合されたオプションオブジェクト。

Type: 
Object

(static) providerOptions(_model, options) → {Object}

プロバイダーオプションを、期待される openaiCompatible 名前空間配下にラップする。

Parameters:
NameTypeDescription
_modelObject

解決済みのモデル(未使用)。

optionsObject

名前空間化するプロバイダーオプション。

Returns:

{openaiCompatible: options}

Type: 
Object

(static) schema(_model, schema) → {Object}

モデル向けに出力 JSON スキーマを変換する(現状はパススルー)。

Parameters:
NameTypeDescription
_modelObject

解決済みのモデル(未使用)。

schemaObject

変換対象のスキーマ。

Returns:

変更されないスキーマ。

Type: 
Object

(static) smallOptions(model) → {Object}

small/補助モデル用のデフォルトオプションを構築する(プロバイダーオプションは空)。

Parameters:
NameTypeDescription
modelObject

解決済みのモデル。

Returns:

options が返すオプションオブジェクト。

Type: 
Object

(static) temperature(model) → {number}

モデルに送信する temperature を解決する。対応している場合は 0、それ以外は undefined。

Parameters:
NameTypeDescription
modelObject

解決済みのモデル(その capabilities.temperature を参照する)。

Returns:

temperature が対応されている場合は 0、それ以外は undefined。

Type: 
number

(static) topK(_model) → {*}

モデルに送信する top-k 値を解決する(現状は常に未設定)。

Parameters:
NameTypeDescription
_modelObject

解決済みのモデル(未使用)。

Returns:

undefined。

Type: 
*

(static) topP(_model) → {*}

モデルに送信する top-p 値を解決する(現状は常に未設定)。

Parameters:
NameTypeDescription
_modelObject

解決済みのモデル(未使用)。

Returns:

undefined。

Type: 
*

(static) variants(model) → {Object}

reasoning に対応するモデル向けに、推論エフォートのバリアント("low"/"medium"/"high")一式を構築する。reasoning が未対応の場合は空オブジェクトを返す。

Parameters:
NameTypeDescription
modelObject

解決済みのモデル(その capabilities.reasoning を参照する)。

Returns:

バリアント名からオプションへのマップ、または {}

Type: 
Object

(inner) mimeToModality(mime) → {string}

MIME タイプを、モデルケイパビリティ検査で使用するモダリティのカテゴリにマッピングする。

Parameters:
NameTypeDescription
mimestring

メディアタイプ(例: "image/png"、"application/pdf")。

Returns:

"image" | "audio" | "video" | "pdf"、認識できない場合は undefined。

Type: 
string