From f1e888f3def146f20bdc956c74b95c40164dd057 Mon Sep 17 00:00:00 2001 From: JasonOA888 Date: Tue, 10 Mar 2026 00:33:45 +0800 Subject: [PATCH] fix: use openai_compat layer for error handling The code was directly importing openai.error which fails with openai>=1.0. The project already has an openai_compat.py compatibility layer that handles both old (<1.0) and new (>=1.0) OpenAI SDK versions. This commit updates chat_gpt_bot.py to use the compatibility layer. Related: #2687 --- 0 | 0 models/chatgpt/chat_gpt_bot.py | 4 ++-- 2 files changed, 2 insertions(+), 2 deletions(-) create mode 100644 0 diff --git a/0 b/0 new file mode 100644 index 0000000..e69de29 diff --git a/models/chatgpt/chat_gpt_bot.py b/models/chatgpt/chat_gpt_bot.py index 96099bd..df39eac 100644 --- a/models/chatgpt/chat_gpt_bot.py +++ b/models/chatgpt/chat_gpt_bot.py @@ -4,7 +4,7 @@ import time import json import openai -import openai.error +from models.openai.openai_compat import error as openai_error, RateLimitError, Timeout, APIError, APIConnectionError import requests from common import const from models.bot import Bot @@ -229,7 +229,7 @@ class ChatGPTBot(Bot, OpenAIImage, OpenAICompatibleBot): """ try: if conf().get("rate_limit_chatgpt") and not self.tb4chatgpt.get_token(): - raise openai.error.RateLimitError("RateLimitError: rate limit exceeded") + raise RateLimitError("RateLimitError: rate limit exceeded") # if api_key == None, the default openai.api_key will be used if args is None: args = self.args