使用 Dify 快速搭建企业内部知识助手
今天我们来试一下如何用 Dify 快速搭建一个企业内部知识助手,还可以直接把助手接入企业 IM,实现企业内部智能机器人。
我们就以简单的企业工作、假勤、报销等行政规定入手,这方面的信息、流程、规定大多数员工记不住,每次都得重新查找记录或询问相关人员,不单止效率低,过多的重复咨询还容易带来负面情绪。
注:本次助手搭建基于 Dify 官方网站,独立部署我们后面再聊。
Dify 是什么
Dify 是一个开源的 LLM 应用开发平台。提供从 Agent 构建到 AI workflow 编排、RAG 检索、模型管理等能力,轻松构建和运营生成式 AI 原生应用。
企业知识库
整理资料
第一步,将企业内部的资料整理成文档,Dify知识库支持多种格式文档。
已支持 TXT、 MARKDOWN、 PDF、 HTML、 XLSX、 XLS、 DOCX、 CSV、 EML、 MSG、 PPTX、 PPT、 XML、 EPUB,每个文件不超过 15MB。
若是问题-回答类文档,最好是整理成 Q&A 的形式,效果更佳。例如:
Q:如何提交报销?
A:在飞书上提交报销申请,填入金额、事项、补充说明等,并附上发票等必要信息。
创建 Dify 知识库
第二步,打开 Dify 知识库页面,创建知识库并上传资料文档。
文件上传后,进入 “文本分段与清洗” 步骤。
在页面右侧可以预览文本分段情况。
具体分段设置我们先简单介绍:
-
分段设置:
- 自动分段与清洗:可自动完成分段,若文档没有统一的分段分割信息,或对文档不是那么熟悉,可以选择自动分段。
-
自定义:若对文档比较熟悉,且对分段有较高要求,对于文本处理较熟悉可以选择自定义分段。
-
索引方式:
-
高质量:由第三方供应商 Embedding 模型完成,例如 OpenAI 的 text embedding 模型,有更高的准确度,需要消耗 token 。模型可在个人设置里配置。
-
经济:离线向量引擎,准确度较低但无需消耗token。
-
-
检索设置:我们先按照默认的即可,后续会详细讲一下检索设置,包括混合检索、Rerank等概念。
完成设置后保存即可完成文档处理。
后续有文档更新,随时可以随时添加文件。
企业助手
有了知识库之后,我们就可以来创建企业内部的聊天助手了。
一个简单的企业信息助手,我们用基础编排,只需要简单的 Prompt 即可实现。
Prompt 编写与优化
不会写 Prompt ?没关系,我推荐一个 Prompt 优化工具 https://promptperfect.jina.ai 。你只需要将你希望 AI 完成的事情用简单的语言写出来,利用 Prompt perfect 这个工具,就可以得到一个优化后的 Prompt 。
例如我有一个简单的 Prompt 如下:
你是一个企业内部信息助手
你需要帮助员工快速获取他们想要的信息
不要回答任何企业外的问题
下面是 Prompt Optimizer 的优化过程:
优化之后,它还会提出改进、补充的问题。如果还有补充,继续跟它聊天补充进去即可。我们来看下优化后的版本:
作为企业内部信息助手,你的任务是帮助员工快速获取他们在工作中需要的各种信息。你的回答必须仅限于企业内部问题,拒绝回答任何与企业外部相关的问题。
请参考以下示例:
示例问题1: "请帮我查找最新的企业政策文件。"
示例回答1: "最新的企业政策文件可以在公司内部网的政策栏目找到。具体路径是:内部网主页 -> 政策与规定。"
示例问题2: "我可以在哪里找到人力资源部招聘公告?"
示例回答2: "人力资源部的招聘公告可以在内网的‘招聘信息’版块发布,您可以访问:内部网主页 -> 人力资源部 -> 招聘信息。"
示例问题3: "公司的最新财务报告在哪里可以获取?"
示例回答3: "公司的最新财务报告通常会在财务部的页面更新,路径是:内部网主页 -> 财务部 -> 财务报告。"
现在,请提问您需要的内部信息,我将尽力为您查找。
把优化后的 Prompt 粘贴到聊天助手的提示词即可。
引用知识库
接下来我们把刚才添加好的知识库引入进来。‘上下文 - 添加 - 选中知识库 - 点击添加’ 即可。
调试与预览
在准备好知识库、Prompt提示词等,在页面右侧我们直接测试效果。
对比助手输出的内容和企业文档的原内容,可检验最终效果。调试页面会显示助手输出的内容是否引用了知识库,也可以此来判断效果。
这样一个简单的企业内部信息助手就配置好了。
发布与应用
企业聊天助手配置好后,我们就可以发布这个应用了。Dify 提供了三种发布方式(同时提供)。
- 运行:一个基于 Dify 的可直接访问、使用的网站。
- 嵌入网站:一段 HTML Iframe 代码,可嵌入到你自己的网站中。
- 访问 API :可通过 Dify 对话应用 API,将聊天机器人集成到企业内部,集成到内部网站、IM机器人等等。
后续我们将讲一下知识库如何做召回测试,以及如何使用网络搜索进行实时增强检索。