diff --git a/README.md b/README.md index e3d090c..065b939 100644 --- a/README.md +++ b/README.md @@ -32,9 +32,9 @@ > - [x] 免登录 GPT-3.5 对话 > - [x] GPT-3.5 模型对话(传入模型名不包含 gpt-4,则默认使用 gpt-3.5,也就是 text-davinci-002-render-sha) > - [x] GPT-4 系列模型对话(传入模型名包含: gpt-4,gpt-4o,gpt-4o-mini,gpt-4-moblie 即可使用对应模型,需传入 AccessToken) -> - [x] O1 系列模型对话(传入模型名包含 o1-preview,o1-mini 即可使用对应模型,需传入 AccessToken) +> - [x] O1/O3/O4 系列模型对话(传入模型名包含 o3,o4-mini等 即可使用对应模型,需传入 AccessToken) > - [x] GPT-4 模型画图、代码、联网 -> - [x] 支持 GPTs(传入模型名:gpt-4-gizmo-g-*) +> - [x] 支持 GPTs(传入模型名:gpt-4-gizmo-g-*,前面模型可改,Team工作区项目需要使用这个) > - [x] 支持 Team Plus 账号(需传入 team account id) > - [x] 上传图片、文件(格式为 API 对应格式,支持 URL 和 base64) > - [x] 可作为网关使用,可多机分布部署 @@ -92,6 +92,13 @@ curl --location 'http://127.0.0.1:5005/v1/chat/completions' \ > - `AccessToken` 获取: chatgpt官网登录后,再打开 [https://chatgpt.com/api/auth/session](https://chatgpt.com/api/auth/session) 获取 `accessToken` 这个值。 > - `RefreshToken` 获取: 此处不提供获取方法。 +> - `ChatGPT-Account-ID` 获取: +> - 方法①,访问 使用F12找到请求 ,这个ID就是。 +> - 方法②,还是上一步的地方读取响应中的`account_user_id`,后面的那个UUID。 +> - 方法③,访问 找到 account 下面的 id(不是 organizationId),或者在网页发起工作区对话请求时F12请求头就有这个。 +> - `gizmo` ID 获取: +> - 方法①,打开项目包,URL中的g-p开头,去掉后面的项目名称英文版的部分就是。 +> - 方法②,在工作区项目进行对话,在请求体中找到 `gizmo_id`。 > - 免登录 gpt-3.5 无需传入 Token。 ## Tokens 管理 diff --git a/api/models.py b/api/models.py index 56665f0..bbc6250 100644 --- a/api/models.py +++ b/api/models.py @@ -8,11 +8,14 @@ "gpt-4-turbo": "gpt-4-turbo-2024-04-09", "gpt-4o": "gpt-4o-2024-08-06", "gpt-4o-mini": "gpt-4o-mini-2024-07-18", + "gpt-4-5": "gpt-4-5", "o1-preview": "o1-preview-2024-09-12", "o1-mini": "o1-mini-2024-09-12", "o1": "o1-2024-12-18", "o3-mini": "o3-mini-2025-01-31", "o3-mini-high": "o3-mini-high-2025-01-31", + "o4-mini": "o4-mini-2025-04-16", + "o4-mini-high": "o4-mini-high-2025-04-16", "claude-3-opus": "claude-3-opus-20240229", "claude-3-sonnet": "claude-3-sonnet-20240229", "claude-3-haiku": "claude-3-haiku-20240307", diff --git a/chatgpt/ChatService.py b/chatgpt/ChatService.py index a75a71c..96f0f6f 100644 --- a/chatgpt/ChatService.py +++ b/chatgpt/ChatService.py @@ -143,7 +143,15 @@ async def set_model(self): else: self.gizmo_id = None - if "o3-mini-high" in self.origin_model: + if "o4-mini-high" in self.origin_model: + self.req_model = "o4-mini-high" + elif "o4-mini-medium" in self.origin_model: + self.req_model = "o4-mini-medium" + elif "o4-mini-low" in self.origin_model: + self.req_model = "o4-mini-low" + elif "o4-mini" in self.origin_model: + self.req_model = "o4-mini" + elif "o3-mini-high" in self.origin_model: self.req_model = "o3-mini-high" elif "o3-mini-medium" in self.origin_model: self.req_model = "o3-mini-medium" @@ -163,6 +171,8 @@ async def set_model(self): self.req_model = "o1" elif "gpt-4.5o" in self.origin_model: self.req_model = "gpt-4.5o" + elif "gpt-4-5" in self.origin_model: + self.req_model = "gpt-4-5" elif "gpt-4o-canmore" in self.origin_model: self.req_model = "gpt-4o-canmore" elif "gpt-4o-mini" in self.origin_model: