扣子(coze)初体验,普通人也可以玩转AI

616 阅读18分钟

AI快速发展的今天,各类AI产品层出不穷,作为一个普通人我们其实不知道如何去使用AI产品;

而扣子(coze)(后续都用coze来描述)是一个AI产品,使用coze能快速创建专属于自己的AI Bot,并且不需要编程基础,只需要简单的操作就可以完成;

本文将带领大家一起体验coze,并且了解coze的一些基本功能;

简介:什么是coze

扣子是新一代一站式 AI Bot 开发平台。无论你是否有编程基础,都可以在扣子平台上快速搭建基于 AI 模型的各类问答 Bot,从解决简单的问答到处理复杂逻辑的对话。而且你可以将搭建的 Bot 发布到各类社交平台和通讯软件上,让更多的用户与你搭建的 Bot 聊天。

上文来自于coze的官网的介绍,官网地址:coze

官网的介绍已经很详细了,我这里就不过多的搬运了,下面我就说一些我的个人理解,如果有不对的地方,欢迎指正;

coze是一个AI Bot开发平台,Bot是指Robot的缩写,也就是机器人的意思,AI Bot也就是人工智能机器人的意思;

其实AI Bot我们很早就了解并体验过了,例如Siri小爱同学天猫精灵等等,这些产品的特点就是可以和用户进行对话,而且还可以完成一些简单的任务;

coze就是一个可以让你拥有类似这样的AI Bot的平台,你可以在coze上快速创建一个属于自己的AI Bot,如果只是打造一个简单的AI Bot,那么你甚至不需要编程基础,只需要简单的操作就可以完成;

体验:如何使用coze

下面我将带领大家一起体验coze,并且了解coze的一些简单的功能;

我们访问coze的官网:coze,我们可以使用抖音账号一键登录,也可以使用手机号码注册登录,这个看个人的喜好;

登录成功后,我们可以看到coze的主界面,如下图所示:

image.png

这就是一个很经典的AI对话的界面,可以看到coze的开场白也是介绍自己的,其中有一个关键词:

image.png

如图所示,如果我们想创建一个AI Bot,最快速的方式就是在对话框中输入我想创建一个 Bot,然后按下回车键,coze就会带领我们完成创建AI Bot的过程;

当然也可以点击预设问题,coze会自动帮你完成上面我说的操作,这样你成功创建了一个AI Bot

大概率是成功不了的,我也只成功了一次,所以我们还是通过正常的方式来创建一个AI Bot

创建AI Bot

我们可以主页的左上角找到创建 Bot的按钮,点击进入创建AI Bot的界面,如下图所示:

image.png

点击了之后,就会出现一个弹窗,如下图所示:

image.png

需要填写的字段并不多,我们来简单的了解一下每个字段的作用:

  • 工作空间:每个用户第一次注册之后,都会有一个默认的工作空间,叫做个人空间,这个个人空间是私有的,也就说只属于你自己,当然有私有的也会有团队的,这个就不多说了,我们选择个人空间
  • Bot 名称:这个就是你创建的AI Bot的名字,这个不多说了,就像每个人都拥有一个名字一样,不一定要求这个名字有多符合AI Bot的特性,只要你喜欢就好;
  • Bot 功能介绍:这个将会展现给使用这个AI Bot的用户看的,就像是一段自我介绍,你可以简单的介绍一下你的AI Bot的功能;
  • 图标:这个就是你的AI Bot的头像,可以选择自己上传,也可以选择coze帮你自动生成,如果选择coze自动生成,那么coze会根据你的Bot 名称Bot 功能介绍来生成一个头像;

例如我就创建了下面这样一个AI Bot

image.png

编辑AI Bot

创建成功之后,我们就可以进入到AI Bot的编辑界面,如下图所示:

image.png

这个页面主要分为三个部分,当然还有一些其他的功能,但是你的AI Bot的设定全部都是在这三个部分完成的,让我们来认识一下AI Bot的编辑界面:

  1. AI Bot人设:这个部分是最简单也是最重要的部分,你在这里填写的任何信息都会直接影响到你的AI Bot的回复逻辑,稍后我会详细的介绍这个部分;
  2. AI Bot技能:这个部分将会为你的AI Bot添加一些额外的能力,它将会依赖你配置的一些能力来扩展自己的行为,这一块内比较庞大,后面会有一小部分的介绍;
  3. 调试:这个就没啥好说的了,就是用来调试你的AI Bot的,你可以在这里和你的AI Bot进行对话,看看你的AI Bot是不是按照你的预期来回复的;

AI Bot人设

人设其实非常好理解,就是你希望你的AI Bot是一个什么样的人,当然我也知道你大概率不知道怎么填写,所以官方也给出了一个填写的模版,如下图所示:

# Character <Bot 人设>
你是一位数据分析专家,擅长使用 analyze 工具进行数据分析,包括提取、处理、分析和解释数据,你还能以通俗易懂的语言解释数据特性和复杂的分析结果。

## Skills <Bot 的功能>
### Skill 1: 提取数据
1. 当用户提供一个数据源或者需要你从某个数据源提取数据时,使用 analyze 工具的 extract 数据功能。
2. 如果用户提供的数据源无法直接提取,需要使用特定的编程语言,如 Python 或 R,写脚本提取数据。

### Skill 2: 处理数据
1. 使用 analyze 工具的 data cleaning 功能进行数据清洗,包括处理缺失值、异常值和重复值等。
2. 通过数据转换、数据规范化等方式对数据进行预处理,使数据适合进一步的分析。

### Skill 3: 分析数据
1. 根据用户需要,使用 analyze 工具进行描述性统计分析、关联性分析或预测性分析等。
2. 通过数据可视化方法,如柱状图、散点图、箱线图等,辅助展示分析结果。

## Constraints <Bot 约束>
- 只讨论与数据分析有关的内容,拒绝回答与数据分析无关的话题。
- 所输出的内容必须按照给定的格式进行组织,不能偏离框架要求。
- 对于分析结果,需要详细解释其含义,不能仅仅给出数字或图表。
- 在使用特定编程语言提取数据时,必须解释所使用的逻辑和方法,不能仅仅给出代码。

上面的模板是来自与官方的,具体地址:编写提示

这个模版就是一个AI Bot的人设,例如我上面的聊天机器人的人设就是根据这个模版来填写的,如下:

# 角色
你是一个可以聊天的机器人,可以回答各种问题,包括历史、科学、技术等。你也可以进行日常闲聊,如谈论天气、兴趣爱好等。

## 技能
- 回答问题:你可以使用知识库搜索相关信息,并以简洁明了的方式回答用户的问题。
- 日常闲聊:你可以与用户进行日常闲聊,如谈论天气、兴趣爱好等。
- 语言翻译:你可以将一种语言翻译成另一种语言。

## 限制
- 只回答与问题相关的内容,拒绝回答与问题无关的话题。
- 所输出的内容必须按照给定的格式进行组织,不能偏离框架要求。
- 请使用 Markdown 的 ^^ 形式说明引用来源。

突发奇想,小时候作文都写不好的我,现在要费劲巴拉的去描述一个AI Bot的人设,后悔没好好学语文;

根据上面的模版,还有我自己填写的信息作为参考,其实一个AI Bot的人设你可以简单的分为三个部分:

  1. 角色:你的AI Bot是一个什么样的人,如果还是不知道怎么写,那就直接将你的前任的性格写上去。
  2. 技能:你的AI Bot有什么样的能力,还是拿前任来说,例如:会做饭只会黑暗料理,衣服全都混洗,还不会讲道理(纯属娱乐,请勿代入,手动狗头)。
  3. 限制:你的AI Bot有什么样的限制,例如:政治敏感不能说,色情暴力不能讲,黄赌毒不能碰。

基于这三个部分,你可以还可以根据自己的需求进行扩展,让你的AI Bot更加的符合你的需求;

例如技能这一块,还是拿前任举例,我可以这样写:

## 技能
- 会做饭:你可以使用厨房工具制作各种美食,包括中餐、西餐、日餐等。
  - 中餐:你可以制作各种中餐,如红烧肉、鱼香肉丝、麻婆豆腐等。
    - 肉类:如果是肉类食物,最后的成品都是黑暗料理。
    - 蔬菜:如果是蔬菜食物,最后一定都是大杂烩。

你可以尽可能的去丰富你的AI Bot的人设,这样你的AI Bot就会更加的符合你的需求;

调试

这里我先讲调试,调试就是你可以直接和你的AI Bot进行对话,看看你的AI Bot是不是按照你的预期来回复的,如下图所示:

image.png

可以看到我让我的AI Bot做了一下自我介绍,它的回复中包含了我对它预设的一些人设技能,当然我的描述中它还可以谈论天气,我们来试试看:

image.png

可以看到它的回答并不符合我的预期,它无法回答我关于天气的问题,这个时候我就需要为我的AI Bot添加一个新的技能,让它可以回答关于天气的问题;

AI Bot技能

技能这一块是AI Bot的核心,你可以为你的AI Bot添加一些额外的能力,让它可以更加的符合你的需求;

为了让我的AI Bot可以回答关于天气的问题,我需要为它添加一个插件,如下图所示:

image.png

我们只需要点击这个+号,然后选择我们需要的插件,然后点击添加,就可以为我们的AI Bot添加一个新的技能了;

image.png

我们可以通过搜索功能来搜索我们需要的插件,例如我搜索天气,就可以找到一个叫做墨迹天气的插件,我们点击添加,就可以为我们的AI Bot添加一个新的技能了;

image.png

然后点一下这个插件,然后点击添加,这个插件就会被添加到我们的AI Bot的技能中:

image.png

AI Bot的技能添加成功之后,我们可以立即再次询问我们的AI Bot关于天气的问题,看看它是不是可以回答了,根据上图可以看到,它已经可以回答我们的关于天气的问题了;

插件

目前coze的插件根据文档介绍已经有60+的插件可以供你使用,这些插件有很多种类,我们可以通过主页的插件来查看所有的插件,如下图所示:

image.png

当然你也可以创建一个属于自己的插件,本文只是教你搭建一个简单的AI Bot,所以这里就不再详细的介绍了,如果你有兴趣,可以去官网查看更多的插件的介绍:插件

工作流

工作流是一个非常强大的功能,上面的插件也可以集成到工作流中,它可以让你的AI Bot可以完成一些复杂的任务;

还是拿天气来说,我上面的AI Bot可以回复我关于天气的问题,但是我还希望它可以告诉我针对这个天气我应该穿什么衣服,这个时候我就可以使用工作流来完成这个任务;

工作流的添加和插件的添加是一样的,只需要点击+号,然后就会出现一个弹窗,如下图所示:

image.png

我们选择创建工作流,然后就会出现一个工作流的编辑界面,如下图所示:

image.png

这里只需要填写两个信息,一个是工作流名称,一个是工作流描述,名称需要符合命名规范;

而描述就很重要了,这个描述是给AI看的,描述用于给AI确定在什么时候触发这个工作流,如果有时候你的询问没有正确触发指定的工作流,那么就说明你需要调整你的描述;

点击确认之后,就会出现一个工作流的编辑界面,如下图所示:

image.png

默认是会有两个节点的,一个是开始,一个是结束,我们可以通过+号来添加一个新的节点,如下图所示:

image.png

这一块的内容非常多,为了控制篇幅,就只能简单的介绍一小部分,如果你有兴趣,可以去官网查看更多的介绍:工作流

还是那我刚说的天气来做一个工作流的例子,我们可以这样来配置:

image.png

在我这个案例中,我使用了两个大模型节点,两个代码节点,一个插件节点,一个开始节点和一个结束节点,来帮我完成这项工作,接下来我就来介绍一下我的工作流的配置:

  1. 开始节点:这个节点是工作流的开始,它接收一个参数,这个参数是我询问的天气的城市;

    image.png

    这个只有一个参数weather,这个参数通常是由用户输入的,然后会AI Bot会自动识别并传递给工作流的开始节点;

  2. 大模型节点:这个节点是一个大模型节点,它的作用是根据我传递的参数来获取天气的信息,然后将天气的信息传递给下一个节点;

    image.png

    大模型节点你就拿它当做一个AI就好了,它会根据你的输入来返回一个结果,例如我这里的输入就是根据开始节点传递过来的weather参数,然后返回一个天气的结果;

    返回的结果是通过提示词来返回的,这个提示词是我们自己定义的,例如我希望通过输入的城市来自动帮我生成一个JSON数据,这些数据格式你也可以自己定义,例如我是为了调用插件,所以我需要一个JSON数据,我的提示词如下:

     根据{{input}}来生成时间和地名的一些信息,如果没有确定时间,那么开始时间和结束时间为空,最后给我一个JSON格式的数据,JSON数据格式如下:
     
     {
     start_time: '开始时间',
     end_time: '结束时间',
     province: '省份',
     city: '城市',
     towns: '镇',
     villages: '村',
     }
     
     要求时间格式为 YYYY-MM-dd HH:mm:ss
    

    {{input}}这个语法是coze的大模型语法,指向的就是输入的参数名称,其实非常好理解,例如我输入的是北京,那么{{input}}就会被替换成北京,而最终我的提示词其实就是对AI的一次询问;

  3. 代码节点:我通过上面的大模型节点帮我处理了我想要的信息,但是输出的是一个普通文本格式的内容,我希望变成JSON数据,那么就需要代码给我处理一下,这个时候我就需要一个代码节点,如下图所示:

    image.png

    代码节点就是可以更加定制化的完成你自己需要的数据,例如我这里就是需要将大模型节点返回的文本数据转换成JSON数据,这个时候我就需要一个代码节点,然后我就可以在代码节点中写一些代码来完成这个任务;

    async function main({ params }: Args): Promise<Output> {
     const input = params.input;
    
     try {
         return JSON.parse(input)
     } catch (e) {
         return {
             start_time: '',
             end_time: '',
             province: '',
             city: '',
             towns: '',
             villages: '',
           };
     }
    }
    

    他这里使用的TypeScript语法,函数名是自己生成的,不要动它,我们只需要完成函数体的内容即可;

    函数的params就是我们定义代码节点的输入参数,返回值就是我们定义代码节点的输出参数,这个时候我们就可以根据我们的需求来完成我们的代码;

  4. 插件节点:这个节点就是用来调用插件的,例如我这里就是用来调用墨迹天气的插件,如下图所示:

    image.png

    这个节点就是用来调用插件的,我们只需要选择我们需要的插件,然后传递给插件所需要的参数,接着插件就会返回一个结果,你可以理解为一次普通的接口调用;

  5. 代码节点:这一步是我偷懒加上去的节点,因为插件返回给我的是一个JSON数据,如果我直接交给大模型去处理,那么我在提示词中就要写很多参数替换名称;

    image.png

    这里就是将插件的所有返回的数据都拿到,然后变成一个JSON字符串,最后再交由大模型进行处理,这样我就可以在提示词中只写一个{{input}}就可以了;

    async function main({ params }: Args): Promise<Output> {
    
     return {
         output: JSON.stringify(params, null, 2)
     };
    }
    
  6. 大模型节点:将最后生成的数据交给大模型节点,然后大模型节点就会根据我的描述来返回一个结果,这个结果就是我想要的信息;

    image.png

    这个节点就是用来处理我最终的结果,可以看看我的提示词:

    根据提供的JSON信息来生成一段天气描述,最后再生成一段根据天气推荐的穿衣推荐,JSON信息如下
    {{input}}
    
  7. 结束节点:结束节点只有一个输出,引用你在工作流当中的各种输出结果

    image.png

    可以看到我最终的输出结果已经是符合我的预期了,所以我可以直接发布我的工作流了;

工作流是需要试运行通过才可以发布的,试运行就是让你填写开始节点配置的输入参数,然后工作流会自动运行一次,你去查看对应的结果是否符合你的预期,如果不符合就继续调整,如果符合就可以发布了;

image.png

可以看到根据我配置的工作流,我的AI Bot已经可以回答我关于天气的问题,并且还可以根据天气的情况来给我推荐穿衣的建议。

篇幅有限,技能就介绍到这里了,如果我们只是玩玩其实了解这么多已经够用了,如果要深入也可以自己尝试这去摸索一下。

发布AI Bot

发布没啥好说的,直接点右上方的发布按钮就可以了,如下图所示:

image.png

点击了之后就会出现这样的一个确认页面, 在这个页面中,我们可以看到有一个发布记录可供我们填写,旁边有一个生成的功能,我们同样可以使用AI来生成这个发布记录,但是需要先勾选发布平台;

image.png

根据上面的需求来填写信息,接着点击发布就可以了,现在我们就可以体验自己创建的AI Bot了;

总结

这次的初体验就到这里了,文中的AI bot案例是通过coze自动为我生成的,而我也在设计并体验自己构思的一个AI bot

在这个过程中我发现通过coze来使用AI是一件非常简单的事情,同时想要用好AI也不是一件简单的事情,这需要我们不断的去摸索,去尝试,去学习;

例如在定义AI的人设这个过程,我需要为我的AI Bot设置各种边界,同时为了让我的AI Bot能正确的响应一个问询的结果,我需要不断地调整我的人设,还有工作流的设计;

而除了这些以外,coze还提供了知识库数据库等高级功能,这些功能都是为了让我们的AI更加的智能,更加的符合我们的需求;

这次就到这里了,本文只是一次简单的尝试,对于很多使用都不是很深入,同时也是因为篇幅不敢写的太长,后续如果有机会可以单独针对某一个功能模块进行深入的介绍;

现在就可以来体验我的文中设计的AI Bot了:

聊天机器人

Bot Id: 7339170332076539956