🐛 fix: 修复zhipu工具调用问题

This commit is contained in:
Soulter
2025-04-12 15:24:37 +08:00
parent d7d1c1544a
commit bced9ffff9
3 changed files with 6 additions and 4 deletions
@@ -21,7 +21,7 @@ class WebChatMessageEvent(AstrMessageEvent):
await web_chat_back_queue.put(
{"type": "end", "data": "", "streaming": False}
)
return
return ""
cid = session_id.split("!")[-1]
data = ""
+1 -1
View File
@@ -339,7 +339,7 @@ class FuncCall:
]
logger.info(f"已关闭 MCP 服务 {name}")
def get_func_desc_openai_style(self, omit_empty_parameter_field = True) -> list:
def get_func_desc_openai_style(self, omit_empty_parameter_field = False) -> list:
"""
获得 OpenAI API 风格的**已经激活**的工具描述
"""
@@ -87,7 +87,8 @@ class ProviderOpenAIOfficial(Provider):
async def _query(self, payloads: dict, tools: FuncCall) -> LLMResponse:
if tools:
omit_empty_param_field = "grok" not in payloads.get("model", "").lower()
model = payloads.get("model", "").lower()
omit_empty_param_field = "gemini" in model
tool_list = tools.get_func_desc_openai_style(
omit_empty_parameter_field=omit_empty_param_field
)
@@ -124,7 +125,8 @@ class ProviderOpenAIOfficial(Provider):
) -> AsyncGenerator[LLMResponse, None]:
"""流式查询API,逐步返回结果"""
if tools:
omit_empty_param_field = "grok" not in payloads.get("model", "").lower()
model = payloads.get("model", "").lower()
omit_empty_param_field = "gemini" in model
tool_list = tools.get_func_desc_openai_style(
omit_empty_parameter_field=omit_empty_param_field
)