添加tools和toolConfig传递支持

This commit is contained in:
曾庆雷
2025-11-12 21:31:34 +08:00
parent 008c7a2b03
commit e130405809

View File

@@ -144,7 +144,8 @@ async function handleStandardGenerateContent(req, res) {
const sessionHash = sessionHelper.generateSessionHash(req.body)
// 标准 Gemini API 请求体直接包含 contents 等字段
const { contents, generationConfig, safetySettings, systemInstruction } = req.body
const { contents, generationConfig, safetySettings, systemInstruction, tools, toolConfig } =
req.body
// 验证必需参数
if (!contents || !Array.isArray(contents) || contents.length === 0) {
@@ -172,6 +173,15 @@ async function handleStandardGenerateContent(req, res) {
actualRequestData.safetySettings = safetySettings
}
// 添加工具配置tools 和 toolConfig
if (tools) {
actualRequestData.tools = tools
}
if (toolConfig) {
actualRequestData.toolConfig = toolConfig
}
// 如果有 system instruction修正格式并添加到请求体
// Gemini CLI 的内部 API 需要 role: "user" 字段
if (systemInstruction) {
@@ -335,7 +345,8 @@ async function handleStandardStreamGenerateContent(req, res) {
const sessionHash = sessionHelper.generateSessionHash(req.body)
// 标准 Gemini API 请求体直接包含 contents 等字段
const { contents, generationConfig, safetySettings, systemInstruction } = req.body
const { contents, generationConfig, safetySettings, systemInstruction, tools, toolConfig } =
req.body
// 验证必需参数
if (!contents || !Array.isArray(contents) || contents.length === 0) {
@@ -363,6 +374,15 @@ async function handleStandardStreamGenerateContent(req, res) {
actualRequestData.safetySettings = safetySettings
}
// 添加工具配置tools 和 toolConfig
if (tools) {
actualRequestData.tools = tools
}
if (toolConfig) {
actualRequestData.toolConfig = toolConfig
}
// 如果有 system instruction修正格式并添加到请求体
// Gemini CLI 的内部 API 需要 role: "user" 字段
if (systemInstruction) {