Bedrock Runtime: InvokeModel, https response error StatusCode: 400, RequestID: 4...
错误信息
InvokeModel: operation error Bedrock Runtime: InvokeModel, https response error StatusCode: 400, RequestID: 4df49d0e-c154-4566-b948-ff0add93fd0f, ValidationException: data retention mode 'default' is not available for this model
AI 解决方案
🔍 错误分析
1. 🌐 错误翻译
原文:InvokeModel: operation error Bedrock Runtime: InvokeModel, https response error StatusCode: 400, RequestID: 4df49d0e-c154-4566-b948-ff0add93fd0f, ValidationException: data retention mode 'default' is not available for this model
译文:InvokeModel:操作错误 Bedrock 运行时:InvokeModel,HTTP响应错误状态码:400,请求ID:4df49d0e-c154-4566-b948-ff0add93fd0f,验证异常:数据保留模式'default'对此模型不可用
2. 🎯 原因分析
3. 💡 解决方案
需要检查并修改调用Bedrock模型时的数据保留模式参数,使用该模型支持的合法模式。以下是Python boto3调用的修复示例:
import boto3
bedrock = boto3.client(service_name='bedrock-runtime')
# 修复前 - 错误使用'default'模式
# response = bedrock.invoke_model(
# modelId='amazon.titan-text-express-v1',
# body='{"inputText":"test"}',
# contentType='application/json',
# accept='application/json',
# inferenceConfig={'dataRetentionMode': 'default'} # 错误的参数
# )
# 修复后 - 移除不支持的dataRetentionMode或使用模型支持的模式
response = bedrock.invoke_model(
modelId='amazon.titan-text-express-v1',
body='{"inputText":"test"}',
contentType='application/json',
accept='application/json'
# 移除不支持的inferenceConfig参数
)
或者如果模型支持其他模式,替换为支持的模式:
# 假设模型支持'off'或'custom'模式(需查看模型文档确认)
response = bedrock.invoke_model(
modelId='模型ID',
body='{"inputText":"test"}',
contentType='application/json',
accept='application/json',
inferenceConfig={'dataRetentionMode': 'off'} # 使用模型支持的模式
)