12.19 修复豆包模型使用的bug

This commit is contained in:
zy123 2024-12-19 12:25:29 +08:00
parent f0ed0efc6d
commit 0da44d31a1

View File

@ -193,23 +193,30 @@ def doubao_model(full_user_query):
doubao_api_key = os.getenv("DOUBAO_API_KEY")
# 定义主模型和备用模型
models = [
"ep-20241119121710-425g6", # 豆包Pro 32k模型
"ep-20241119121743-xt6wg" # 128k模型
]
models = {
"pro_32k": "ep-20241119121710-425g6", # 豆包Pro 32k模型
"pro_128k": "ep-20241119121743-xt6wg" # 128k模型
}
# 判断用户查询字符串的长度
if len(full_user_query) > 32000:
selected_model = models["pro_128k"] # 如果长度超过32k直接使用128k模型
else:
selected_model = models["pro_32k"] # 默认使用32k模型
# 请求头
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer " + doubao_api_key
}
max_retries = 1 # 最大重试次数
attempt = 0
while attempt <= max_retries and attempt < len(models):
# 设置当前使用的模型
model_name = models[attempt]
while attempt <= max_retries:
# 请求数据
data = {
"model": model_name,
"model": selected_model,
"messages": [
{
"role": "user",
@ -225,11 +232,12 @@ def doubao_model(full_user_query):
return response.json()["choices"][0]["message"]["content"]
except requests.exceptions.RequestException as e:
attempt += 1
if attempt > max_retries or attempt >= len(models):
if attempt > max_retries:
print(f"请求失败,尝试了 {attempt} 次。错误信息:{e}")
return None # 或者根据需要返回其他默认值
else:
print(f"请求出错:{e}。正在尝试第 {attempt} 次重试,使用备用模型...")
print(f"请求出错:{e}。正在尝试第 {attempt} 次重试,继续使用模型 {selected_model}...")
def generate_full_user_query(file_path, prompt_template):
"""