19个API安全最佳实践,助您实现安全
利用扣子(COZE)平台:构建企业级知识库机器人的步骤
本文分为三个部分
第一部分介绍AI大模型(LLM)和AI Agent的区别。AI Agent的能力为什么变强了?
第二部分通过一个实际案例,手把手的教你如何使用扣子(COZE)
第三部分聊一聊AI Agent未来会对我们的工作和生活产生哪些改变
其实教程本身不是最重要的,本篇文章第二部分的教程只是在验证和推导出第一和第三部分的观点和推论;
这篇文章字数有点多,如果没什么耐心的话,可以拉到文章末尾直接找机器人体验入口亲自感受一下。
一、AI Agent的概念和能力
- 什么是AI大模型(LLM)?AI大模型,例如GPT-4或BERT,是基于深度学习技术构建的大型语言模型。它们的主要目标是理解并生成自然语言文本。通过分析大量文本数据,这些模型学习语言的统计规律,并能够执行翻译、摘要、对话等多种语言任务。AI大模型通常不是为特定任务定制的,而是能够根据输入的文本生成相应的输出。
- AI Agent是指能够独立执行任务或实现目标的系统,它可以是软件或智能机器。这些系统通过感知环境并据此做出决策。AI Agent能够整合多种技术,包括AI大模型(LLM),其核心特性在于交互性和目标导向性。例如,自动驾驶汽车就是一个AI Agent,它通过感知周围环境(如路况和障碍物)来决定下一步的行动,以实现安全驾驶的目标。
- 用一个可能不太精确的比喻来形象化理解:AI大模型(LLM)就像人的大脑,而AI Agent则相当于整个人。AI大模型(LLM)只负责处理信息的输入和输出,而AI Agent则包括了AI大模型(LLM)、规划(Planning)、记忆(Memory)(这三者构成了大脑),以及工具(Tools),也就是人的四肢。
- 在AI大模型(LLM)出现之前,所谓的智能机器人无法“理解”人类的语言。通过深度学习技术,AI大模型开始逐渐“理解”人类的语言。实际上,它是通过显著提高对下一个token的预测准确率来实现这一点的。如何利用prompt(即输入)来进一步提升准确率,我们可以在未来进一步探讨。此时,与“它”的对话效果开始显现,让人感觉越来越像是在与一个真实的人交流。因此,时至今日,AI Agent这一关键环节逐渐完善。AI Agent即将发挥越来越重要的作用,可以预见,未来AI Agent将有广泛的应用,极大地改变我们的生活和工作方式。
- 因此,AI Agent可以被定义为AI大模型(LLM)+规划(Planning)+记忆(Memory)+工具(Tools)的组合。
二、coze 怎么创建bot,更具体一点就是知识库机器人
1、扣子(COZE)分为国内版和国外版
(1)国内版:https://www.coze.cn。
大模型使用的是字节自研的云雀大模型和kimi大模型。国内版官方文档教程:https://www.coze.cn/docs/guides/welcome
(2)国外版:https://www.coze.com/
大模型使用的是GPT-3.5,GPT-4(是的,在这是可以免费用GPT-4的),但是需要一些科学上网的方法。
国外版官方文档教程:https://www.coze.com/docs/guides/welcome
国外版的COZE的确比国内版的要香一些,但是国内版的一些功能也在不断地完善。就是在大模型对话方面,GPT-4的确要顺滑多了。体验上的排序如下:GPT-4>GPT-3.5=kimi>云雀大模型。
我们的教程就以国内版COZE来进行。
2、扣子(COZE)功能介绍
以下内容来自扣子官方指南:https://www.coze.cn/docs/guides/function_overview。
这部分可迅速的略过,在制作的过程中,在回过头看一下相关功能。
基础能力
你可以使用扣子提供的以下功能,定制你的 AI Bot:
(1)提示词(人设与回复逻辑功能)
设定 Bot 的身份及其目标和技能,例如产品问答助手、新闻播报员、翻译助理等等。Bot 的提示词决定了 Bot 如何与你的用户进行互动。
(2)插件
通过 API 连接集成各种平台和服务,扩展 Bot 能力。扣子平台内置丰富的插件供你直接调用,你也可以创建自定义插件,将你所需要的 API 集成在扣子内作为插件来使用。
(3)工作流
一种用于规划和实现复杂功能逻辑的工具。你可以通过拖拽不同的任务节点来设计复杂的多步骤任务,提升 Bot 处理复杂任务的效率。
(4)触发器
允许用户在与 Bot 对话过程中,根据用户所在时区创建定时任务。例如“每天早上八点推送新闻”。每个对话中最多创建 3 条定时任务。
(5)记忆库
扣子的记忆库功能可以保留和理解对话细节,并支持添加外部知识库给模型补充知识,使 Bot 与用户的互动更加有针对性和个性化。你可以通过以下方式来存储和管理外部知识。知识库:支持上传本地或线上内容,然后将这些内容分割成知识分片,通过语义匹配给模型补充知识。
(6)变量
用于保存用户个人信息,让Bot记住用户的特征,使回复更加个性化。
(7)数据库
用来存储和管理结构化数据,并支持用户通过自然语言方式对数据库中的数据进行增删改查。
(8)长期记忆
总结聊天对话的内容,并用于更好的相应用户的消息。
(9)开场白
设置 Bot 对话的开场语,让用户快速了解 Bot 的功能。例如 我是一个旅行助手 Bot,我能帮助你计划行程和查找旅行信息。
(10)用户问题建议
Bot 每次响应用户问题后,系统会根据上下文自动提供三个相关的问题建议给用户使用。
(11)音色
为 Bot 选择与用户交流使用的音色。
高级能力
除了上述简单易用的搭建能力,扣子平台还提供了以下高级功能,让你更加灵活的设计、使用搭建的 Bot。
(12)数据分析
扣子平台为每个 Bot 提供了数据分析看板,让你可以通过数据得知 Bot 的使用情况。例如活跃用户数、留存率等。
(13)多发布渠道
扣子支持将搭建的 Bot 发布到各种社交应用中,让你的 Bot 服务更多的用户。接下来我们结合实际案例来熟悉这些功能。
3、搭建网站(www.17ai.site)知识库机器人
(1)该机器人产品的背景、目的及价值
最近几个月AI的发展非常的迅猛,几乎每天都在发生变化,我在查找相关信息的过程中就发现,大量的时间花在了查找、分辨高质量内容的方面。
我就想能不能边查找AI相关信息的同时,边将高质量的内容整合到一起呢,我想,这是有价值的。于是做了一个AI信息聚合网站www.17ai.site。
从体验上来看,一方面随着信息越来越多,单靠分类、标签,用户仍然会越来越难以查找到自己想要找到的信息。另一方面,站内搜索的体验感很差,很多信息搜不出来,用机器人对话体验感则好了很多。
看下面的示例,同样搜GPT网站内容,站内搜索搜不出来,机器人会帮你找到,提供教程链接,并给出简短的介绍,体验感好很多。
所以制作这个知识库机器人的目的是:基于www.17AI.site网站内的信息,为用户提供更高效的检索服务,助其找到高质量内容。
(2)先搞清楚扣子(COZE)机器人运行的最大问题
搭建这个知识库机器人的目的是为了高质量的搜索站内信息。但是实话实说扣子(COZE)里面现在的两个AI大模型(云雀、kimi)非常喜欢“夹带私货”,无论我怎么通过提示词强调也没用,总是将无关信息呈现出来。
相较而言GPT-4就非常的“听话”,绝对不会越俎代庖,这就是大模型之间的差距了。
后来经过我非常多次的调试、试验,在“人设与回复逻辑”里面用云雀大模型并配上以下提示词(这里不要用kimi,非常非常“不听话”,工作流里面再用它),会相对的减少这种情况的出现(看看提示词里面有多少!就可以想象我经历了什么)
这里是你和Bot直接对话的地方,所以哪怕你后面什么都没做,Bot也会根据你的提示词行动。
(3)搭建AI机器人的工作流程站内信息整合→创建知识库→创建工作流→编写Bot提示词→调试、优化→发布
(4)站内信息整合
我将网站内的信息整合成了表格,表格分成了两个类型,一个是网站类,一个是文章类。
网站类保留了4个选项,网站名称、网站简介、网站标签、网址
文章类保留了6个选项,日期、星级、一级分类、二级分类、文章标题、网址
这样是为了后面可以多维度的搜索相关信息,这样能更加精准的搜到想要找到的信息。
比如我想搜索:近7天内,星级4星以上的,关于AI开发的文章。就可以精准的找到。
所以高质量的信息源也是非常关键的。
(5)创建知识库点击“个人空间”-“知识库”-“创建知识库”
起个名字,然后点击“新增单元”
点击“表格格式”-“本地文档”
注意:这里还可以选择其他文档形式比如word、pdf等,还可以在线采集等方式,但是这些方式结构不清晰,知识库在导入的时候会自动分割大小(这涉及到知识库的RAG相关知识,这里不赘述),导致检索质量不稳定。所以我比较倾向于用结构清晰的excel表格。
将表格拖入上传
选择索引项,就是按哪一项进行搜索,比如这里选“一级分类”,我就可以搜索出比如“AI资讯”、“AI实践”等信息出来。
上传完毕,之后再想增加内容的时候,就点击添加内容即可。
这里还有问题就是如果一个表格,我除了按“一级分类”搜索之外,我还希望按“二级分类”和“文章标题”来搜索怎么办。很简单,那就多建立几个表格就行了。
到这里,知识库创建完毕
(6)创建工作流
点击“个人空间”-“工作流”-“创建工作流”
新建好的页面长这样,一个开始,一个结束,一个输入,一个输出。这也表明了工作流的作用,就是接收输入,比如用户打字提问,最后输出贴合这个问题的回答。
a.开始节点
输入变量名称”question”,这个变量将存储用户的输入信息。
b.知识库节点
点击左边“知识库”-“+”,将刚才开始节点与知识库节点连接起来。
在输入项,选择刚才开始节点的变量“question”。
点击知识库右边的“+”,选择刚才建立好的知识库“17AIsite”。
搜索策略根据情况选择,我选的是“混合”,最大召回量就是从知识库中输出的最大段落数,数量越大,速度越慢。
最小匹配度,就是搜出来的结果,数值越大,筛选的标准越严格,输出的数据越少,数值越小,筛选的标准越松,输出的数据越多。比如搜出来10个结果,这里的数值如果是0.8,那么输出的结果可能就只有1、2个,如果数值是0.2,那么输出的结果可能就是8、9个。在调试的过程中,可以自行调整看一下,找到最合适的数值。
输出部分不用管。
c.大模型节点
点击左侧“大模型”-“+”,将刚才的知识库节点和这个大模型节点连接起来
在“模型”选项选择“moonshoot(32k)”,moonshoot就是kimi大模型。“temperature”这个数值较高时会生成更多样化的文本,增加了更多的可能性,也增加了更多的不确定性。
在“输入”选项这里,选取前面的用户输入的变量“question”和知识库输出的变量“knowledge”
在“提示词”这一部分,根据用户输入的内容和知识库输出的内容,让大模型根据规则为用户输出答案。
提示词如下:
# 角色
你是(https://17ai.site/)网站的问答小助手。你会接收两个输入:
1.{{question}}这个是用户询问的问题
2.{{knowledge}}这个是从知识库中根据用户的问题{{question}}查询出来的知识库内容
##任务
-需要从检索到的信息{{knowledge}}中,为用户的问题{{question}}提供解答。让用户更方便的查询到AI相关的内容。
-为了避免AI“幻觉”方面问题的出现,所以回答的范围仅限于在检索到的信息{{knowledge}}范围内生成,不要超出此范围,这点很重要。
## 技能
###技能 1: 问题理解
-理解用户的问题{{question}},并识别其关键信息。
###技能 2: 回答生成
-基于检索到的信息{{knowledge}},为用户生成准确、简洁的回答。
##约束
-仅回答与产品相关的问题,不回答无关话题。
-尽量使用清晰简练的语言来回答用户的问题。
-整个回答过程中,始终以用户的需求为中心。
-所有回答只能在检索到的信息{{knowledge}}范围内生成,不允许自行生成其他无关回答,这一点请无论如何务必遵守。
-只要检索到信息{{knowledge}},无论用户的问题是什么,都要将信息{{knowledge}}用清晰简练的语言输出。
-如果没有检索到任何信息{{knowledge}},请直接生成如下回答:
'这次没找到别灰心,您可以尝试再试一次,或到https://17ai.site/网站上查询'
-禁止输出与内容无关的符号信息和表格标题等,比如:"",{},brief,一级分类等
将输出内容赋予变量output
d.结束节点
选择回答模式:使用设定的内容直接回答
输出变量:用户输入的内容“question”,大模型输出的内容“answer”
回答内容:
回答的内容带上{{question}}、{{answer}}这两个变量
e.试运行并发布
点击“试运行”
输入问题,选择Bot,点击运行
可以看到运行结果没问题
还可以看一下其他节点的运行结果。
可以看到从知识库的输出到大模型的输出,很明显无论是文字表述还是排版都得到了很大的提升。
确定没问题了,就点击发布至此,工作流内容完成。
(7)编写Bot提示词→调试、优化→发布
返回Bots,点击“17AI小助手”,完成其他环节,并自行调试、优化
这些比较简单,就略过了。
全部完成之后,点击“发布”,选择发布渠道
我选择了如下4个渠道,Bot Store、豆包、飞书、订阅号
至此,知识库机器人就创建完成了。
(8)各渠道体验
各渠道除了订阅号的表现不太稳定(时好时坏)之外,其他的都还可以。
a、订阅号体验入口:我的公众号“王笑东”,对话框
b、豆包体验入口:
https://www.doubao.com/chat/19574572603906
c、飞书体验入口:
https://applink.feishu.cn/T8LZq6JEloki
三、AI Agent的未来
其实知识库机器人只是AI Agent一个很小的应用场景,我相信在不久的将来,AI Agent会在方方面面出现很多不同于以往的应用。
我就由我们的知识库机器人这个案例推导一下,大家可以想象一下未来会不会有这样的应用。
一家企业将他们所有的资料都打包做成知识库,让AI大模型通过不断训练,然后开放给内部员工使用。
基层员工可以通过这个机器人进行培训、答疑,帮助处理各类问题(比如技术上的,服务上的等等)
营销文案、设计等工作,只要和机器人简单的沟通对话,就能很快的得到相应的文案和设计图片。
人事行政工作,让机器人写一些办公文档完全不在话下,通过与各级员工的对话+员工的各项数据,对每名员工进行人事分析评测也将变得更有效率。
复杂的企业各种系统问题,由于有大量的系统文本输入,再加上所有员工相关问题的搜集整理,AI大模型将会不断地得到反馈并优化解决方案。
多Agent模式正逐渐应用于更复杂的场景中,而长期记忆功能使得AI系统能够持续学习和优化。目前,AI大模型已经具备这样的能力,尽管相关的应用尚未普及,但预计不久的将来将会实现。
对于企业而言,采用这样的AI技术相当于聘请了一位“超级数字员工”。这将降低企业成本(包括各种隐性成本),提高管理效率,改善客户体验,并增加企业资产(特别是数字资产)的价值。
对于员工来说,掌握AI技术将成为一项必备技能。员工可以利用AI作为自己的助手,将繁琐和基础的任务交给AI处理,而自己则专注于更有创造性和价值的工作,从而为企业创造更大的价值。
综上所述,我们深入探讨了如何利用扣子(COZE)平台构建企业级知识库机器人,从理论到实践逐步展开。首先介绍了AI大模型和AI Agent的基本概念,并强调了AI Agent的独特能力和应用前景。
通过教程,我们详细说明了创建高效知识库机器人的步骤,包括工作流程的设置、知识库的构建和功能的优化。这个过程不仅展示了技术的具体应用,也展现了AI在信息整合和管理数据方面的潜力。AI Agent能够更高效地处理和检索信息,极大地提升工作效率和决策质量。
文章通过知识库机器人的案例,展望了AI Agent在未来工作生活中的潜在影响,并强调了AI技术在提升工作效率和推动企业数字化转型中的关键作用。以上内容基于GPT-4生成的基础上进行了调整。
未来,我将继续记录更多AI应用实践的过程,并希望这些内容能为你提供帮助。
题图标题:《五一度假》AI算法提供:Midjourney V6
Prompt:Japanese comics/manga,Front view,Warm light,A train is running on the track, surrounded by flowers and green grass. In the grassland, the visual effect is dreamlike with bright colors and bold shapes. Capture this moment., –q 2 –v 6.0 –ar 16:9
四、coze 怎么创建bot时常见的问题有哪些?
- 问:coze 怎么创建bot需要哪些技术背景?
答:在coze创建bot通常需要具备一定的编程基础,了解API的调用方式,以及对自然语言处理(NLP)有一定的认识。 - 问:coze 怎么创建bot的详细步骤是什么?
答:在coze平台创建bot的详细步骤包括:注册账户、登录开发者控制台、选择创建新bot、填写bot的基本信息、配置功能和交互逻辑、进行测试、发布bot。 - 问:coze 怎么创建bot时有哪些常见的问题?
答:在coze创建bot时可能会遇到的问题包括:账户权限问题、API限制、编程错误、交互逻辑设计不当、测试覆盖不全面等。 - 问:coze 怎么创建bot时如何确保用户体验?
答:在coze创建bot时,确保用户体验可以通过设计直观的交互流程、使用高质量的NLP技术、提供清晰的帮助和反馈机制来实现。 - 问:coze 怎么创建bot后如何进行维护?
答:在coze创建bot后,需要定期检查bot的性能、更新功能、修复发现的问题,并根据用户反馈进行优化。 - 问:coze 怎么创建bot时有哪些安全注意事项?
答:在coze创建bot时,需要关注数据安全、用户隐私保护、遵守法律法规,以及确保bot的安全性和稳定性。 - 问:coze 怎么创建bot时有哪些最佳实践?
答:在coze创建bot时的最佳实践包括:遵循平台的开发指南、编写清晰和可维护的代码、进行彻底的测试、持续监控bot的性能和用户反馈。 - 问:coze 怎么创建bot时如何收集用户反馈?
答:在coze创建bot时,可以通过内置的反馈收集机制、用户调查或直接的用户交互来收集用户反馈。 - 问:coze 怎么创建bot时如何实现多语言支持?
答:在coze创建bot时,可以通过集成多语言处理库、使用平台的国际化工具或编写多语言支持代码来实现bot的多语言能力。 - 问:coze 怎么创建bot时如何添加特殊功能?
答:在coze创建bot时,可以通过编写自定义代码或利用平台提供的特殊功能模块来添加特殊功能,以满足特定业务需求。
原文转自 微信公众号@王笑东