From f60a12f8b417acb93de21bdbb6c4e8ada59a1df4 Mon Sep 17 00:00:00 2001 From: YIQI JIANG <41245681+jiangyiqi99@users.noreply.github.com> Date: Thu, 19 Dec 2024 22:32:57 +0800 Subject: [PATCH 1/2] Add o1 and o1-2024-12-17 model support (#2090) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Add o1 and o1-2024-12-17 model support * patch api key selection --------- Co-authored-by: 蒋翌琪 Co-authored-by: binary-husky --- README.md | 1 + config.py | 5 +++-- request_llms/bridge_all.py | 23 +++++++++++++++++++++++ shared_utils/key_pattern_manager.py | 2 +- 4 files changed, 28 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index a00b4da5..a6fd4a02 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ > [!IMPORTANT] > `frontier开发分支`最新动态(2024.12.9): 更新对话时间线功能,优化xelatex论文翻译 > `wiki文档`最新动态(2024.12.5): 更新ollama接入指南 +> `master主分支`最新动态(2024.12.19): 更新3.91版本,更新release页的一键安装脚本 > > 2024.10.10: 突发停电,紧急恢复了提供[whl包](https://drive.google.com/file/d/19U_hsLoMrjOlQSzYS3pzWX9fTzyusArP/view?usp=sharing)的文件服务器 > 2024.10.8: 版本3.90加入对llama-index的初步支持,版本3.80加入插件二级菜单功能(详见wiki) diff --git a/config.py b/config.py index 6353cb8a..f4f61da8 100644 --- a/config.py +++ b/config.py @@ -8,7 +8,7 @@ """ # [step 1]>> API_KEY = "sk-123456789xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx123456789"。极少数情况下,还需要填写组织(格式如org-123456789abcdefghijklmno的),请向下翻,找 API_ORG 设置项 -API_KEY = "此处填API密钥" # 可同时填写多个API-KEY,用英文逗号分割,例如API_KEY = "sk-openaikey1,sk-openaikey2,fkxxxx-api2dkey3,azure-apikey4" +API_KEY = "在此处填写APIKEY" # 可同时填写多个API-KEY,用英文逗号分割,例如API_KEY = "sk-openaikey1,sk-openaikey2,fkxxxx-api2dkey3,azure-apikey4" # [step 2]>> 改为True应用代理,如果直接在海外服务器部署,此处不修改;如果使用本地或无地域限制的大模型时,此处也不需要修改 @@ -32,7 +32,8 @@ else: # [step 3]>> 模型选择是 (注意: LLM_MODEL是默认选中的模型, 它*必须*被包含在AVAIL_LLM_MODELS列表中 ) LLM_MODEL = "gpt-3.5-turbo-16k" # 可选 ↓↓↓ -AVAIL_LLM_MODELS = ["gpt-4-1106-preview", "gpt-4-turbo-preview", "gpt-4-vision-preview", +AVAIL_LLM_MODELS = ["o1-mini", "o1-mini-2024-09-12", "o1", "o1-2024-12-17", "o1-preview", "o1-preview-2024-09-12", + "gpt-4-1106-preview", "gpt-4-turbo-preview", "gpt-4-vision-preview", "gpt-4o", "gpt-4o-mini", "gpt-4-turbo", "gpt-4-turbo-2024-04-09", "gpt-3.5-turbo-1106", "gpt-3.5-turbo-16k", "gpt-3.5-turbo", "azure-gpt-3.5", "gpt-4", "gpt-4-32k", "azure-gpt-4", "glm-4", "glm-4v", "glm-3-turbo", diff --git a/request_llms/bridge_all.py b/request_llms/bridge_all.py index 1aef7089..20d7798b 100644 --- a/request_llms/bridge_all.py +++ b/request_llms/bridge_all.py @@ -274,6 +274,7 @@ model_info = { "openai_disable_system_prompt": True, "openai_disable_stream": True, }, + "o1-mini": { "fn_with_ui": chatgpt_ui, "fn_without_ui": chatgpt_noui, @@ -285,6 +286,28 @@ model_info = { "openai_disable_stream": True, }, + "o1-2024-12-17": { + "fn_with_ui": chatgpt_ui, + "fn_without_ui": chatgpt_noui, + "endpoint": openai_endpoint, + "max_token": 200000, + "tokenizer": tokenizer_gpt4, + "token_cnt": get_token_num_gpt4, + "openai_disable_system_prompt": True, + "openai_disable_stream": True, + }, + + "o1": { + "fn_with_ui": chatgpt_ui, + "fn_without_ui": chatgpt_noui, + "endpoint": openai_endpoint, + "max_token": 200000, + "tokenizer": tokenizer_gpt4, + "token_cnt": get_token_num_gpt4, + "openai_disable_system_prompt": True, + "openai_disable_stream": True, + }, + "gpt-4-turbo": { "fn_with_ui": chatgpt_ui, "fn_without_ui": chatgpt_noui, diff --git a/shared_utils/key_pattern_manager.py b/shared_utils/key_pattern_manager.py index d0d7f6d4..e0d101d1 100644 --- a/shared_utils/key_pattern_manager.py +++ b/shared_utils/key_pattern_manager.py @@ -79,7 +79,7 @@ def select_api_key(keys, llm_model): key_list = keys.split(',') if llm_model.startswith('gpt-') or llm_model.startswith('chatgpt-') or \ - llm_model.startswith('one-api-') or llm_model.startswith('o1-'): + llm_model.startswith('one-api-') or llm_model == 'o1' or llm_model.startswith('o1-'): for k in key_list: if is_openai_api_key(k): avail_key_list.append(k) From c6cd04a407a554c304f01d951ba05db6e2ca515f Mon Sep 17 00:00:00 2001 From: binary-husky Date: Thu, 19 Dec 2024 22:39:14 +0800 Subject: [PATCH 2/2] promote the rank of DASHSCOPE_API_KEY --- config.py | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/config.py b/config.py index 6353cb8a..0ddf715d 100644 --- a/config.py +++ b/config.py @@ -7,9 +7,11 @@ Configuration reading priority: environment variable > config_private.py > config.py """ -# [step 1]>> API_KEY = "sk-123456789xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx123456789"。极少数情况下,还需要填写组织(格式如org-123456789abcdefghijklmno的),请向下翻,找 API_ORG 设置项 -API_KEY = "此处填API密钥" # 可同时填写多个API-KEY,用英文逗号分割,例如API_KEY = "sk-openaikey1,sk-openaikey2,fkxxxx-api2dkey3,azure-apikey4" +# [step 1-1]>> (接入GPT等模型) API_KEY = "sk-123456789xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx123456789"。极少数情况下,还需要填写组织(格式如org-123456789abcdefghijklmno的),请向下翻,找 API_ORG 设置项 +API_KEY = "在此处填写APIKEY" # 可同时填写多个API-KEY,用英文逗号分割,例如API_KEY = "sk-openaikey1,sk-openaikey2,fkxxxx-api2dkey3,azure-apikey4" +# [step 1-2]>> (推荐使用中文原生大模型!) 接入通义千问在线大模型,api-key获取地址 https://dashscope.console.aliyun.com/ +DASHSCOPE_API_KEY = "" # 阿里灵积云API_KEY # [step 2]>> 改为True应用代理,如果直接在海外服务器部署,此处不修改;如果使用本地或无地域限制的大模型时,此处也不需要修改 USE_PROXY = False @@ -32,7 +34,8 @@ else: # [step 3]>> 模型选择是 (注意: LLM_MODEL是默认选中的模型, 它*必须*被包含在AVAIL_LLM_MODELS列表中 ) LLM_MODEL = "gpt-3.5-turbo-16k" # 可选 ↓↓↓ -AVAIL_LLM_MODELS = ["gpt-4-1106-preview", "gpt-4-turbo-preview", "gpt-4-vision-preview", +AVAIL_LLM_MODELS = ["qwen-max", "o1-mini", "o1-mini-2024-09-12", "o1", "o1-2024-12-17", "o1-preview", "o1-preview-2024-09-12", + "gpt-4-1106-preview", "gpt-4-turbo-preview", "gpt-4-vision-preview", "gpt-4o", "gpt-4o-mini", "gpt-4-turbo", "gpt-4-turbo-2024-04-09", "gpt-3.5-turbo-1106", "gpt-3.5-turbo-16k", "gpt-3.5-turbo", "azure-gpt-3.5", "gpt-4", "gpt-4-32k", "azure-gpt-4", "glm-4", "glm-4v", "glm-3-turbo", @@ -47,7 +50,7 @@ EMBEDDING_MODEL = "text-embedding-3-small" # "glm-4-0520", "glm-4-air", "glm-4-airx", "glm-4-flash", # "qianfan", "deepseekcoder", # "spark", "sparkv2", "sparkv3", "sparkv3.5", "sparkv4", -# "qwen-turbo", "qwen-plus", "qwen-max", "qwen-local", +# "qwen-turbo", "qwen-plus", "qwen-local", # "moonshot-v1-128k", "moonshot-v1-32k", "moonshot-v1-8k", # "gpt-3.5-turbo-0613", "gpt-3.5-turbo-16k-0613", "gpt-3.5-turbo-0125", "gpt-4o-2024-05-13" # "claude-3-haiku-20240307","claude-3-sonnet-20240229","claude-3-opus-20240229", "claude-2.1", "claude-instant-1.2", @@ -133,10 +136,6 @@ MULTI_QUERY_LLM_MODELS = "gpt-3.5-turbo&chatglm3" QWEN_LOCAL_MODEL_SELECTION = "Qwen/Qwen-1_8B-Chat-Int8" -# 接入通义千问在线大模型 https://dashscope.console.aliyun.com/ -DASHSCOPE_API_KEY = "" # 阿里灵积云API_KEY - - # 百度千帆(LLM_MODEL="qianfan") BAIDU_CLOUD_API_KEY = '' BAIDU_CLOUD_SECRET_KEY = ''