判断问题来源
返回错误:暂无答案
空
用户认证检查
调用 LLM 流式生成答案
结束 - 闲聊/超适应症
返回错误:问题不存在
闲聊
创建 AI 助手消息match_type=RAG
开始 - unifiedAnswer 接口
更新消息内容
获取参考文献列表
输入问题模式
问题内容是否为空?
检查模型是否开通
非空
LLM 预处理闲聊/超适应症判断
点击问题模式
有 qa_id点击问题
答案是否为空?
返回闲聊回复
创建 AI 助手消息match_type=FAQ
超适应症
创建/获取会话 ID
返回错误:模型未开通
正常
流式返回 FAQ 答案
保存用户问题消息到数据库
记录日志并完成
匹配到 FAQ?
是
返回超适应症提示
无 qa_id用户输入
结束 - FAQ 流程
从数据库获取问题内容
发送参考文献 SSE
构建知识库总结提示词
创建 AI 助手消息match_type=NONE
模型可用?
返回错误:问题不能为空
记录 RAG 检索日志
流式返回 RAG 答案
否
问题是否有效?
预处理结果
FAQ 匹配检查QaMatchService::match
结束 - RAG 流程
初始化 QA 日志服务
构建 FAQ 提示词
流式返回预处理答案
CKP 知识召回