搭建一个知识库智能问答机器人通常包括以下流程:
海外官方文档:https://www.coze.com/docs/zh_cn/knowledge.html 国内官方文档:https://www.coze.cn/docs/guides/use_knowledge
知识库问答是机器人最基础的功能,它可以根据用户的问题,从知识库中找到最佳答案。这其实就是利用了大模型的RAG机制。那什么是RAG机制?RAG机制,全称为“检索增强生成”(Retrieval-Augmented Generation),是一种用于自然语言处理的技术。它结合了两种主要的人工智能技术:检索(Retrieval)和生成(Generation),以提高机器对话和信息处理的能力。简单来说,RAG机制先从一个大型的数据集中找到与当前问题相关的信息,这一步叫做“检索”。然后,它使用这些检索到的信息来帮助生成更准确、更相关的回答,这一步叫做“生成”。可以把它想象成这样一个场景:当你问一个很复杂的问题时,RAG机制先去一个巨大的图书馆里找到所有相关的书籍,然后基于这些书籍中的信息来给你一个详细的回答。这种方法让机器在处理信息时更加精确,因为它结合了大量的背景信息和先进的语言模型的能力,使得生成的内容不仅依赖于模型本身的知识,还融入了具体、相关的外部信息。这对于提升对话AI的理解力和回答质量非常有帮助。基于RAG机制,我们可以实现知识库问答功能。首先,我们需要创建一个知识库,里面包含了大量社区的AI相关的文章和资料。比如我这里创建了一个有关AI启蒙和信息来源的知识库,然后通过手工录入的方式上传这个栏目的所有文章内容:就这样,陆陆续续地将社区其他板块的文章和资料导入到知识库中。在设计Bot中,我们添加这个知识库,并设置合适的搜索策略、最大召回数量和最小匹配度,尽可能好地利用知识库返回的内容进行结合回答:
在利用Coze搭建知识库时,需要如下几个流程:收集知识创建知识库创建数据库用以存储每次的问答创建工作流编写Bot的提示词预览调试与发布[heading4]收集知识[content]在收集知识之前却确认先了解过知识库支持的数据类型海外官方文档:https://www.coze.com/docs/zh_cn/knowledge.html国内官方文档:https://www.coze.cn/docs/guides/use_knowledge收集知识通常有三种方式企业或者个人沉淀的Word、PDF等文档企业或者个人沉淀的云文档(通过链接的方式访问)互联网公开一些内容(可以安装Coze提供的插件进行采集)
在创建工作流的时候,我们先思考下整个的流程1.用户输入问题2.大模型通过知识库搜索答案3.大模型根据知识库的内容生成答案4.数据库将用户问题和答案进行存储5.将答案展示给用户[heading5]创建工作流[content][heading5]Start节点[content]Start节点:每个工作流默认都有的节点,是工作流的开始这里我定义了一个输入变量:question,question会在启动工作流的时候由Bot从外部获取信息传递过来[heading5][heading5]知识库节点[content]知识库节点的输入和输出输入:Query,也就是用户的查询输出:一个数组,承载着从知识库中查询出来的匹配片段在Start节点后面接入了一个知识库节点,这个节点的目的是将用户的问题跟知识库进行匹配知识库中需要注意的几个概念Search strategy(查询策略)Hybrid search:混合查询,语义查询和全文索引的混合使用Semantic search:语义查询,理解知识库内容的语义,从而创造答案Full Text search:全文索引,不会去理解知识库的语义,而是直接使用字面意思进行匹配[heading5]变量节点[content]变量节点有两个能力:设置变量给Bot从Bot中获取变量我这里使用的能力是从Bot中获取user_language这个变量,目的是传给后面的大模型节点,控制其输出语言