ChatKB产品简介
ChatKB 是一个基于大模型的知识库问答系统,能够通过自然语言与各种大模型、知识库对话,旨在成为企业应用的AI大脑。 ChatKB特点 开箱即用 :支持直接上传文档、文件自动拆分、向量...
适用范围:
ChatKB 是一个基于大模型的知识库问答系统,能够通过自然语言与各种大模型、知识库对话,旨在成为企业应用的AI大脑。
立即咨询
ChatKB 是一个基于大模型的知识库问答系统,能够通过自然语言与各种大模型、知识库对话,旨在成为企业应用的AI大脑。
ChatKB特点
-
开箱即用:支持直接上传文档、文件自动拆分、向量化、RAG(检索增强),智能问答准确性高,体验感好;
-
安全可控:可本地部署离线大模型,数据不上网;也可在线对接国内大模型,数据不出境;
-
可编排工作流:内置工作流引擎,可灵活编排 AI Agent,满足复杂业务场景下的需求;
-
无缝嵌入:支持零编码快速嵌入到第三方业务系统,让已有系统快速拥有智能问答能力;
ChatKB的能力
专属 AI 问答客服
通过导入文档或已有问答集进行训练,让 AI 模型能根据你的文档以交互式对话方式回答问题。

可视化AI应用设计
采用直观的可视化界面,为设计AI问答提供简洁易懂的设置提示,通过简单操作步骤,即可完成 AI问答机器人的创建和训练流程。

自动知识库预处理
提供直接分段、问答拆分和 自定义等多种数据导入方式,支持 PDF、WORD、Markdown 和 CSV 等多种文档格式,自动对数据进行预处理、向量化和 QA 分割,节省手动训练时间,提升效能。

工作流编排
内置强大的工作流引擎,可以帮助你设计更加复杂的问答流程。例如查询数据库、调用外部函数等。

无缝 API 集成
支持零编码快速嵌入到第三方业务系统,让已有系统快速拥有智能问答能力,提高用户满意度。

快速上手
快速体验 ChatKB 基础功能
知识库
开始前,请准备一份测试电子文档,WORD,PDF,TXT,excel,markdown 都可以,比如公司休假制度,不涉密的产品知识等。
首先需要创建一个知识库。

知识库创建完之后我们需要上传一点内容。
上传内容这里有3种模式:
-
手动数据集:手动输入问答对,让AI自动生成问答对
-
文本数据集:选择文本文件,直接将文本分段处理
-
表格数据集导入:批量导入问答对
这里以选择文本数据集中的本地文件来源为例:


上传后我们用默认处理模式,等待数据处理完成,等到上传的文件状态为可用。

应用
点击「应用」按钮来新建一个应用,这里有四个模板,我们选择「知识库 + 对话引导」。

选择使用的AI模型,点击确认

在AI配置页找到「关联知识库」模块,选择已创建的知识库。

配置知识库搜索模式、搜索过滤以及问题优化选项,点击完成

完成后点击【发布】即保存配置。然后就可以愉快的聊天啦

高级编排功能,结合问题分类、文本内容提取和HTTP请求
要想使用AI对接自己的系统实现业务,根本逻辑就是让AI从用户输入的指令中,提取出我们想要的参数,并且转成对应的字段,调用我们自己的http接口,AI收到接口返回的数据之后,再让AI进行学习分析结合用户的问题给出答案。
其中最重要的就是“问题分类”和“文本内容提取”两个模块,需要确保使用的AI模型支持function_call功能,如果使用了不支持function_call的模型的话,到也不会报错,只是永远都会走你配置的最后一个节点或提取的内容永远是空。无法实现正确的业务逻辑。
业务准备
首先准备好自己的业务系统,我准备了一个巡检系统的例子,提供了两个个方法,一个是获取所有的巡检列表数据

接口结果大概就是这样的

另一个是修改巡检数据

我期望的需求是,在AI中查询指令能给我返回我需要的结果,包括各种筛选条件,并且能进行修改指定的数据 高级编排 创建一个新应用,然后点击左侧的【高级编排】,即可进入高级编排涉及界面

可以看到默认已经存在了一个流程,这个流程就是一个普通的对话流程,它的含义就是用户输入指令从【流程开始】模块,将指令传到【AI对话】模块,然后在【AI对话】模块给出答案,这样一个完整的对话流程就结束了。

目前自己的系统有两个接口,一个查询接口一个修改接口,首先得要AI知道去调用哪个接口,也就是说得让AI知道用户的指令是“查询”还是“修改”,【问题分类】模块正是解决这个问题的。 首先把原来的【AI对话】模块删除掉,左上角点击【+】号,找到【问题分类】拖入面板中,然后将【流程开始】模块和【问题分类】模块使用连接线连起来。完成后界面是这样的:

配置【问题分类】模块: AI模型:选择自己想要的模型; 背景知识:写一段描述文字,帮助AI更好的理解,从而分析出属于哪种分类; 用户问题:选择变量引用 → 流程开始 → 用户问题; 分类123:填写自己期望的分类描述,我填写了3个,查询、修改、其他;

这时可以测试一下,三个分类则会有三个输出节点,每一个输出节点连接一个【指定回复】模块,这样能测试出问题分类有没有效果,面板右上角点击“调试按钮”进行对话测试,如下图

查询功能 先做查询的功能,知道属于“查询”分类后,就知道该调用哪个接口地址了。把“查询”的【指定回复】模块删掉,增加进来一个【Http请求】模块,并将“查询”的输出与【Http请求】模块连接,填写相关信息,比如请求方式get/post,请求地址就是查询的接口地址,请求参数和请求头根据自己的情况填写,我这个查询接口不需要任何参数,这样一个【Http请求】节点就配置好了。

【Http请求】模块的输出就是自己接口的返回结果,现在需要拿返回结果做为AI的知识库进行回答问题。在面板中添加【文本加工】模块,如下图:

【文本加工】模块需要拿到上一步接口的返回信息,还有用户的问题。在输入一栏点击“新增”,要新增两个变量,名字随便起,这里我新增了“response”和“q”,变量值如下图配置,然后在文本中输入以下内容(参考官方模板):
请使用下面<data></data>中的数据作为你的知识。请直接输出答案,不要提及你是从<data></data>中获取的知识。<data> {{response}} </data> 问题:"""{{q}}"""

【文本加工】这一模块配置好后,下一步就该让AI进行输出答案了,在面板中添加【AI对话】模块,修改相关配置,注意这里的用户问题要选择上一步【文本加工】输出的text变量,如下图:

到此一个完整的AI查询功能就做好了,现在可以点击右上角的调试按钮测试:

修改功能 从【问题分类】模块,分出了查询、修改、其他三个分支。查询分支的第一步是进行http调用,因为不需要传任何参数,所以可以直接调用。修改的话我需要知道修改的巡检任务的主键id,和巡检结果,所以我需要先拿到这两个参数后才可以进行http调用,那么可以使用【文本内容提取】这个模块。新建一个【文本内容提取】模块,与【问题分类】的“修改”输出节点连接(先把之前测试的【指定回复】删掉):

进行配置:主要是增加两个自己需要的字段,给出描述

拿到需要的两个字段后,就可以进行http调用了,增加【Http请求】模块,并配置输入参数、请求方法、请求地址、和请求参数,注意请求参数中使用变量的写法:

修改操作的回复,无非就是修改成功还是修改失败,这个我们自己回复就行,不需要使用AI回复了。添加一个【指定回复】模块,回复内容选择变量引用,选择http调用的原始响应:

修改功能就也做好了,现在把查询和修改结合起来测试一下:



至此一个完整的AI巡检查询修改系统就完成了。高级编排很强大,可以随意组合你想要的流程,发挥想象,比如可以增加一个【判断器】,来做修改任务时的字段验证:

问题补充 一般自己的服务都需要在请求头传一个token,那么这个token可以当作一个全局变量传到api接口里,然后在【Http请求】模块中使用这个全局变量。

