From 80ffa7a577d476f3ad8adfb467e4253c3fc55b01 Mon Sep 17 00:00:00 2001 From: hrz <1710360675@qq.com> Date: Thu, 20 Mar 2025 08:57:39 +0800 Subject: [PATCH] =?UTF-8?q?updtge:=E4=BC=98=E5=8C=96=E8=B6=85=E5=8F=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/providers/llm/gemini/gemini.py | 1 - .../core/providers/llm/openai/openai.py | 29 +++++++------------ 2 files changed, 10 insertions(+), 20 deletions(-) diff --git a/main/xiaozhi-server/core/providers/llm/gemini/gemini.py b/main/xiaozhi-server/core/providers/llm/gemini/gemini.py index 298bf71e..93c7dcb5 100644 --- a/main/xiaozhi-server/core/providers/llm/gemini/gemini.py +++ b/main/xiaozhi-server/core/providers/llm/gemini/gemini.py @@ -87,7 +87,6 @@ class LLMProvider(LLMProviderBase): # 发送POST请求,经测试手动 request 无法使用 stream 模式 if self.proxies: - logger.bind(tag=TAG).info(f"Gemini response mode ") response = requests.post(url, headers=headers, json=request_body, stream=False, proxies=self.proxies) try: data = response.json() # 直接解析JSON diff --git a/main/xiaozhi-server/core/providers/llm/openai/openai.py b/main/xiaozhi-server/core/providers/llm/openai/openai.py index d4e21d5f..b1a9a24e 100644 --- a/main/xiaozhi-server/core/providers/llm/openai/openai.py +++ b/main/xiaozhi-server/core/providers/llm/openai/openai.py @@ -1,7 +1,11 @@ import openai +from config.logger import setup_logging from core.utils.util import check_model_key from core.providers.llm.base import LLMProviderBase +TAG = __name__ +logger = setup_logging() + class LLMProvider(LLMProviderBase): def __init__(self, config): @@ -11,12 +15,8 @@ class LLMProvider(LLMProviderBase): self.base_url = config.get("base_url") else: self.base_url = config.get("url") - self.top_p = config.get("top_p") - self.top_k = config.get("top_k") - self.temperature = config.get("temperature") - self.max_tokens = config.get("max_tokens") - self.frequency_penalty = config.get("frequency_penalty") - + self.max_tokens = config.get("max_tokens", 500) + check_model_key("LLM", self.api_key) self.client = openai.OpenAI(api_key=self.api_key, base_url=self.base_url) @@ -26,13 +26,9 @@ class LLMProvider(LLMProviderBase): model=self.model_name, messages=dialogue, stream=True, - temperature=self.temperature, max_tokens=self.max_tokens, - top_p=self.top_p, - top_k=self.top_k, - frequency_penalty=self.frequency_penalty ) - + is_active = True for chunk in responses: try: @@ -61,17 +57,12 @@ class LLMProvider(LLMProviderBase): model=self.model_name, messages=dialogue, stream=True, - tools=functions, - temperature=self.temperature, - max_tokens=self.max_tokens, - top_p=self.top_p, - top_k=self.top_k, - frequency_penalty=self.frequency_penalty + tools=functions ) - + for chunk in stream: yield chunk.choices[0].delta.content, chunk.choices[0].delta.tool_calls - + except Exception as e: self.logger.bind(tag=TAG).error(f"Error in function call streaming: {e}") yield {"type": "content", "content": f"【OpenAI服务响应异常: {e}】"}