From bced9ffff94970f1166443385d5d454afcd4cd7a Mon Sep 17 00:00:00 2001 From: Soulter <905617992@qq.com> Date: Sat, 12 Apr 2025 15:24:37 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix:=20=E4=BF=AE=E5=A4=8Dzhipu?= =?UTF-8?q?=E5=B7=A5=E5=85=B7=E8=B0=83=E7=94=A8=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- astrbot/core/platform/sources/webchat/webchat_event.py | 2 +- astrbot/core/provider/func_tool_manager.py | 2 +- astrbot/core/provider/sources/openai_source.py | 6 ++++-- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/astrbot/core/platform/sources/webchat/webchat_event.py b/astrbot/core/platform/sources/webchat/webchat_event.py index ef5532920..30a6322a5 100644 --- a/astrbot/core/platform/sources/webchat/webchat_event.py +++ b/astrbot/core/platform/sources/webchat/webchat_event.py @@ -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 = "" diff --git a/astrbot/core/provider/func_tool_manager.py b/astrbot/core/provider/func_tool_manager.py index 72180759a..325f89199 100644 --- a/astrbot/core/provider/func_tool_manager.py +++ b/astrbot/core/provider/func_tool_manager.py @@ -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 风格的**已经激活**的工具描述 """ diff --git a/astrbot/core/provider/sources/openai_source.py b/astrbot/core/provider/sources/openai_source.py index 703572b87..110d0d435 100644 --- a/astrbot/core/provider/sources/openai_source.py +++ b/astrbot/core/provider/sources/openai_source.py @@ -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 )