GPTs的原理及应用¶
学习目标¶
- 理解什么是GPTs
- 理解什么是Coze平台
- 掌握基于Coze平台打造个人学习助手
1 什么是GPTs¶
2023年11月,OpenAI 为旗下的 ChatGPT 推出了一项名为“GPTs”的服务,允许用户无需写代码就可以根据特定需求创建“属于自己的 ChatGPT 版本”,也就是基于 ChatGPT 创建定制化的个人 AI 助手。
截止到2024年1月,已经有超过300万个性化ChatGPT诞生。
GPT Store访问地址:https://chat.openai.com/gpts,注意需要科学上网,以及当前只针对plus用户开通了使用权限。

2 Coze平台(国产GPTs)¶
Coze 是由字节跳动推出的一个AI聊天机器人和应用程序编辑开发平台,可以理解为字节跳动版的GPTs.
Coze还提供了多种插件、知识、工作流、长期记忆和定时任务等功能,来增强聊天机器人的能力和交互性。而且你可以将搭建的 Bot 发布到各类社交平台和通讯软件上,让更多的用户与你搭建的 Bot 聊天。
2.1 如何使用Coze¶
Coze(扣子)分为国内版和国外版:
- 国内版访问地址:https://www.coze.cn/home,背后大模型应用的是字节自研的云雀大模型、通义千问和kimi大模型
- 国外版访问地址:https://www.coze.com/home,背后大模型应用的是GPT-3.5,GPT-4(在这是可以免费用GPT-4的),但是需要一些科学上网的方法。
当前国外版的Coze的确比国内版的要有优势,主要体现在模型上:GPT-4>GPT-3.5=kimi>云雀大模型。但是国内版的一些功能也在不断地完善,而且不需要科学上网。因此接下来的教程就以国内版 Coze 来进行,也可以参考官网文档:https://www.coze.cn/docs/guides/welcome 实现Coze平台的应用。
2.2 插件系统¶
扣子平台提供了一个多样化的插件库,这些插件涵盖了从基础的文本处理到高级的机器学习功能。例如,文本分析插件可以帮助 AI 理解用户输入的意图,情感分析插件能够识别用户的情绪倾向,而自然语言处理(NLP)插件则支持更复杂的对话生成。此外,还有图像识别、语音识别、数据分析等插件,这些插件的数量和种类不断增加,以适应不断变化的技术趋势和市场需求。

- 新闻资讯
- 头条新闻:持续更新,了解最新的头条新闻和新闻文章。
- 天气预报
- 墨迹天气:提供省、市、区县的未来 40 天的天气情况,包括温度、湿度、日夜风向等。
- 出行必备
- 飞常准:通过 VariFlight 覆盖的全球商业客运航班,您的终端用户可以轻松获得他们的航班状态、办理登机手续柜台、预计出发时间、登机口、登机状态、行李转盘等信息,并能在整个航程中随时掌握。
- 猫途鹰:查询实时酒店搜索,航班价格,餐厅,吸引人的旅游地点等信息以创建一个旅行网站。
- 生活便利
- 快递查询助手、国内快递查询:查询快递单号,快递公司,快递进度等信息。
- 食物大师:Food Master 提供食物搜索功能。
- 懂车帝:如果你想要查询汽车信息,包括二手车、新车、某些车型的信息时可以使用此插件进行查询。
- 幸福里:提供二手房、新房、租房信息的插件,想要查询某个城市、区域、户型的房产信息时,可以使用此插件。
- 猎聘:帮助用户根据工作经验、教育经历、地理位置、薪水、职位名称、工作性质等条件搜索猎聘上提供的招聘信息。
这些生活化的插件,可以让你的 AI bot 变得贴近生活,贴近用户的需求。
2.4.工作流¶
coze平台**提供了灵活的工作流设计工具,开发者可以通过拖拽式界面轻松搭建复杂的对话流程**。工作流节点包括了各种预设的对话元素,如问答、选择、表单填写等,以及自定义的逻辑判断,使得 AI Bot 能够处理复杂的用户交互。
4.1 工作流构成¶
工作流由多个节点构成,节点是组成工作流的基本单元。例如,大语言模型 LLM、自定义代码、判断逻辑等节点。
工作流默认包含了 Start 节点和 End 节点。
- Start 节点是工作流的起始节点,可以包含用户输入信息。
- End 节点是工作流的末尾节点,用于返回工作流的运行结果。

不同节点可能需要不同的输入参数,输入参数分为**引用**和**输入**两类。**引用**是指引用前面节点的参数值、**输入**则是支持设定自定义的参数值。


4.2 节点类型¶
扣子为你提供了以下基础节点,除此之外,你还可以添加插件节点或其他工作流。
| 节点名称 | 描述 |
|---|---|
| LLM | 大语言模型节点。使用输入参数和提示词生成处理结果。 |
| Code | 代码节点。通过 IDE 编写代码处理输入参数,并返回输出值。 |
| Knowledge | 知识库节点。根据输入参数从关联知识库中召回数据,并返回。 |
| Condition | if-else 逻辑节点。用于设计工作流内的分支流程,满足设置条件则运行**如果**分支,否则运行**否则**分支。 |

3 Coze平台实践¶
案例:学习答疑助手
本次利用Coze平台,我们将基于本地知识库快速搭建一个学习答疑bot,主要用于学习的时候帮助我们答疑解惑,并将该bot对接微信公众号,以方便我们咨询。
3.1 收集数据¶
为了实现学习答疑功能,需要收集一些知识资料,比如:学习笔记、课本知识等等。
本次数据主要以学习笔记为主要内容.
3.2 创建知识库¶
如下图所示,在Coze中创建知识库分为以下三个步骤:

参考以下操作,完成知识库创建:
- 登录扣子。
- 选择一个工作区。
- 单击**知识库**页签,然后单击**创建知识库**。输入知识库名称,然后完成创建。

3.2.1 自定义切分策略:添加本地学习笔记文档¶
学习笔记文档,通常会针对不同的知识点进行分块介绍,为了保证文档上传到知识库后可以按照不同模块进行拆分,我在每个模块标题前手动添加了###分隔符。如下图所示:

- 在知识库页面,选择**文本格式**,然后单击**本地文档**。单击**下一步**。
- 选择学习笔记pdf文档,等待内容上传后,单击**下一步**。
- 选择**自定义**分段方式,分段标识符设置为###,长度设置为2000,然后单击**下一步**。
上传后,单击单元名称查看分段情况。可以看到每个场景都是一个独立的内容片段。

3.3 搭建与使用 Bot¶
完成知识库内容上传后,就可以搭建学习答疑 Bot 了。
-
登录扣子。
-
选择已经创建产品知识库的工作区。
-
在工作区内,单击 Bots 页签,然后单击**创建 Bot**。
-
输入 Bot 名称和说明,然后单击**确定**。
-
完成 Bot 创建后,默认进入到 Bot 的编排页面。
-
在**人设与回复逻辑**中输入提示词。
# 角色
你是一个专业的学习答疑小助手,能够精准透彻地理解用户的问题,然后从庞大的知识库中精准检索相关信息,进而为用户生成详尽准确的答案。
## 技能
### 技能 1: 深入理解问题
1. 仔细剖析用户提出的问题,精准提取其中的关键信息。
### 技能 2: 高效知识库检索
1. 依据关键信息,在知识库中进行全面检索。
### 技能 3: 智能搜索引擎查询
1. 若根据关键信息,在知识库中未找到高度相关的知识,借助 bingWebSearch 搜索工具展开检索。
### 技能 4: 精确回答生成
1. 以检索到的信息为基础,为用户打造准确且简洁明了的回答。
## 限制:
1. 只回答与学习相关的问题,对无关话题不予理会。
2. 尽量运用清晰简洁的语言回应用户的问题。
3. 在整个回答过程中,始终将用户的需求置于核心位置。
-
找到知识 >文本配置区,单击+添加已经创建的知识库。
-
点击知识库配置上的自动调用选项,修改检索策略。

-
找到技能》插件,单击+添加现有的工具:bingWebSearch。
-
完成配置后,在右侧调试面板中,输入一个问题查看 Bot 回复效果。如果回复内容不符合预期,展开运行完毕文本框,查看是否是知识库内容召回的不正确,可以根据知识库的召回情况调整知识库内容。调试没问题后,可单击发布将 Bot 发布到选择的渠道中,分发给其他用户使用。

3.4 发布到微信公众号¶
如果发不到微信公众号,首先必须自己创建一个公众号,然后在进行公众号的配置,配置完点击发布即可。

公众号验证:点击立即对话,然后扫码即可登录公众号进行对话:

微信公众号对话演示:
