AI 初学者福音!Coze 代码节点入门超详细指南

B站影视 2024-11-27 13:25 3

摘要:之前分享的几篇内容对新手不太友好,看到小伙伴们在留言区的反馈,制作过程中会遇到各种问题:

之前分享的几篇内容对新手不太友好,看到小伙伴们在留言区的反馈,制作过程中会遇到各种问题:

工作流:各种报错,不知道什么意思;代码:编程小白,完全不懂代码,看代码像看天书,也不会写代码,很难通过代码来拓展延伸做更多其他尝试;其他:也看到有小伙伴留言问,学 Coze 有啥用啊,这里想说的是 Coze 通过最近几次大的升级改版,可以在 Coze 里通过制作模板来赚点小钱。

Tips:智能体是很多工作场景中的提效利器,对企业来说更甚,在我们 Coze 学习群里,已经有人通过给企业定制智能体来赚钱了,我们这里仅是给大家看一下,学智能体在未来更多的可能性,具体的这里不做过多介绍,大家感兴趣可自行了解哈~

好啦,回归正题,考虑到可能喜欢这篇文章的受众,对 AI、Coze 接触的阶段各不相同,后续打算尽力用通俗易懂的方式,和大家一起学习智能体(Agent),尽快成长为一个 Agent 全栈设计师!

通过这篇文章希望达成以下几个目标:

① 理解代码节点

② 使用代码节点

AI 辅编:新手友好,不懂编程也能写代码;AI 提示词:新手友好,不会写提示词,输入一句话,剩下的让 AI 优化完善。

③ 代码节点优势

我们一个个来看~

在理解代码节点前,我们先和大家一起理解下「Bot、工作流、代码节点」之间的关系,因为在 Coze 里代码不能独立使用,是要在工作流里使用的的,所以我们使用关联性的方法来理解三者。

我们使用餐厅吃饭的场景来理解三者关系:

我们进到一家餐厅:

Bot(机器人):Bot 就是这家餐厅,根据顾客的需求提供各种服务,比如推荐菜品、点餐、结账等;工作流(Workflow):工作流就是这家餐厅的各种用户服务流程,每个工作流都是一系列步骤,比如服务员推荐菜品、顾客点餐、厨师做菜、结账等;代码节点(Code Node):代码节点就是每种服务流程里的一个环节。在顾客点餐流程里,顾客点了一道土豆丝,这道土豆丝是凉拌还是清炒,小葱香菜是否有忌口等需求,都需要明确清晰告诉服务员,记录清楚,方便厨师按需求做出顾客满意的土豆丝。

顾客点餐示图:

如果我们这里的例子不够通俗易懂,大家可以使用国内 AI 大模型 Kimi 让它再多举例,来加深理解~

下图是 Coze 里「Bot、工作流、代码节点」三者的功能布局和层级关系:

三者关系:

① 项目开发:Coze 改版后,将 Bot 单独拆出来,改为「项目开发」独立模块;

② 资源库:有 6 种资源,这些资源大家可以理解为不同的积木,可以通过不同的组合,完成不同的「项目开发」;

资源共用:这 6 种资源是可以共用的,Bot1 可以使用创建的所有资源,Bot2 也可以使用,这是组件化的搭建方式,不同的资源可以理解为是不同的组件;提示词:改版后,新增了提示词模块,作为独立的资源,可以在需要的场景直接选择使用,而不需要每次写一遍,下面实操工作流里会提及怎么;

③ 工作流:目前有 15 个节点,不同的节点可以完成特定的需求场景,每个节点可以理解为是一个小积木;

④ 代码节点:搭建工作流的其中一个小积木,可以理解为代码是个智能全能小积木,它可以完成复杂信息的计算和处理,比如信息加工、拼装或者打包,让整个流程更加智能化和高效。

代码智能小积木,示图:

我们初步理解代码在 Coze 里和相关模块的关系后,再来看看代码节点的使用。

在搭建工作流的过程中,像我一样不会写代码的小伙伴们,可能会想,工作流里有那么多节点,我是不是可以不用代码节点,换成别的节点呀来实现某个功能呀,哎,这个还真可行,我们一起来看下~

我们这里参考 Coze 使用指南的代码示例,通过搭建 2 个「生成随机数」的工作流,来理解代码节点:

使用代码节点:生成随机数使用大模型节点:生成随机数

题外话(可不看):为什么用「生成随机数」做示例

写到这里,不知道有没有小伙伴和我一样在想,为什么 Coze 要用「生成随机数」这个来做示例?

我也不知道,所以让 AI 给我们解释下,AI 给了挺多理由,我这里精简下,给大家看几个容易理解的:

游戏和应用

游戏机制:游戏核心机制之一,用于生成随机事件、道具掉落等,增加游戏的可玩性和挑战性;应用功能:随机数可以用于生成验证码、随机推荐内容、抽奖等功能,提升用户体验;

模拟真实场景

随机事件:在许多应用中,随机数可以模拟真实世界中的不确定性,比如天气变化、游戏中的随机事件等,使得程序更贴近现实。决策支持:在某些情况下,随机数可以用于模拟决策过程,比如在多个选项中随机选择一个,帮助用户做出选择。

增加趣味性:

娱乐性:生成随机数可以用于创建有趣的互动体验,比如随机选择运势、幸运数字、游戏结果等,增加用户的参与感和乐趣;

总结:

使用生成随机数的例子来讲解代码节点的使用,能够展示代码节点的灵活性和实用性,同时也能引导用户理解随机数在实际应用中的多种用途。

我能想到的一个用途就是生成随机 8 位数,作为密码,当然要备份记录好,别忘了就可以~

为了方便大家更好的理解代码节点,我们化繁为简,简单些,聚焦重点,只用一个代码节点完成工作流,完整工作流如下图:

该图来自 Coze 使用指南:具体查找路径「使用指南→最佳实践→工作流使用最佳实践→生成随机数」

让我们开始来搭建吧~

① 创建工作流

操作路径:Coze 平台 → 工作空间 → 团队空间/个人空间(都可) → 资源 → 工作流,如下图:

添加工作流

工作流名称:random_number工作流描述:生成随机数

工作流默认界面:点击「确认」,进入编辑页面

开始节点:选择

点击开始节点,右侧展开编辑界面。

Tips:Coze 改版后节点编辑区,统一都在右侧(图像流除外),以抽屉的方式出现,抽屉里更多内容,会从右到左展开更多面板。

开始节点:编辑

生成随机数不需要额外的输入,所以保留一个默认的变量就足够了,删除其他的变量,如下图:

仅保留默认变量-原因:

我们这里是一个简单的工作流,多个工作流这个就不能用了,可以用单 Agent(LLM 模式)或多 Agent;后面想让 Bot 默认 100% 调用这个工作流,所以使用「单 Agent(工作流模式)Beta」这个模式,在这个模式里,「开始节点」必须只保留 1 个默认才能添加上这个工作流;使用「单 Agent(LLM 模式)」有时候不能保证 100% 调用这个工作流;正好试用下 Coze 上的新模式。

下面我们从找规律的方法,先了解下工作流里的所有节点的大概界面结构~

② 工作流所有节点

目前除了「图像流、工作流、消息」外,剩下的节点结构,都会有「输入、输出」。

输入:可以理解为,在餐厅吃饭,你告诉厨师你要吃什么;输出:可以理解为,厨师按你要求(输入)做好后,把饭菜给你。

③ 添加代码节点

添加代码节点:

点击左侧「选择节点」区,点击代码,中间编辑区会添加一个代码节点(其他节点添加也是一样的操作方法)。

代码节点-界面结构拆解:

点击代码节点,右侧展开对话框。

收起所有模块,可以明确看到界面有 3 个功能区:

输入代码输出

Tips:其他节点界面结构,逻辑与代码相同,只是不同节点功能区数量不同,比如开始节点,只有输入~

我们逐一理解下这 3 个功能区~

1)代码节点:输入

新增:可通过新增添加多行参数,点击每行后面 icon 可删除对应行;

参数名:可自定义参数名,有些「引用」上一个节点的输出(开始节点除外),选择后这里的参数名会自动填入;

参数值:有两种

引用:一般引用前面节点的输入/输出,具体引用内容,取决于我们想要在代码节点里获取什么信息;输入:选择输入,后面就变为输入框,可以输入我们想要的信息。

2)代码节点:代码

代码区默认有代码示例

我们逐一理解下代码相关的内容~

代码语言类型

点击「在 IDE 中编辑」,进入代码编程页面,代码里默认是 JavaScript 语言的一段代码示例。

目前有 2 种语言,可以通过切换选择不同的语言。

加深理解:

JavaScript、Python 等都是一种编程语言,可以理解我们现实生活中的「中文、英文」等语言。

中英文:是我们现实世界对话沟通使用的语言;Python 等:是我们和计算机对话沟通使用的语言。

两种语言区别:

JavaScript:就像是机器人在互联网世界里的语言。当你在网上冲浪时,JavaScript 帮助你和网站互动,比如当你点击一个按钮,JavaScript 就会告诉机器人(计算机)该做什么。Python:则像是机器人的多功能语言,它不仅能够在网上帮助你,还能做很多其他事情,比如处理数据、做计算、画图、甚至自己玩游戏。Python 让机器人(计算机)在多个领域都能理解和执行任务。

这也是我们通常使用 Python 语言的原因吧~

默认代码:我们将这段代码拆成 3 段,使用比喻来理解下

示例代码:

让我们用餐饮外卖机器人接单出单的流程做比喻,来解释这段代码~

第一段

第二段

这段代码里最终会输出 3 个信息,具体内容及释义分别是:

第三段

总结

第一段、第三段:一般是固定的结构;

第二段:重点,是具体要生成的信息内容。

一句话总结,这段代码的作用就是:使用异步处理来接收信息、处理信息、将准备好最终信息展示出来。

关于代码编程的更多详情细节,比如:

{}:一个大括号,对象(Object),表示创建一个字典(一种键值对的数据结构);

:一个中括号,数组(Array),表示创建一个列表;

,:英文逗号,用于分隔列表中的元素或字典中的键值。

还有更多其他信息都是什么意思,如果大家想了解,可以给我留言,后面再写~

③ 代码节点:输出

默认输出字段,如下图:

这里之所以默认输出是这 4 个信息,是基于代码的默认示例,内容是一一对应的,如下图:

代码里的输出和最终输出对应关系:

输出的作用

输出这里如果不设置,最终输出就不显示,如下图:

节点测试小技巧:

我们搭建工作流的时候,可以每个节点先测试下,没有报错和异常后,再往下走,如果我们每一步都测试通过,那么最终输出大概率是成功的。

输出的配置

变量名:输出里的变量名,我们添加不同的变量,看下不同的输出,加深理解:

变量设置小提示:

变量类型:选择 Object 时,后面才会出现+加号;点击加号:可以添加子内容

变量类型

Tips:

大家想加深理解各个节点,可以不断地去尝试,去玩,这种方式能更快更直观的,帮我们理解节点运行输入、输出的完整逻辑。

通过上面的内容,我们对 Coze 里的代码有了一些理解。

我们下面要做的是用代码节点,来实现「生成随机数」的工作流啦,因为我目前还不会自己写代码(正在学习中...),所以下面会使用 Coze 自带的 AI 来生成代码~

④ AI 编程代码

在代码编辑面板的代码区,点击右侧「在 IDE 中编辑」

IDE:集成开发环境(Integrated Development Environment)的缩写,它是一种特殊的软件应用程序,用于帮助程序员编写、测试和调试代码。

进入代码编写界面

语言:默认是 JavaScript,切换成「Python」;AI 编写代码:点击左下角「尝试 AI」,左上角会出现一个长条编辑对话框,如下:

1)AI 编码输入

我输入的是下面这个内容,清楚的告诉 AI 我们要什么,它要做什么。

这点很重要,因为 AI 生成的内容随机性挺大,我们输入的信息越明确清晰,结果越符合我们的预期 。

Prompt(提示词):请帮我写一个可以生成随机数的代码,要求是 8 位随机数,由字母和数字组成

输入提示词,点击右侧「发送」icon:

生成后的代码,看不懂,没关系,先点「接受」试试~

点「接受」后,AI 编程 代码如下:

2)AI 编码测试

我们来测试下,AI 生成的这段代码能不能「生成随机数」:

点击测试 icon:就是下图右上角那个像播放的 icon

输入:随便输入什么都可以,我这里输入 1

运行结果:点击「运行」,运行结果成功,生成一个 8 位的随机数:mJ8TIcM7

Tips:

代码里的变量一定要和输出里的变量名保持一致,要不然输出里会为空。

代码里是 key0,我们输出变量也是 key0,如果不想使用 key0,可以在代码里更改,保持统一就可以~

让我们一起再加深理解,来改个变量名,一起看看怎么改~

改变量名:我在代码和输出里变量都改为「output」,变量名保持一致,输出成功,如下图:

变量名不一致:代码里不修改,将输出变量改为「key0」,变量名不一致,最终输出 null,如下图:

Tips:代码里的变量和输出的变量名不一样,最终输出就会是 null,就是空的意思。

通俗点理解:运行后,系统按我们的配置输出 key0 去代码里找这个 key0 的变量名,但是代码里没有找到这个变量名,所以它就只能返回空。

这个也是我们测试工作流时常遇到的一个问题。

代码节点阶段性完成,下面是结束节点~

具体配置如下图:

回答内容:这里一般是要输出参数名,如果有多个参数名,「回答内容」里也需要一一对应上,否则最终输出里会不显示。

{{}}:这里的 {{}} 是一个模板标记,用于在最终输出中插入变量 output 的值。

Tips:

这里输入{{}}后 ,鼠标放在里面,会自动出现上面添加的变量名,点击下,就会自动填充进去,如果有多变量名,这里也会显示多个;如果{{}}已数据,鼠标放进去,所有变量名会再次出现,可以更改。

完整工作流,如下:

我们使用代码节点搭建的「生成随机数」的工作流就完成啦~~

下面开始使用其他节点,搭建「生成随机数」的工作流~

以下有些省略的步骤和上面代码节点相同~

① 创建工作流

添加工作流

工作流名称:random_number_NoneCode工作流描述:使用其他节点生成随机数

② 添加大模型节点

添加大模型节点:

点击左侧「选择节点」区,点击大模型,中间编辑区会添加一个大模型节点。

模型输入系统提示词用户提示词输出

这篇文章主角是代码,所以这里大模型界面拆解就不逐一理解了,后面到大模型节点再详写~

1)大模型:模型

选择一个模型:

2)大模型:输入

输入参数名,引用开始默认值

3)大模型:系统提示词

系统提示词这里有 2 种方式可以写:

提示词库:我们上面介绍 Coze 里代码相关的三者关系时有提到,改版后资源里新增提示词独立模块,就是在这里的提示词库可以选择直接使用;AI 自动优化提示词:根据输入的简单提示词,优化为结构化的提示词。

提示词库

新建提示词推荐团队

逐一看一下~

(1)新建提示词:如果没有可用的提示词,可以使用「新建提示词」,这里也有 AI 优化帮助写提示词。

(2)推荐:是 Coze 平台内置的提示词框架模板,可以按给出的框架写自己场景需要的提示词。

(3)团队:我们自己添加的提示词,下面这个是我已经添加的一个提示词。我们这里直接点击「插入提示词」,会直接填入进系统提示词里。

AI 自动优化提示词

点击系统提示词右上角 icon,出现 AI 自动优化提示词对话框,这里主要介绍 写提示词的 2 个功能:

自动优化:根据输入内容,优化完善结构化提示词;根据调试结果优化:对已生成的提示词进行修改。

(1)自动优化:输入提示词

Prompt(提示词):生成随机数,要求是 8 位随机数,由字母和数字组成

点击输入框右侧发送 icon,自动生成结构化提示词,点击「替换」直接填入进系统提示词内,如下:

如果我们觉得它生成的不好,可以重新生成,

如果觉得是一部分不满意,可以使用另一个功能进行修改。

(2)根据调试结果优化

点击进入修改对话框,有 2 个必填项,一个是告诉它那里不满意,另一个输入我们具体要修改的内容。

发送修改后生成如下,只增加了示例,其他没有更改,我们点击「替换」会自动填写进「系统提示词」。

4)大模型:用户提示词

可不填,这里也没有 AI 辅助写提示词。

5)大模型:输出

使用默认即可

6)测试大模型节点

点击测试 icon,随便输入一个信息,我这里输入的是 1,点击运行,运行结果最终输出成功生成一个 8 位随机数。

③ 结束节点

输出:参数-引用-「大模型」,具体配置如下

完整工作流,如下:

我们大模型节点搭建的「生成随机数」的工作流完成啦~

我们通过上面这个「生成随机数」的例子,大家可能觉得,既然不使用代码也能实现我们的需求,那是不是就不用学代码了。

不是的哦,我们上面的例子是很简单的,可以通过其他节点来实现。

但是我们实际业务场景中,都是一些复杂的任务,使用其他节点是很难实现我们的需求的。

代码在很多业务场景里是不可替代的,下面我们一起看看,和其他节点比使用代码节点的优势~

四、代码节点优势

1. 优势

和其他节点比使用代码节点的几个优势:

① 处理用户输入

灵活性:代码节点可以根据用户的输入进行复杂的逻辑处理,而其他节点通常只能执行预设的操作;动态响应:可以实时处理用户输入,生成个性化的回复,提升用户体验。

② 自定义逻辑

个性化:用户可以编写特定的逻辑来满足独特的需求,比如根据不同的输入生成不同的输出,这在其他节点中往往难以实现;复杂计算:代码节点可以执行复杂的计算和数据处理,其他节点可能无法支持这种灵活性。

③ 数据格式化

自定义输出:代码节点允许用户根据需要自定义输出格式,确保信息以最易于理解的方式呈现;多样化数据结构:可以返回多种数据结构(如字典、列表等),而其他节点通常只能返回简单的文本。

④ 增强互动性

智能对话:通过代码节点,机器人可以实现更复杂的对话逻辑,提供更自然的互动体验;实时反馈:可以根据用户的输入实时生成反馈,增强用户的参与感。

⑤ 灵活性和扩展性

易于修改:用户可以随时调整代码以适应新的需求,而其他节点的功能通常是固定的,难以进行个性化调整;功能扩展:可以轻松添加新功能或改进现有功能,支持不断演进的需求。

2. 实例对比

我们以第 1 个「处理用户输入」优势为实例,通过搭建 2 个「今日运势」工作流来对比下~

代码节点:根据用户输入进行复杂的逻辑处理,生成个性化的回复;其他节点:通常只能执行预设的操作。

「今日运势」工作流

2 个工作流完整截图如下,为直观对比代码和其他节点的区别,下面两个工作流,除了「代码、文本处理」2 个节点配置信息不同,其他所有节点配置内容一模一样。

使用「代码」节点

使用「文本处理」节点

除了以下 2 个节点配置不同,2 个工作流的其他所有节点配置都一模一样,2 个节点具体配置截图如下:

「代码」节点配置

「文本处理」节点配置

代码节点的内容:以下代码为 AI 编写,大家如果想做这个工作流,可以使用 AI 编写,或者复制以下代码试试~

3. 最终输出对比

① 代码节点

输出结果:生成个性化的回复,每次输入都会生成不同的内容。

试运行提示词:今日运势

试运行提示词:运势

② 文本处理节点

输出结果:通常只能执行预设的操作,输出内容固定化,缺乏个性化。

试运行提示词:今日运势

试运行提示词:运势

4. 总结

使用代码节点的好处在于,它提供了更高的灵活性和自定义能力,使得开发者能够根据具体需求实现复杂的逻辑和功能。而其他节点则往往局限于预设的操作和简单的交互。

这使得代码节点成为构建智能、个性化机器人的关键工具。

以上就是本次 Coze 代码节点入门内容,感觉写的有些长,在开始写这篇文章前,我也没想到会这么多文字。

如果大家也觉得繁琐,可以留言,下次我们可以精简些,或者拆分成几个文章,每个文章写一部分,就是怕拆分后大家看起来会不连贯,看大家想怎么看~

如果大家有其他问题,或者想做的工作流、Bot,都可以留言,我看到后都会一一回复,这篇先到这里吧。

下篇再会~

来源:梦想精通设计

相关推荐