基盤モデルの推論パラメータで発生する、検証例外をトラブルシューティングしたいです。
簡単な説明
推論パラメータにより、Amazon Bedrock が提供する大規模な言語モデルの動作を調整して、期待どおりの出力を得ることができます。InvokeModel または InvokeModelWithResponseStream API を、誤った推論パラメータや対応値を使用している基盤モデルで実行すると、検証エラーが発生します。これらのエラーは、あるモデルの推論パラメータを、同じ API パラメータのないモデルと共に使用した場合にも発生します。
解決策
Anthropic Claude 3 モデルの推論パラメータ名が誤っている
Anthropic Claude 3 モデルに top_n パラメータを含めると、検証例外エラーが発生します。このパラメータは、このモデル用の推論パラメータとして正しいものではありません。
エラー: 「検証例外: InvokeModel 操作の呼び出し時にエラーが発生しました (ValidationException):
入力リクエストの形式が正しくありません。#: サブジェクトがスキーマ {"required":["messages"]}# に対して無効です。
無関係なキー [top_n] の使用は許可されていません。入力形式を再作成してから再試行してください。」
推論パラメータが正しくないコードの例を次に示します。
# Invoke Claude 3 with the text prompt
model_id = "anthropic.claude-3-sonnet-20240229-v1:0"
try:
response = client.invoke_model(
modelId=model_id,
body=json.dumps(
{
"anthropic_version": "bedrock-2023-05-31",
"max_tokens": 1024,
"top_n": 1 ,
"messages": [
{
"role": "user",
"content": [{"type": "text", "text":<prompt>}],
}]}))
このエラーを回避するには、次の有効な推論パラメータから選択する必要があります。
- max_tokens: 停止する前に生成するトークンの最大数
- temperature: 応答に注入するランダム性の量
- top_p: モデルが生成するテキストの多様性。モデルが次のトークンに関して考慮する、最も可能性の高い候補の割合を設定します。
- top_k: モデルが次のトークンに関して考慮する、最も可能性の高い候補の数。
- stop_sequences: モデルに生成を停止させるカスタムテキストシーケンス。
- prompt: コンテキストと指示を提供するシステムプロンプト。
詳細については、Anthropic Claude Messages API を参照してください。
mistral-7b モデルの temperature 推論値が誤っている
mistral-7b モデルが temperature 推論パラメータの誤った値を受け取ると、検証例外エラーが発生します。
エラー: 「検証例外: InvokeModel 操作の呼び出し時にエラーが発生しました (ValidationException):
入力リクエストの形式が正しくありません。#/temperature: 2.0 は 1.0 以下ではありません。入力形式を再作成し、
再試行してください」
パラメータ値が正しくないコードの例を次に示します。
# Invoke minstral-7b with the text prompt
model_id = "mistral.mistral-7b-instruct-v0:2"
body = {
"prompt": <prompt>,
"max_tokens": 200,
"temperature": 2.0
}
response = client.invoke_model(modelId=model_id, body=json.dumps(body))
temperature 推論パラメーターは、モデルによる予測のランダム性を制御します。範囲は 0 ~ 1 です。temperature の値が 2.0 の場合は範囲外のため、エラーが発生します。詳細については、Mistral AI モデルを参照してください。
その他のモデル
Amazon Bedrock でのモデル用推論パラメータに関する詳細については、「基盤モデル用の推論パラメータ」を参照してください。
注: 組み込みモデルには調整可能な推論パラメーターはありません。