Update openai_ondemand_adapter.py
Browse files- openai_ondemand_adapter.py +16 -12
openai_ondemand_adapter.py
CHANGED
|
@@ -51,16 +51,18 @@ BAD_KEY_RETRY_INTERVAL = 600 # 标记为坏的KEY的重试间隔(秒),例
|
|
| 51 |
MODEL_MAP = {
|
| 52 |
"o3-mini": "predefined-openai-gpto3-mini",
|
| 53 |
"gpt-4o": "predefined-openai-gpt4o",
|
| 54 |
-
"gpt-
|
| 55 |
-
"gpt-4
|
| 56 |
-
"
|
| 57 |
-
"
|
| 58 |
-
"
|
| 59 |
-
"
|
| 60 |
-
"
|
| 61 |
-
|
|
|
|
|
|
|
| 62 |
}
|
| 63 |
-
DEFAULT_ONDEMAND_MODEL = "predefined-openai-gpt4o"
|
| 64 |
# ==========================================
|
| 65 |
|
| 66 |
class KeyManager:
|
|
@@ -205,12 +207,14 @@ def chat_completions():
|
|
| 205 |
content = msg.get("content", "").strip()
|
| 206 |
if not content: # 跳过空内容的消息
|
| 207 |
continue
|
| 208 |
-
formatted_query_parts.append(f"{role}
|
| 209 |
|
| 210 |
if not formatted_query_parts:
|
| 211 |
return jsonify({"error": "No valid content found in 'messages'."}), 400
|
| 212 |
-
|
| 213 |
-
|
|
|
|
|
|
|
| 214 |
# --- 结束构造 query ---
|
| 215 |
|
| 216 |
# 内部函数,用于封装实际的API调用逻辑,方便重试和密钥管理
|
|
|
|
| 51 |
MODEL_MAP = {
|
| 52 |
"o3-mini": "predefined-openai-gpto3-mini",
|
| 53 |
"gpt-4o": "predefined-openai-gpt4o",
|
| 54 |
+
"gpt-4o-mini": "predefined-openai-gpt4o-mini", # 修正:之前可能是gpt-4.1-mini,根据实际情况调整
|
| 55 |
+
"gpt-4-turbo": "predefined-openai-gpt4-turbo", # 示例新增
|
| 56 |
+
"claude-3-opus": "predefined-anthropic-claude-3-opus", # 示例新增
|
| 57 |
+
"claude-3-sonnet": "predefined-anthropic-claude-3-sonnet", # 修正:之前可能是claude-3-7-sonnet
|
| 58 |
+
"claude-3-haiku": "predefined-anthropic-claude-3-haiku", # 示例新增
|
| 59 |
+
"gemini-1.5-pro": "predefined-google-gemini-1.5-pro", # 示例新增
|
| 60 |
+
"gemini-1.5-flash": "predefined-google-gemini-1.5-flash", # 修正:之前可能是gemini-2.0-flash
|
| 61 |
+
# 根据 OnDemand 支持的模型列表进行补充和调整
|
| 62 |
+
"deepseek-v3": "predefined-deepseek-v3", # 假设存在
|
| 63 |
+
"deepseek-r1": "predefined-deepseek-r1", # 假设存在
|
| 64 |
}
|
| 65 |
+
DEFAULT_ONDEMAND_MODEL = "predefined-openai-gpt4o" # 如果用户未指定模型或模型未在MAP中,则使用此默认值
|
| 66 |
# ==========================================
|
| 67 |
|
| 68 |
class KeyManager:
|
|
|
|
| 207 |
content = msg.get("content", "").strip()
|
| 208 |
if not content: # 跳过空内容的消息
|
| 209 |
continue
|
| 210 |
+
formatted_query_parts.append(f"<|{role}|>: {content}")
|
| 211 |
|
| 212 |
if not formatted_query_parts:
|
| 213 |
return jsonify({"error": "No valid content found in 'messages'."}), 400
|
| 214 |
+
|
| 215 |
+
start_prompt = "Below is the chat history. You should follow instructions and respond.\n"
|
| 216 |
+
final_query_to_ondemand = start_prompt + "\n".join(formatted_query_parts)
|
| 217 |
+
|
| 218 |
# --- 结束构造 query ---
|
| 219 |
|
| 220 |
# 内部函数,用于封装实际的API调用逻辑,方便重试和密钥管理
|