2024年1月 – 2024年11月开发 · 持续运营中
深信服 IMD 内部 GenAI 技术支持助手(RAG)
为内部工程师、渠道合作伙伴与一线人员搭建并运营一套自托管的 RAG 智能助手。检索采用 Dify 的向量数据库,搭配 Cohere 重排序模型;上线前对比测试了 Ollama、vLLM、OpenAI、Gemini 与 Claude,最终选用托管模型。
项目详情
问题
产品知识库全部是中文,一线人员却使用英文。许多文档里早有答案的问题,只因为一线接触时读不懂文档,就被升级给支持工程师处理。
模型选型
我将自托管开源模型(Ollama、vLLM)与托管模型(OpenAI、Gemini、Claude)进行对比测试。本地模型在长篇技术翻译上会截断,还会残留未翻译的中文,这比没有答案更糟。我用一组受控的翻译样本验证托管方案,并沿用公司现有的商业合约,同时关闭数据用于模型训练的选项。
跨语言检索
用 Python 构建翻译与术语规范化层,在数据写入阶段执行,而不是在查询时执行。整个语料库的产品术语因此保持一致,因为术语一旦不一致,检索就会失效;每次查询也不再承担翻译延迟。
答案依据与评估
我用一组预设的标准答案反复测试不同版本的提示词。检验重点是引用是否指向正确的来源文章,而不是答案读起来是否通顺。措辞流畅但引用错误,才是真正要防的失误。上线后通过三个渠道持续把关:用户点赞与点踩、定期抽检,以及每周与支持工程师和产品专家一起复核。
知识同步
知识同步由 n8n 执行。知识库发布新文章时,webhook 触发切块、向量化与回写,新文章立即可被检索。同步成功与失败都会通过电子邮件和 MS Teams 通知,让静默失败在用户碰到之前就被发现。
数据处理
进入这条流程的是公开产品文档。含客户资料的内容走另一条去敏流程,不会进入这里。这项数据分类决定在开发前已经过审核批准。