400 {"error":{"type":"<nil>","message":"{\"type\":\"error\",\"error\":{\"type\":...
错误信息
API Error: 400 {"error":{"type":"<nil>","message":"{\"type\":\"error\",\"error\":{\"type\":\"invalid_request_error\",\"message\":\"***.***.content.0: Invalid `signature` in `thinking`
block\"},\"request_id\":\"req_011Ca4jdx1NSB8fKF4q4d3LT\"}(traceid: b36191a07165a61859631fbe82a07e0f) (request id: 20260415100316151739815q8HLta8P)"},"type":"error"}
AI 解决方案
报错分析报告
1.错误翻译
原文:***.***.content.0: Invalid `signature` in `thinking` block
译文:***.***.内容.0:`thinking`块中的`signature`无效
2.原因分析
thinking块的signature字段值不符合API验证规则(格式/生成逻辑错误)。 ..content.0项的thinking块内,signature参数无效。3.解决方案
import hmac
import hashlib
import base64
def generate_valid_signature(content: str, secret_key: str) -> str:
"""按API要求生成有效signature(示例为HMAC-SHA256+Base64)"""
message = content.encode("utf-8")
secret = secret_key.encode("utf-8")
signature = hmac.new(secret, message, hashlib.sha256).digest()
return base64.b64encode(signature).decode("utf-8")
# 修复后的thinking块构造示例
secret_key = "YOUR_CORRECT_SECRET_KEY" # 替换为平台分配的合法密钥
thinking_content = "你的思考内容文本"
valid_signature = generate_valid_signature(thinking_content, secret_key)
fixed_thinking_block = {
"type": "thinking",
"content": thinking_content,
"signature": valid_signature # 使用正确生成的签名
}
4. 预防措施
signature,确保与预期一致。 -推荐工具:[OpenAPI Validator](https://github.com/kogosoftwarellc/openapi-generator)(校验请求体格式)、[HMAC Generator](https://www.freeformatter.com/hmac-generator.html)(在线验证签名)。
---
YOUR_CORRECT_SECRET_KEY为DMXAPI平台分配的真实密钥,确保签名算法与文档完全一致。