【GPT】Coze使用开放平台接口-【4】创建机器人

news2024/9/28 9:31:29

在前面三篇,我们分别创建了插件,插件里面添加了多个工具。接着,我们把插件添加到工作流内,成为一个开放平台API的调用节点,从而创建出一条业务流。分别是,语音伪造检测工作流,以及通话语音内容分析工作流。有了工作流,表示我们可以通过 API 调用,但是终端客户未必会用 API 去调用,因此我们通过创建机器人,并且发布到对应的平台来应用。

机器人的配置有很多,我们就简单地从如何把工作流加到机器人里面即可。


1. 语音伪造检测机器人

我们在构建这个机器人的时候,其实配置基础的模块,prompt,工作流,开场白也就够了。不过,由于鉴权的特殊性,所以还运用了,数据库和快捷指令。

1.1. 创建 bot

进到个人空间 -> Bots -> 右上角点击创建 Bot。输入名称以及介绍就可以了,图标可以让 coze 自动帮你生成。

在这里插入图片描述

在这里插入图片描述

1.2 添加开场白

设置开场白可以让用户知道,你这个机器人是做什么的,是一个富文本的编辑框。下面也可以配置开场白的预置问题,会出现在开场白下方,让用户去点击,不过我们不需要就关掉了。

在这里插入图片描述

1.3. 添加工作流

如果后面要发布,就必须选择已发布的工作流,不然要发布这个机器人的时候是不允许发布的。

我们点击要添加的工作流即可,添加前也可以看一下这个工作流的输入,以便选择正确的那个工作流。

选择工作流后,会创建一个副本到自己的工作流里面,而不是直接引用别人或者自己已经创建好的工作流。

在这里插入图片描述

添加好后的样子

在这里插入图片描述

1.4. 写 Prompt

写 prompt 可以参考吴恩达老师在 DeepLearning 上的提示词课程,遵循他的方法就行,或者写完后让 coze 给你优化。

v1

# 角色
你是一个精准的语音伪造检测机器人,能够将用户输入的 app_id ,app_sercrect, file_url 和 ext 信息,会立即调用 speech_deep_fake_detect_2 工作流,并将返回结果原封不动地输出给用户。

## 技能
### 技能 1: 处理文件并输出结果
1. 收到用户提供的 file 信息,即刻调用 speech_deep_fake_detect_2 工作流。

## 限制:
- 只处理与语音伪造检测相关的操作,拒绝处理无关任务。
- 严格按照上述流程和步骤进行操作,不得随意更改。
- 输出的结果必须准确、完整,不得有遗漏或错误。

这个是第一版本的提示词,告诉机器人是干嘛的,然后指定输入什么参数后,调用什么工作流。接着再明确机器人的技能,与限制。

如果不告诉机器人要调用工作流,机器人是不会自己去调用的,或者大部分情况下不会去调用的,因此需要说清楚什么情况下去调用工作流。

这样子是可以调用到工作流,但是每次都要输入这 4 个参数,挺麻烦的。所以就要记下来用户的应用,用到数据库。见1.5。

v2

改版后,就指定,在输入什么参数后,记录到某个数据库。我原本以为可以写简单点,但是时好时坏,所以我干脆就直接写清楚一点,什么参数写到哪个表里面。

那为了让用户下次进来不用再传 app id 和 app secret 就需要指定一个技能。再次进入的时候,会去根据用户 id 关联数据库里面的数据。

# 角色
你是一个精准的语音伪造检测机器人,能够将用户输入的 app_id 和 app_sercrect 妥善记录在数据库 user_app 中。当用户再次进入时,可依据其用户 id 直接关联相关数据,无需重复输入。当用户提供 file_url 和 ext 信息,会立即调用 speech_deep_fake_detect_2 工作流,并将返回结果原封不动地输出给用户。

## 技能
### 技能 1: 记录用户数据
1. 当用户输入 app_id 和 app_secret时,将其完整准确地记录到数据库 user_app的app_id和app_secret中。
2. 当用户上传语音后,即获取到file_url后,将其file_url和ext完整准确地记录到数据库 file的file_url和ext中。
### 技能 2: 关联用户数据
1. 用户再次进入时,根据用户 id 迅速从数据库中关联获取对应的 app_id 和 app_secret。
### 技能 3: 处理文件并输出结果
1. 收到用户提供的 file 信息后,即刻调用 speech_deep_fake_detect_2 工作流。

## 限制:
- 只处理与语音伪造检测相关的操作,拒绝处理无关任务。
- 严格按照上述流程和步骤进行操作,不得随意更改。
- 输出的结果必须准确、完整,不得有遗漏或错误。
1.5. 创建数据库

可以让 coze 根据你的提示词去创建数据库,也可以自己去创建,写清楚就行。

我创建了 user_app 和 file 表。user app 用来记录用户的 app 信息,不用每次进来都要再输一次。file 用来记录每次上传的语音,用来记录复查用。

在这里插入图片描述

在这里插入图片描述

1.6. 添加快捷指令

我们的 prompt 里面虽然写了 能够将用户输入的 app_id 和 app_sercrect 妥善记录在数据库 user_app 中 ,但是用户怎么输入,会不会这么输入,我们其实不知道。如果要让客户输入,应该规范客户的输入,就输要他们输入的数据即可。因此,才考虑加快捷指令。添加了 2 个快捷指令,分别是设置应用,上传语音。

快捷指令,就会出现在输入框上方,点击就会弹出要让用户输入的参数,跟表单一样。

当然用户自己输入也是可以的。

设置应用

按钮名称,指令名称,指令描述就按照实际的填写即可。我们需要让用户输入 app id 和 app secret,所以在组件就输入这两个参数。输入后的结果,我们需要发送给大模型做 input 才知道结合 prompt 要做什么。因此,在指令内容里面,就需要拼接或者说模式化,我们要发送给大模型的 input。后面我再看下实际的效果。

在这里插入图片描述

上传语音

上传语音我们需要用户传路径,那怎么办,有些用户语音都是在本地没有路径。所以这时候,选择快捷指令是最好的方法,参数 file_url 的类型选择上传文件,还可以对文件类型做约束。不用担心说我传的是文件,怎么传给大模型。在指令内容里面拼上 file_url 后,会自动地把上传的语音文件改成一个在 coze 服务器的可访问的地址传给大模型。

当然用户要直接填写可访问的地址也是可以的,旁边有个按钮点击就可以变成输入框。

在这里插入图片描述

1.7. 测试效果

先设置应用,图片我是拼接的,忽略变量。

可以看到大模型收到我创建好的应用后,会把 app id 和 app secret 记录到数据库里面,可以在右上角有一个 Memory 里面已存数据库查看。

在这里插入图片描述

再上传语音,左边是我直接传 url,右边是我重新上传一条语音的结果,不影响。

可以看到大模型在收到语音后,会先去把 file 数据写入到 file 数据库,然后再去调用工作流。虽然 input 里面的 file_url 用的是文件名,但是下面大模型调用工作流的时候,file_url 已经转成可访问的地址了。这也是为什么在设计插件里面的工具的时候,流媒体文件建议用 url 的方式传的原因。

最下面就是输出的结果,这个数据接口也就是我们在工作流里面指定的 output。

在这里插入图片描述

2. 通话语音总结机器人

这边我们就不再重复创建的流程,我们直接看最终的效果。一样我们也是配置了快捷指令,来方便用户的输入。大模型,也是调用了 call_record_summary 来做分析。

在这里插入图片描述

最后的结果,还记得的朋友,分为 3 块:

  • 通话总结
    • 客户问题
    • 客服解决方案及提供的信息
    • 通话中提取的信息点
  • 分离后的语音数据,合并成了一条 2 个声道的语音
  • 语音识别的内容

可能最后语音识别的准确率并没有到90,但是大模型依旧可以通过上下文去分析通话的内容

在这里插入图片描述

3. 发布

在这里插入图片描述

发布成功后,就可以在 Bots 商店找到 语音伪造检测机器人 啦,这个 app id 和 app secret 可以给大家试用但是次数有限

  • fd3a68624f194edead2935e54bad8cb4
  • 8cd69d45cd504b519ab0685508c37584

在这里插入图片描述

4. 总结

其实机器人里面还可以很多优化的地方和联动的地方,比如说语音伪造检测机器人里面做完一个动作后,可以配置引导语,引导进行上传语音。通话语音总结的,可以再配置其他工作流,抽取出来通话内容里面的意图,姓名等信息。不过这个文档也只是简单地讲一下,怎么在机器人里面配置工作流,以及如何触发到工作流,并且如何让用户更方便或者更有针对性地输入。
下一篇,我们讲开始使用 API 来调用工作流,Coze使用开放平台接口-【5】API 调用。


上一篇:Coze使用开放平台接口-【3】创建工作流-通话语音结果分析工作流

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

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

相关文章

day14JS-正则表达式

1. 什么是正则表达式 正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符"),可以用来描述和匹配字符串的特定模式。正则表…

SRA ToolKit(v 3.1.1)安装和使用(Bioinformatics tools-032)

01 检索数据 run就是数据,如SRR26717485 SRA 档案数据通过 SRA 加载过程进行标准化,并由 SRA 工具包用于读取和生成如 FASTQ、SAM 等格式。默认的工具包配置使其能够通过登录号查找和检索 SRA 运行数据。 现在,公共 SRA 文件可以通过 GCP 和…

[WCT系列(四):BLASTSyncEngine

WCT系列(一):WindowContainerTransaction类详解 WCT系列(二):SyncTransactionQueue类详解 WCT系列(三):WindowOrganizerController WCT系列(四)&a…

分治,CF 768B. Code For 1

目录 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 二、解题报告 1、思路分析 2、复杂度 3、代码详解 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 https://codeforces.com/problemset/problem/768/B 二、解题报告 1、思路…

python-读取word中的内容

doc Document(rD:\xxxx\xxxx\xxx.docx) #读取word中所有内容 for p in doc.paragraphs print(p,p.text) #读取指定段落中的所有run(文字块) for run in doc.paragraphs[1].runs: print(run,run.text) #读取word中所有表格内容 for 表格 in doc.tables: print(表格) for 行 in …

什么是家庭全光组网和企业全光组网,两者有什么区别?

家庭全光组网和企业全光组网虽然都是基于光纤技术来实现高速网络连接,但它们在应用场景、规模、需求和技术细节上存在一些差异。 家庭全光组网 目标用户:面向个人家庭用户。 规模:一般为单个住宅内的网络覆盖,或者小范围内的多个房…

零基础泛微二开指南

前言 在泛微系统上开发一个自定义post接口 准备 首先准备工作要做好,安装一个泛微,之后所有的操作要在泛微的安装目录操作 参考官网安装,挺麻烦的; IDEA 1、直接新建项目 new ->Project from Existing Sources.直接打开泛…

uniapp微信小程序page-container导致滚动失效/向下偏移,返回上一页/左滑取消返回上一页

项目场景: 提示:这里简述项目相关背景: 前提: 使用uniapp来做的微信小程序 有两级tab页面 要求手机的两边往中间滑时 要求(调用手机的物理返回按钮--有震动感) 返回上一页。具体如下图箭头所示&#xf…

数据防泄漏软件10款超好用推荐|2024数据防泄漏软件排名

在2024年,数据防泄漏软件市场涌现了多款优秀的产品,它们通过不同的技术手段和策略,为企业提供全面的数据安全保护。以下是10款超好用的数据防泄漏软件推荐及简要排名。 1.安企神 特点:专为企业设计的数据安全防护工具&#xff0c…

【零知识证明】MiMC哈希函数电路

1 哈希电路 哈希函数电路实现: pragma circom 2.0.0;// y (x k c) ^ 5 // 输入信号x, k ,常量c // base x k c // base2 base * base // base4 base2 * base2 // base5 base *base4 // 输出 ytemplate MIMC5(){signal input x;signal input k…

使用Aqua进行WebUI测试(Pytest)——介绍篇

一、在创建时选择Selenium with Pytest 如果选择的是Selenium,则只能选择Java类语言 选择selenium with Pytest,则可以选择Python类语言 Environment 其中的【Environment】可选New 和 Existing New :选择这个选项意味着你希望工具为你创…

【Go函数详解】二、参数传递、变长参数与多返回值

文章目录 一、传递参数1. 按值传参2. 引用传参2.1 特殊情况2.1.1 切片slice2.1.2 字典map 二、变长参数1. 基本定义和传值1.1 基本定义1.2 传值1.2.1 普通传值1.2.2 传递切片 2. 任意类型的变长参数(泛型) 三、多返回值1. 命名返回值 一、传递参数 1. 按…

破解电商数据分析难题,优化运营策略的秘诀

在电商行业中,数据分析是不可或缺的一部分。它能帮助商家精准掌握市场动态,优化运营策略,从而提升销售业绩。然而,面对大量复杂的数据,许多电商运营者往往不知道从哪里开始分析。那么,电商运营究竟如何有效…

优可测白光干涉仪助力红外探测行业发展——晶圆衬底检测

从18世纪红外线被发现,到19世纪红外探测器的发明。至今,随着工艺更新迭代,红外探测器朝着多波段、大面阵、高分辨率、低成本量产快速发展。 今天,小优博士带您探索红外探测的奥秘。 一、红外线是什么 红外光是一种电磁波&#x…

【 OpenHarmony 系统应用源码解析 】-- Launcher 初体验

前言 最近因为业务需要,需要做一款 UI 定制的鸿蒙 Launcher,于是就开始了「找到代码」、「研究代码」、「魔改代码」的套路流程,仅以此文章作为知识备份和技术探讨所用,也希望能给其他小伙伴提供一些源码的解析思路,方…

移情别恋c++ ദ്ദി˶ー̀֊ー́ ) ——8.stackqueuepriority_queue(模拟实现)

1.stack 可通过模板使用其他类来建立stack&#xff08;如vector&#xff0c;list&#xff09; #include<vector>namespace zone {template<class T,class container> //两个模板参数class stack{public:void push(const T& x){it.push_back(x); //使用it的p…

【Linux】命令简介------迅速掌握Linux命令

目录 Linux 命令 &#x1f354; ls命令 &#x1f354; cd 和 pwd命令 &#x1f354; 相对路径和绝对路径 &#x1f354; 文件/文件夹的创建以及文件内容的浏览 &#x1f354; 文件的复制,移动和删除 &#x1f354; 文件的查找 &#x1f354; grep 和管道 &#x1f354…

Windows11安装SqlLite、Navicat Premium 15连接SqlLite、Springboot集成SqlLite

一、Windows11安装SqlLite 1、下载安装包 地址&#xff1a;SQLite Download Page 2、压缩包解压 3、配置系统环境变量 4、验证安装是否成功 打开命令提示符&#xff0c;输入 sqlite3 5、创建数据库文件 新建文件重命名为你想要的数据库名称&#xff0c;文件后缀改为.db 二、…

【微信小程序】如何触发按钮事件,例如调起微信客服

需求 实现一个如下图的效果, 点击客服按钮, 调起微信客服功能, 需要和button组合使用 效果图 实现思路 客服只能通过button按钮调起, 所以我们需要写一个button按钮, open-type“contact”, 然后把它隐藏起来。给客服图标加一个label, 设置for“btnId”, 这样点击图片就会触…

微服务即时通讯系统环境搭建(客户端)

微服务即时通讯系统环境搭建(客户端) 前言 今天开始&#xff0c;我们要开一个新坑&#xff0c;我们将它称作微服务即时通讯系统。说到即时通讯系统&#xff0c;大家肯定能想到如同“微信”这样的app。那么没错&#xff0c;这次这个项目就会像微信一样&#xff0c;当然功能肯定…