❌ **AI 请求失败** API request failed: 400 * GenerateContentRequest.tools[0].function...
错误信息
❌ **AI 请求失败**
API request failed: 400
* GenerateContentRequest.tools[0].function_declarations[10].parameters.properties[config].properties[dateFormat].enum[0]: cannot be empty
* GenerateContentRequest.tools[0].function_declarations[10].parameters.properties[config].properties[rollup].properties[operator].enum[0]: cannot be empty
* GenerateContentRequest.tools[0].function_declarations[10].parameters.properties[config].properties[numberFormat].enum[0]: cannot be empty
(request id: 20260929143404183952636qkWu65oK)
AI 解决方案
原文:GenerateContentRequest.tools[0].function_declarations[10].parameters.properties[config].properties[dateFormat].enum[0]: cannot be empty
译文:GenerateContentRequest.tools[0].function_declarations[10].parameters.properties[config].properties[dateFormat].enum[0]:不能为空
💡 原因分析:
API请求中定义的函数参数config对象的dateFormat、rollup.operator、numberFormat字段的enum数组首元素为空,不符合枚举类型至少需包含一个有效值的要求。
// 修复后的代码
tools: [{
function_declarations: [
// ...其他函数定义
{
name: "yourFunctionName",
parameters: {
type: "object",
properties: {
config: {
type: "object",
properties: {
dateFormat: {
type: "string",
enum: ["YYYY-MM-DD"] // 确保枚举值不为空
},
rollup: {
type: "object",
properties: {
operator: {
type: "string",
enum: ["sum"] // 确保枚举值不为空
}
}
},
numberFormat: {
type: "string",
enum: ["0.00"] // 确保枚举值不为空
}
}
}
}
}
}
]
}]
🛡️ 预防措施:
enum时,确保每个枚举数组至少包含一个非空字符串。