标准回答
需求与指标
面向企业内/外部用户的问答客服,答案必须基于企业私有知识、可溯源、不可乱编。核心指标:答案忠实度与正确率、检索召回、引用准确率、首字延迟(TTFT)、转人工率与用户满意度。
整体架构
主链路是 RAG:离线侧把文档清洗、分块、Embedding 后写入向量库并建索引;在线侧对用户问题做查询改写→向量召回(可叠加 BM25 混合检索)→重排(rerank)取 Top-K→拼入 Prompt 由 LLM 生成带引用的回答。外围包裹鉴权与多租户、会话记忆、护栏、反馈与评测。
关键模块
会话记忆:保留多轮上下文并做指代消解;护栏:输入侧拦截注入与越权问题,输出侧做 PII 脱敏、敏感词与忠实度校验;引用溯源:每条结论回链到源文档片段,便于用户核实。
评估
离线用标注集跑 Context Recall、Faithfulness、Answer Relevance(可用 LLM-as-judge);在线埋点收集点赞/点踩、转人工与改写,形成数据飞轮持续优化检索与 Prompt。
上线与监控
灰度发布 + A/B 对比;监控延迟、兜底率、幻觉投诉;检索为空或低置信度时澄清或转人工,模型故障时切备用模型,保证可用性。
常见误区
⚠️ 常见踩坑
只接一个「向量检索 + 直接喂 LLM」就当成完整系统,忽略重排、引用溯源、护栏与兜底;以及把时效性知识塞进微调而非 RAG,导致更新困难且易幻觉。
追问
追问 1:如何降低这类系统的幻觉?
多管齐下:强制基于检索片段作答并要求引用来源(grounding);低置信度或检索为空时拒答/澄清;输出侧做忠实度校验(答案是否被引用支持);Prompt 中明确「无依据则说不知道」;持续用 Faithfulness 指标监控并回流 badcase。
追问 2:首字延迟(TTFT)高怎么优化?
检索侧用 ANN 索引(如 HNSW)并控制 Top-K、并行召回与重排;生成侧用流式输出先吐字、KV Cache 与 continuous batching 提升吞吐;对高频问题加语义缓存直接命中;必要时检索与生成阶段拆分、用更小模型做重排与改写。
追问 3:知识库频繁更新如何保证答案时效?
走增量摄取管道:文档变更触发重新分块与 Embedding,按文档版本号更新/删除向量,避免全量重建;为片段打时间戳并在检索时偏好最新版本;定期跑一致性校验,确保索引与源库不漂移。
延伸学习
与本题相关的知识库文章、术语、工具与行业资讯。
🛠️ AI 工具
- Recall
为 Claude Code 提供持久化记忆能力,完全离线运行,避免每次会话重复解释项目上下文。468 stars。