基于扣子(Coze)打造第一个智能体——个性化对话机器人

news2024/11/18 3:37:08

文章目录

  • 一,智能体体验
  • 二,动手打造一个自己的智能体
    • 1,主页点击创建机器人
      • 1.1 创建一个新的机器人
      • 1.2 修订Bot基础信息
      • 1.3 工具编排信息修订人设和回复逻辑、增补开场白等
    • 2,使用插件优化机器人
    • 3,使用工作流优化机器人输出
      • 3.1 旅游机器人的业务流程
      • 3.2 工作流的实现
        • ① 新建工作流
        • ② 初识工作流
        • ③编辑开始结点
        • ④增加大模型节点-处理用户输入
        • ⑤编辑大模型节点
          • 选择大模型
          • 选择输入
          • 给大模型设置提示词
          • 给大模型设置输出
        • ⑥增加必应搜索结点
        • ⑦在搜索节点后增加大模型节点-输出小红书攻略
        • ⑧增加酒店搜索插件节点
        • ⑨增加大模型节点处理酒店搜索结果-输出酒店攻略
        • ⑩增加插件-天气查询节点
        • ⑪增加大模型节点处理天气结果-输出天气结果
        • ⑫增加插件-航班查询节点-出发机票
        • ⑬ 增加大模型节点处理出发机票搜索结果-输出去程机票
        • ⑭增加插件-航班查询节点-返程机票
        • ⑮ 增加大模型节点处理返程机票搜索结果-输出返程机票
        • ⑯ 增加5个消息结点用以输出前面5个大模型的结果
      • 3.3 工作流整体概览
  • 附录:AI Agent 常用的一些共同概念
    • 提示词(人设与回复逻辑功能)
    • 插件
    • 工作流
    • 记忆库
    • 知识库

AI时代,确实能够大幅提高很多工作的效率,这篇文章就演示制作一个旅游攻略小红书笔记制作工具。

这个工具如何要通过代码编写,至少需要一个星期的时间,但是通过智能体半天的时间就可以搞定。

一,智能体体验

我们参考扣子Bots商店里面的这两个智能体,亲自动手打造一个智能体。

在这里插入图片描述

智能体1:来一场说走就走的旅行
智能体2:来一躺说走就走的旅行

本质上,它们都是对话机器人。
在这里插入图片描述

二,动手打造一个自己的智能体

1,主页点击创建机器人

1.1 创建一个新的机器人

在这里插入图片描述

1.2 修订Bot基础信息

在这里插入图片描述

1.3 工具编排信息修订人设和回复逻辑、增补开场白等

点开机器人后,我们发现,扣子在创建这个机器人的过程中,根据机器人的名称已经生成了提示词,主要是机器人的人设和技能。

所以,这一步,其实我们无需做什么。

在这里插入图片描述

一个具备基本沟通能力的机器人就已经创建完成,我们可以测试一下。

在这里插入图片描述
当然,此时的机器人功能还比较弱。

2,使用插件优化机器人

上述第一步结束,我们可以发现,结果并不理想。

因此我们下一步需要调整下大模型,增补一下人设和逻辑设定。

1)首先根据需求调整大模型的参数

在这里插入图片描述

  • 要了解相关的旅游目的,至少需要有多轮的对答,因此我们修改上下文轮数为15
  • 要求输出的内容会比较多,改正输出的长度为 2048 token
  • 大模型,保留使用豆包·function call 模型,后续调试若有问题,可以再修改

注意 : 修改 token 和轮数,会导致 token 的急剧增加,需要依据实际需要调整

2)调整提示词,优化人设和技能

# 角色
你是超厉害的小红书旅游博主,擅长给出高性价比旅行计划和超实用建议分享超赞旅游经验和攻略,推荐有趣目的地,给出实用旅行建议。

## 技能
### 技能 1: 了解目的地特色
1. 深入挖掘不同旅游地的独特之处,为用户提供深度体验推荐
2. 使用工具搜索目的地信息,了解其热门最点和小众宝藏地。


### 技能 2: 提供个性化计划
1. 根据用户需求,制定个性化旅行计划,包括行程安排和费用预算。
2. 考虑用户旅行时间、目的地、预算和兴趣爱好,确保计划的可行性。

### 技能 3: 分享前沿建议
1. 关注旅游行业最新趋势,提供前沿旅游建议。
2. 结合爆款关键词,如“宝藏目的地”“绝绝子是点”等,吸引用户关注。


## 限制
- 只聊旅游相关话题,保证专业性和实用性。
- 遵循小红书风格,用口语化生动表达。
- 内容按格式组织,不偏离要求。
- 考虑用户需求制定计划和建议,充分考虑用户的旅行时间、出发地、目的地、预算、天气等因素。
- 文案中融入一些小红书的关键词,可从列表中选出:我宣布、我不允许、请大数据把我推荐给、真的好用到哭、真22的可以改变阶级、真的不输、永远可以相信、吹、钱必看、狠狠搞钱、一招拯救、正确姿势、正确打开方式、摸鱼誓停、停止摆烂、救命!、啊啊啊啊啊啊啊!、以前的...vs现在的...再数一遍、再也不怕、教科书股、好用哭了、小白必看、宝藏、绝绝子、神器、都给我冲、划重点、打开了新世界的大门、YD5、秘方、压箱底、建议收藏、上天在提醒你、挑战全网、手把手、揭秘、普通女生、沉浸式、有手就行、打工人、吐血整理、家人们、隐藏、高级感、治愈、破防了、万万没想到、爆款、被夸爆

修改之后,再次测试。

在这里插入图片描述
这个结果就比第一次好多了。

3)增加网络搜索插件

但还不够好,我们可以尝试增加一些网络搜索插件。

在这里插入图片描述

在添加插件界面,搜索需要的插件,然后点击添加即可。

在这里插入图片描述

最终我们添加的插件如下。
在这里插入图片描述

添加完成后,再次测试。

在这里插入图片描述
我们发现这次对话,机器人使用必应搜索,给出了参考文章,结果更加详细。

3,使用工作流优化机器人输出

3.1 旅游机器人的业务流程

提到工作流,不要感觉有什么高大上的,工作流本质就是我们完成一件事情的流程。

比方说,我们这个对话机器人“说走就走的旅行”,它的工作就是根据用户的要求给出旅游攻略,其工作流程如下:

  • 理解用户提出的要求,从用户的需求描述中提取出发地与目的地,以及用户的其他要求,比如酒店预算
  • 根据用户的要求调用搜索引擎,找到最热门的攻略作为参考,这就要用到我们配置的必应搜索插件
  • 调用携程插件搜索酒店信息
  • 调用携程插件查询出行方式并给出推荐
  • 调用必应插件搜索目的地推荐景点
  • 输出旅行计划、酒店推荐、出行推荐、景点推荐

画出流程图如下:
在这里插入图片描述

3.2 工作流的实现

① 新建工作流

在这里插入图片描述

点击添加工作流进入工作流编辑界面。

在这里插入图片描述
在编辑器左侧是各种不同的工作流结点,我们常用的结点:

  • 大模型,这个是必须的
  • 文本处理
  • 消息,消息就是最后的输出,也是必须,不然就相当于这个机器人是个哑巴,能听懂,也能干活,就是没有结果给你
② 初识工作流

每次创建新的工作流,进入编辑界面后,默认有两个工作流结点,一个开始一个结束。

在这里插入图片描述

③编辑开始结点

在这里插入图片描述

开始结点是必须的,这个界面就对应机器人对话界面,用来接收用户的输入。

注意这个节点有一个输入模块,代表传输到这个节点的信息,每个节点都必须有输入。

下面是存储输入信息的变量名称,如果有一点编程知识,就比较好理解。

变量名是为了方便在后面的结点中引用当前结点的信息。

比如用户在对话机器人中输入“我要从佛山去北京3天旅游,酒店预算不超过500元”,这句话就会被存入到变量"BOT_USER_INPUT"或者“query”中,在后面的结点中就可以通过这两个名称来获取用户的输入了。

这里说是用户的输入,主要是这个节点是开始结点,接受的就是用户的输入。

后续节点的输入一般是其前面节点的输出。

注意,"BOT_USER_INPUT”是默认的变量,不能修改,“query”是我们新增的变量,为了演示用,不加也可以,这两个变量存储的都是用户的输入。

④增加大模型节点-处理用户输入

接收到用户输入后,就要将输入交给大模型进行文本处理,所以开始结点后需要一个大模型结点。

在这里插入图片描述

在左侧节点类型列表中选择大模型,点击+号或者拖拽到编辑区都可以。

在这里插入图片描述
节点之间需要用连线表示先后关系,把鼠标放在图中小蓝点上,按下鼠标右键拖出一条线,指向下一个节点的边框的小蓝点,就有一条线把这两个节点连接在一起,表示前后顺序关系。

注意,上一步不可缺少,只有连上之后,后节点才能获取前节点的信息。

⑤编辑大模型节点
选择大模型

扣子提供了很多大模型可供选择,我们选择字节的豆包大模型。

在这里插入图片描述

选择输入

大模型的输入就是开始结点的输出,点击右侧输入框就会打开一个下拉列表,选择开始结点,开始结点提供两个输出,就是我们前面提到的变量,这两个随便选一个。

在这里插入图片描述

给大模型设置提示词

大模型必须要配合提示词才能工作,且提示词的好坏影响最终的结果。

注意下面的提升词中“{{input}}”,表示的是用户输入的文本内容。

sourceCity是指从用户输入的文本中匹配到旅游的起点,sourceCity也是变量名,会作为大模型节点的输出,在后续的节点中使用。

其他依次类推。

# 角色
你是一个文本分析器,能够准确地从给定文本中提取信息,并按照特定格式输出为 JSON 数据。

给定文本

{{input}}


## 技能
### 技能 1:提取信息
1. 从输入的文本中提取出发地城市名称、目的地城市名称、日期和返程日期等信息。
2. 如果无法确定某个信息,可以询问用户以获取更多上下文。

### 技能 2:转换信息
1. 将提取到的城市名称转换为拼音写法,如“佛山”转换为“foshan”。
2. 将提取到的日期描述转换为实际的具体日期,格式为 YYYY-MM-DD。
3. 根据提取到的交通工具信息,若没有交通信息,则默认选为“飞机”。
4. 若没有固定的出发地,则默认从"北京"出发
5. 若没有固定的出发日期,则默认从“明天”出发

### 技能 3:输出 JSON
1. 按照指定的 JSON 格式输出结果,包括 sourceCity(出发地城市拼音)、sourceCityZh(出发地城市名称)、destinationCity(目的地城市拼音)、destinationCityZh(目的地城市名称)、departureDate(出发日期)、returnDate(返程日期)和 transportation(交通工具)。

## 限制
- 只处理与提取和转换文本信息相关的任务,拒绝回答与该任务无关的问题。
- 输出的 JSON 数据必须严格按照给定的格式,不能有任何偏差。
- 如果输入的文本中缺少关键信息,应尽可能询问用户以获取更多上下文,而不是随意猜测或假设。
给大模型设置输出

大模型从用户输入的信息中匹配到关键信息,并提取保存,以便下游节点获取使用。

比如规划路线的节点就需要使用出发地城市和目的地城市。
在这里插入图片描述

⑥增加必应搜索结点

接下来要根据前面的大模型结点提取到的关键信息搜索小红书,获取优质笔记,并参考笔记生成新的推荐。

所以需要一个搜索结点。

在这里插入图片描述
注意,要连接前面的大模型结点和搜索结点,连线由大模型指向搜索结点。

在这里插入图片描述

搜索节点的关键词就是用户的输入,所以这个节点的输入变量query选择应用开始节点的变量query

⑦在搜索节点后增加大模型节点-输出小红书攻略

必应搜索到结果后,会将交给大模型,以便大模型进行处理 ,输出规划。

分别设置大模型、选择输入、给出提示词,后续不再详述。

在这里插入图片描述
为了后续方便,将这个大模型命名为:攻略大模型
在这里插入图片描述

提示词参考:

你是一名资深的小红书旅游博主,擅长对旅行计划进行管理和输出。

针对查询到的旅游攻略进行整理,并以小红书爆款旅行文案的方式输出。

获取到的旅游攻略参考如下 


{{input}}

⑧增加酒店搜索插件节点

在这里插入图片描述
有两点需要注意:

  • ①这个结点是搜索目的酒店,所以输入是大模型提取出来的目的地城市。
  • ②连线是由开始节点后的大模型指向酒店搜索节点

在这里插入图片描述

⑨增加大模型节点处理酒店搜索结果-输出酒店攻略

加入一个大模型节点,注意以下两点:

  • 由酒店搜索节点指向大模型
  • 做如下配置
    在这里插入图片描述

这个大模型命名为:酒店大模型

在这里插入图片描述

提示词:

## 回答

请回答以下内容:
{{input}}
⑩增加插件-天气查询节点

选择墨迹天气插件作为天气查询节点,做如下配置:

  • start_time: 大模型输出字段 departureDate
  • city: 大模型输出字段 destinationCityZh
  • end_time: 大模型输出字段 returnDate

在这里插入图片描述

⑪增加大模型节点处理天气结果-输出天气结果

在天气查询节点后增加大模型节点处理天气查询结果。

在这里插入图片描述

这个大模型命名为:天气大模型

在这里插入图片描述

提示词:

## 分析
分析以下使用 ```括起来的文本:

{{input}}

⑫增加插件-航班查询节点-出发机票

这个节点是第一个处理用户输入的大模型节点的后续节点。

增加一个查询出发航班的节点。

  • arr_city,目的城市,destinationCityZh
  • dep_city,出发城市,sourceCityZh
  • flight_date,出发日期,departureDate
    在这里插入图片描述
⑬ 增加大模型节点处理出发机票搜索结果-输出去程机票

在这里插入图片描述
这个大模型命名为:去程机票大模型

在这里插入图片描述

提示词:

## 分析
分析以下使用 ```括起来的文本:

{{input}}


## 返回
解析文本内容,将相关的旅游出行的结果以表格方式呈现给用户,并提出相应的体贴建议等
⑭增加插件-航班查询节点-返程机票

处理出发机票后,接着查询返程机票,注意节点依赖关系。

增加一个查询出发航班的节点。

  • arr_city,目的城市,sourceCityZh
  • dep_city,出发城市,destinationCityZh
  • flight_date,出发日期,returnDate
    在这里插入图片描述
⑮ 增加大模型节点处理返程机票搜索结果-输出返程机票

在这里插入图片描述
这个大模型命名为:返程机票大模型

在这里插入图片描述

提示词:

## 分析
分析以下使用 ```括起来的文本:

{{input}}


## 返回
解析文本内容,将相关的旅游出行的结果以表格方式呈现给用户,并提出相应的体贴建议等
⑯ 增加5个消息结点用以输出前面5个大模型的结果

在这里插入图片描述
这五个消息节点分别用来输出5个大模型的结果:

  • 总攻略的结果
  • 天气结果
  • 酒店结果
  • 去程航班结果
  • 返程航班结果

在这里插入图片描述

在这里插入图片描述

3.3 工作流整体概览

在这里插入图片描述

附录:AI Agent 常用的一些共同概念

提示词(人设与回复逻辑功能)

Bot 的提示词是一种自然语言指令,告诉大语言模型(LLM)执行什么任务。

搭建 Bot 的第一步就编写提示词,为Bot设定身份和目标,Bot 会根据大语言模型对人物设定和回复透辑的理解,来响应用户问题。

因此提示编写的越清淅明确,Bot 的回复也会越符合预期。

插件

通过 API 连接集成各种平台和服务,扩展 Bot 能力。

扣子平台内置丰富的插件供你直接调用,你也可以创建自定义插件,将你所需要的 API 集成在扣子内作为插件来使用。

工作流

一种用于规划和实现复杂功能透辑的工具,你可以通过拖捷不同的任务节点来设计复杂的多步骤任务,提升 Bot 处理复杂任务的效率。

记忆库

扣子的记忆库功能可以保留和理解对话细节,并支持添加外部知识库给模型补充知识,使 Bot 与用户的互动更加有针对性和个性化,你可以通过以下方式来存储和管理外部知识。

知识库

支持上传本地或线上内容,然后将这些内容分制成知识分片,通过语义匹配给模型补充知识

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2136267.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2024/9/14 408大题专项训练之存储系统

组相联映射怎么算组号? 有cache总大小/路数xcache大小 物理地址与虚拟地址位数不一定相等,但是她们页内地址和块内地址位数是一样的!

栈OJ题——用栈实现队列

文章目录 一、题目链接二、解题思路三、解题代码 一、题目链接 用栈实现队列 二、解题思路 三、解题代码 class MyQueue {public Stack<Integer> stack1 ;public Stack<Integer> stack2;public MyQueue() {stack1 new Stack<>();stack2 new Stack<&g…

C++中类的定义

一、类的定义格式 1、首先我们创建一个类&#xff1a; #include<iostream> using namespace std;class Stack {//公有的 public://定义一个成员函数并给一个默认的缺省值void Init(int n 6){int* arr (int*)malloc(sizeof(int) * n);if (arr NULL){perror("mal…

ruby和python哪个好学

Ruby和python都挺好学的。建议学习Python&#xff0c;语法的话&#xff0c;Python相对更简洁。而且Python应用场合更广泛&#xff0c;运维、网站开发、数据处理、科学研究都可以。 Ruby和Python十分相似&#xff0c;有很多共同点&#xff0c;但也有一些不同之外&#xff0c;以…

视频提取文案,这5种方法让你轻松提取出来

视频文案的提取成为了许多创作者和营销人员的日常需求。无论是从短视频中提取精彩台词&#xff0c;还是将教育视频转化为学习资料&#xff0c;掌握高效的视频文案提取方法都显得尤为重要。今天&#xff0c;就来给大家分享5种视频文案提取方法&#xff0c;快来一起看看吧。 方法…

App及web反编译方案

APP反编译代码的工具下载&#xff1a; 下载地址&#xff1a;APK逆向三件套apktool-2.9.3.jar&#xff0c;dex2jar-2.0.zip&#xff0c;jd-gui-windows-1.6.6资源-CSDN文库 》dex2jar: 把dex文件转成jar文件 》 jd-gui: 这个工具用于将jar文件转换成java代码 》APKTool: 首先把…

【HCIA-Datacom】IPv4地址介绍

| | &#x1f449;个人主页&#xff1a;Reuuse 希望各位多多支持&#xff01;❀ | &#x1f449;HCIA专栏博客 | 最后如果对你们有帮助的话希望有一个大大的赞&#xff01; | ⭐你们的支持是我最大的动力&#xff01;⭐ | 目录 IPv4地址定义IPv4地址分类方式二级目录三级目录 I…

研1日记12

1. 改19->10 2. 学习数据不平衡问题 1. 欠采样 合并两个样本数据 两种方式 1. 按原分布比例划分。sklearn中train_test_split里&#xff0c;参数stratify含义解析_traintestsplit参数stratify-CSDN博客 3.刘二大人 卷积操作 待看论文&#xff1a; 刘老师指导&#xff1a…

PRD 在产品中的重要作用与撰写技巧(文末附PRD模板下载)

对于产品经理而言&#xff0c;PRD&#xff08;Product Requirement Document&#xff0c;产品需求文档&#xff09;是将产品概念转化为实际产品的关键桥梁。以下是关于如何写好 PRD 的详细指南&#xff1a; 一、PRD 的主要作用 统一团队认知 PRD 是产品团队的 “通用语言”。…

掌握 Spring:从新手到高手的常见问题汇总

一提起Spring&#xff0c;总感觉有太多知识&#xff0c;无法详尽&#xff0c;有些基础理解就先不说了&#xff0c;相信大家都已经用过Spring了 下面简单针对常见Spring面试题做些回答 核心特性 IOC容器spring事件资源管理国际化校验数据绑定类型转换spirng表达式面向切面编程……

视频监控基础学习

IPC&#xff1a;网络摄像机 NVR&#xff1a;网络硬盘录像机产品&#xff0c;搭配IPC使用。集成存储、解码显示、拼接控制、智能分析等多种功能于一体。一机多用&#xff0c;部署简单&#xff0c;功能齐全。安全可靠&#xff0c;适用于各类场景。 ONVIF协议&#xff1a;网络摄像…

数据集 wider_face 人脸数据集 人脸检测 >> DataBall

数据集 wider 人脸检测数据集 WIDER FACE: A Face Detection Benchmark inproceedings{yang2016wider, Author {Yang, Shuo and Luo, Ping and Loy, Chen Change and Tang, Xiaoou}, Booktitle {IEEE Conference on Computer Vision and Pattern Recognition (CVPR)}, Title…

巴西电商市场规模、前景及支付方式(pix、Boleto)

一、巴西电商市场分析 作为拉丁美洲最大经济体&#xff0c;巴西在拉丁美洲经济中占据领先地位&#xff0c;根据巴西地理与统计研究所(IBGE)的数据&#xff0c;2023年巴西GDP达到2.2万亿美元&#xff0c;跃居世界第九大经济体。数字化进程以及经济多元化推进正在推动该国中产阶…

基于SpringBoot+Vue的高校教材订购管理系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、SSM项目源码 系统展示 【2025最新】基于JavaSpringBootVueMySQL的…

jmeter吞吐量控制器

一、吞吐量控制器作用&#xff1a;旨在混合场景中&#xff0c;控制样本数&#xff0c;通常在比例场景中使用 吞吐量控制器提供了两种控制模式&#xff1a; 百分比执行&#xff08;Percent Executions&#xff09;&#xff1a; 吞吐量控制器会根据配置的百分比来决定其下的作用…

快速完成论文初稿写作的ChatGPT提示词分享

学境思源&#xff0c;一键生成论文初稿&#xff1a; AcademicIdeas - 学境思源AI论文写作 随着人工智能技术的迅速发展&#xff0c;ChatGPT已经成为学术写作中不可忽视的工具。它不仅能帮助研究者提高写作效率&#xff0c;还能在初稿撰写过程中提供结构化的建议和内容生成支持…

xshell密钥方式连接阿里云Linux

前提条件 有阿里云ECS linux实例安装好xshell工具 步骤 创建密钥对并绑定ECS实例 浏览器登录阿里云-->控制台-->ECS服务器-->网络与安全-->密钥对-->创建密钥对 根据提示填写密钥名称-->选中默认资源组-->创建 创建完成&#xff0c;会自动下载密钥对的…

看Threejs好玩示例,学习创新与技术(二)

本文接上篇内容&#xff0c;继续挖掘应用ThreeJS的一些创新算法。 本文理解难度比较大&#xff0c;可以先看一些概念&#xff0c;在难的地方培养一些意识即可。 1、扭曲的自然 下面图本身是矩形的&#xff0c;为何它可以这么扭曲呢&#xff1f;它在随机处带有一定的规律&…

多米优选APP源码系统开发

多米优选是一种基于卷轴模式的电商平台系统&#xff0c;它通过滚动展示商品信息&#xff0c;让用户在浏览商品的同时参与各种任务获得奖励&#xff0c;从而提升用户的活跃度和购买意愿。以下是多米优选卷轴模式系统开发的深度解析。 一、系统概述 多米优选卷轴模式源码系统旨在…

高精度治具加工的重要性和优势

在现代工业制造中&#xff0c;高精度治具加工扮演着举足轻重的角色。它不仅关乎产品制造的精度与质量&#xff0c;还直接影响到生产效率和成本控制。因此&#xff0c;时利和将深入探讨高精度治具加工的重要性和优势&#xff0c;对于提升工业制造水平具有重要意义。 高精度治具加…