fix: 优化markdown解析器

This commit is contained in:
imeepos 2025-07-22 18:25:21 +08:00
parent 26518569f4
commit e70bf2b6c0
1 changed files with 15 additions and 14 deletions

View File

@ -1117,19 +1117,7 @@ impl GeminiService {
conversation_context.total_messages = history_messages.len() as u32;
conversation_context.history_included = true;
// 添加系统提示(如果有)
let system_prompt = if let Some(system_prompt) = &request.system_prompt {
system_prompt.clone()
} else if let Some(default_prompt) = &rag_config.system_prompt {
default_prompt.clone()
} else {
return Err(anyhow::anyhow!("系统提示词不能为空,请在请求中提供 system_prompt 或在配置中设置默认 system_prompt"));
};
contents.push(ContentPart {
role: "system".to_string(),
parts: vec![Part::Text { text: system_prompt }],
});
// 系统提示将在请求数据中通过 systemInstruction 字段处理
// 添加历史消息
for msg in &history_messages {
@ -1296,6 +1284,13 @@ impl GeminiService {
max_output_tokens: rag_config.max_output_tokens,
};
// 获取系统提示
let system_prompt = if let Some(system_prompt) = &request.system_prompt {
Some(system_prompt.clone())
} else {
rag_config.system_prompt.clone()
};
// 准备请求数据
let request_data = serde_json::json!({
"contents": contents,
@ -1306,7 +1301,13 @@ impl GeminiService {
"mode": "ANY",
"allowedFunctionNames": ["retrieval"]
}
}
},
"systemInstruction": system_prompt.map(|prompt| {
serde_json::json!({
"role": "system",
"parts": [{"text": prompt}]
})
})
});
// 发送请求到Cloudflare Gateway (使用beta API)