From 5ec18811d927e5acfc0d5d2d976c8abc799e869b Mon Sep 17 00:00:00 2001 From: ouyangyouzhang Date: Thu, 28 Aug 2025 17:36:28 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=A0=E9=99=A4=E9=87=8D=E8=AF=95=E7=AD=96?= =?UTF-8?q?=E7=95=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- rag2_0/tool/ModelTool.py | 51 ++++++++++------------------------------ 1 file changed, 13 insertions(+), 38 deletions(-) diff --git a/rag2_0/tool/ModelTool.py b/rag2_0/tool/ModelTool.py index be9daad..7973268 100755 --- a/rag2_0/tool/ModelTool.py +++ b/rag2_0/tool/ModelTool.py @@ -167,11 +167,9 @@ class OpenAiLLM: self._kwargs = kwargs - def invoke(self, user_prompt="你是谁?", need_retry=True, api_key:str = None, **extra_kwargs): + def invoke(self, user_prompt="你是谁?", api_key:str = None, **extra_kwargs): # 初始化 OpenAI 客户端 - max_retries = 3 - retry_count = 0 # 合并额外的kwargs与self._kwargs kwargs = {**self._kwargs} if extra_kwargs: @@ -183,44 +181,21 @@ class OpenAiLLM: if api_key is None: api_key = APIKeyManager.get_api_key() - if need_retry: - while retry_count < max_retries: - try: - - # 使用with语句创建客户端,确保资源会被正确释放 - with OpenAI(api_key=api_key, base_url=self._url) as client: - # 创建 Completion 请求. 超时120s - completion = client.chat.completions.create( - model=self._model, - messages=[{'role': 'user', 'content': user_prompt}], - **self._kwargs - ) - return completion.choices[0].message - - except Exception as e: - retry_count += 1 - if retry_count == max_retries: - raise RuntimeError(f"OpenAiLLM:invoke:error:{str(e)}") from e - else: - time.sleep(5*retry_count) # 重试前等待5秒*重试次数 - else: - try: - # 创建 Completion 请求. 超时120s - # 使用with语句创建客户端,确保资源会被正确释放 - with OpenAI(api_key=api_key, base_url=self._url) as client: - completion = client.chat.completions.create( - model=self._model, - messages=[{'role': 'user', 'content': user_prompt}], - **self._kwargs - ) - return completion.choices[0].message - except Exception as e: - raise RuntimeError(f"OpenAiLLM:invoke:error:{str(e)}") from e + try: + # 创建 Completion 请求. 超时120s + # 使用with语句创建客户端,确保资源会被正确释放 + with OpenAI(api_key=api_key, base_url=self._url) as client: + completion = client.chat.completions.create( + model=self._model, + messages=[{'role': 'user', 'content': user_prompt}], + **self._kwargs + ) + return completion.choices[0].message + except Exception as e: + raise RuntimeError(f"OpenAiLLM:invoke:error:{str(e)}") from e async def ainvoke(self, user_prompt="你是谁?", **extra_kwargs): """异步调用OpenAI API""" - max_retries = 3 - retry_count = 0 # 合并额外的kwargs与self._kwargs kwargs = {**self._kwargs}