Skip to content

Commit

Permalink
支持最新的gpt-4-o模型
Browse files Browse the repository at this point in the history
  • Loading branch information
Yanyutin753 committed May 14, 2024
1 parent 8a9932b commit 10782fb
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 5 deletions.
1 change: 1 addition & 0 deletions data/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
"gpt_4_s_new_name": "gpt-4-s",
"gpt_4_mobile_new_name": "gpt-4-mobile,dall-e-3",
"gpt_3_5_new_name": "gpt-3.5-turbo",
"gpt_4_o_new_name": "gpt-4-o",
"need_delete_conversation_after_response": "true",
"use_oaiusercontent_url": "false",
"custom_arkose_url": "false",
Expand Down
37 changes: 32 additions & 5 deletions main.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ def load_config(file_path):
GPT_4_S_New_Names = CONFIG.get('gpt_4_s_new_name', 'gpt-4-s').split(',')
GPT_4_MOBILE_NEW_NAMES = CONFIG.get('gpt_4_mobile_new_name', 'gpt-4-mobile').split(',')
GPT_3_5_NEW_NAMES = CONFIG.get('gpt_3_5_new_name', 'gpt-3.5-turbo').split(',')
GPT_4_O_NEW_NAMES = CONFIG.get('gpt_4_o_new_name', 'gpt-4-o').split(',')

BOT_MODE = CONFIG.get('bot_mode', {})
BOT_MODE_ENABLED = BOT_MODE.get('enabled', 'false').lower() == 'true'
Expand Down Expand Up @@ -335,9 +336,9 @@ def generate_gpts_payload(model, messages):
# PANDORA_UPLOAD_URL = 'files.pandoranext.com'


VERSION = '0.7.9.1'
VERSION = '0.7.9.2'
# VERSION = 'test'
UPDATE_INFO = '适配调用team对话,提供查询ChatGPT-Account-ID的/getAccountID接口'
UPDATE_INFO = '支持最新的gpt-4-o模型'
# UPDATE_INFO = '【仅供临时测试使用】 '

with app.app_context():
Expand Down Expand Up @@ -448,7 +449,11 @@ def generate_gpts_payload(model, messages):
"name": name.strip(),
"ori_name": "gpt-3.5-turbo"
})

for name in GPT_4_O_NEW_NAMES:
gpts_configurations.append({
"name": name.strip(),
"ori_name": "gpt-4-o"
})
logger.info(f"GPTS 配置信息")

# 加载配置并添加到全局列表
Expand Down Expand Up @@ -719,7 +724,7 @@ def send_text_prompt_and_get_response(messages, api_key, account_id, stream, mod
message_id = str(uuid.uuid4())
content = message.get("content")

if isinstance(content, list) and ori_model_name != 'gpt-3.5-turbo':
if isinstance(content, list) and ori_model_name not in ['gpt-3.5-turbo', 'gpt-4-o']:
logger.debug(f"gpt-vision 调用")
new_parts = []
attachments = []
Expand Down Expand Up @@ -879,6 +884,28 @@ def send_text_prompt_and_get_response(messages, api_key, account_id, stream, mod
"force_paragen": False,
"force_rate_limit": False
}
elif ori_model_name == 'gpt-4-o':
payload = {
# 构建 payload
"action": "next",
"messages": formatted_messages,
"parent_message_id": str(uuid.uuid4()),
"model": "auto",
"timezone_offset_min": -480,
"suggestions": [
"What are 5 creative things I could do with my kids' art? I don't want to throw them away, but it's also so much clutter.",
"I want to cheer up my friend who's having a rough day. Can you suggest a couple short and sweet text messages to go with a kitten gif?",
"Come up with 5 concepts for a retro-style arcade game.",
"I have a photoshoot tomorrow. Can you recommend me some colors and outfit options that will look good on camera?"
],
"history_and_training_disabled": False,
"arkose_token": None,
"conversation_mode": {
"kind": "primary_assistant"
},
"force_paragen": False,
"force_rate_limit": False
}
elif 'gpt-4-gizmo-' in model:
payload = generate_gpts_payload(model, formatted_messages)
if not payload:
Expand Down Expand Up @@ -913,7 +940,7 @@ def send_text_prompt_and_get_response(messages, api_key, account_id, stream, mod
if NEED_DELETE_CONVERSATION_AFTER_RESPONSE:
logger.debug(f"是否保留会话: {NEED_DELETE_CONVERSATION_AFTER_RESPONSE == False}")
payload['history_and_training_disabled'] = True
if ori_model_name != 'gpt-3.5-turbo':
if ori_model_name not in ['gpt-3.5-turbo', 'gpt-4-o']:
if CUSTOM_ARKOSE:
token = get_token()
payload["arkose_token"] = token
Expand Down

0 comments on commit 10782fb

Please sign in to comment.