AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


扣子Coze智能体开发实战教程 | 智能体开发
发布日期:2024-06-02 19:32:35 浏览次数: 2071


前面写过几篇AI场景应用、智能体开发平台介绍的文章,有同学私信我发布的智能体,是怎么做出来的?
今天这期文章,就以我前段时间在扣子Coze平台开发的智能体——AI投标助手为案例,详细拆解这个智能体的开发过程,给大家提供一份智能体开发攻略。
目前这款小众的智能体上线不到1个月,有近120人使用,超过500次使用。位列效率工具类目的前80名(整个效率工具板块大概有近800-1000个bot,之前是前50名),在扣子商店搜索关键词“投标”,差不多受欢迎度在30多个同类Bot排名Top1或Top2
AI投标助手基本信息如下
在扣子上的使用地址为:https://www.coze.cn/s/iYEcHfpq/
也可以在扣子Bot商店中搜索:“投标助手”。

如果大家觉得这篇文章太过专业,我不需要自己开发智能体,也可以看往期的这2篇文章,主要讲了智能体、提示词的业务场景使用。
用Kimi速读招标文件,准确率居然100% | AI场景应用
Kimi+扣子Coze,我零门槛制作了一个好用的智能体Agent | 智能体开发


00 Bot开发概览


目前国内的智能体开发平台,个人感受,扣子的操作便捷性、丰富性是最好的。
扣子的智能体开发界面如下:
包括4大部分:
1.基本编码模式设置
2.人设与回复逻辑开发
3.技能设置
4.预览预测试调优
我将以“AI投标助手”为案例,详细拆解每个模块的开发过程、开发技巧及注意事项。

01 基本编排模式设置


编排模式包括2个部分,一是Agent工作模式设置,二是基础大模型选择。
1.Agent工作模式设置
点击Agent模式三角形,会显示单Agent和多Agents两种工作模式。
什么是多Agents模式呢?
多Agents是比较复杂的Bot开发模式,本文仅做简单介绍,对于刚入门的同学而言不太容易掌握,后续再做详细攻略。
通俗理解,多Agent就是把多个有不同对话功能的Agent串联在一起,为了确保串联的多个Agent能够在需要调用他们的时候发挥作用,就需要通过流程的方式,设置Bot的启动方式、用户指令流向、Agent的触发方式、返回方式等,就像工作流程一样,需要明确各节点的输入、输出、流转、关联关系。
显然多Agents模式处理的场景更加复杂,功能也更加强大。多Agent模式下,每个Agent的提示词可以写的简单、专一。如果要用单Agent实现多Agents的功能,则需要写非常复杂、冗长的提示词,而且很容易运行的时候出现模型理解偏差,功能发挥不稳定。
对比来看,单Agent,就是只有一段提示词,整个Agnet的问答都是通过这一段提示词控制。
这里大家不免会问,单个Agent用的是一段提示词,我直接和模型对话输入提示词不就好了吗,为什么还需要专门通过Agent。
为什么我就不做解释了,吴恩达的文章已经给了回答。

我这里通过亲身测试,告诉大家一个事实结论:
从AI场景应用的针对性、输出质量来看,Agent模式是远远强于日常的AI模型对话的。
多Agent工作流程模式>单Agent模式>大模型问答。

好了,回到Bot开发实操,这次我先先选择单Agent模式,因为我的bot是投标文件阅读和关键信息抓取,任务相对专一,无需选择多Agent模式。

2.模型设置

这一步至关重要,这里是确定你的Agent用什么样的大模型来执行用户指令。大模型的能力、擅长不同,对输出质量有直接影响。

除了选择大模型,还需要设置模型的具体参数,模型参数同样对输出质量有直接影响。

目前国内版扣子可以有自家的豆包模型(之前叫云雀模型),和第三方kimi模型(上个月刚接入),kimi模型的接入,对于扣子平台上开发Bot加持了不少。

AI投标助手经过测试,最终选择了kimi模型,毕竟Kimi的看家本领就是长文档解读,AI投标助手的主要功能就是要对上传的招标文件内容进行解读。

kimi提供的三个基础模型,根据你的bot生成文本长短选择,当然你不放心可以选择参数稍微大一点的,这个并不影响输出质量。我选择了moonshot-v1-128k。

  • moonshot-v1-8k: 它是一个长度为 8k 的模型,适用于生成短文本。

  • moonshot-v1-32k: 它是一个长度为 32k 的模型,适用于生成长文本。

  • moonshot-v1-128k: 它是一个长度为 128k 的模型,适用于生成超长文本。

接下来是模型的具体参数配置,kimi模型配置有3个参数:

(1)回复随机性

这个在GPT的专业说法叫温度。通俗理解就是大模型在回答问题时,你希望他在标准答案基础上自由发挥一些,还是严格按照标准答案回答。不同的应用场景,这里选择的参数就不同。

举个例子,AI投标助手需要帮助用户找到投标文件中关于开标时间、地点、预算金额、评分标准等信息,我们希望模型的回答一定是十分精确的。

如果我们开发的是一个情感聊天Bot,那自然是希望他的回答不要千篇一律,太刻板,也就是需要有温度一些。

这样你就懂了吧,所以AI投标助手我设置的回复随机性是0.1,数字越小,表示回答的随机性越低、越精确。

(2)最大回复长度

用于控制Bot问答输出的文字多少,专业词叫 Token 。通常 100Tokens 约等于 60 个中文汉字。这个设置也不是越长越好。

(3)鞋带上下文轮次

设置带入模型上下文的对话历史轮数。轮数越多,多轮对话的相关性越高,但消耗的 Token 也越多。


AI投标助手的3个参数设置如下:

以上,就完成了Bot编排模式的设置。


02 人设与回复逻辑开发


敲黑板:这一部分是最重要的,也是最难的。

模型回答效果的好坏,核心取决于提示词设计的专业水平。
Bot的提示词相比于日常模型对话的提示词,要复杂很多,所以扣子定义为“人设与回复逻辑”这要求开发者即熟悉提示词工程,也要有很强的业务场景专业知识,才能写出好的回复逻辑来。
这里我就将AI投标助手的提示词的重点内容给大家做一个公开分享,希望大家能够体会提示词的开发技巧。
AI投标助手的人设与回复逻辑的框架由四部分构成:角色、技能、知识、限制。这也是非常重要且常规的四件套。
1.角色

紫色字体为提示词内容引用

# 角色

你是一位专业且出色的标书分析与制作人员,拥有极强的长文档阅读、解析和上下文理解能力,能迅速阅读用户上传的各类招标文件,并精确找出招标文件中的关键信息和具体要求。

这一段是定义了Bot的人设,非常重要。我将AI投标助手的角色定义为标书分析与制作人员,并且对他的核心能力、工作流程做了精准、简洁的描述,以确保模型能够按照这样的角色思考和开展工作。

2.技能

## 技能

### 技能 1:按以下固定格式输出

- 针对每一个关键词,按照“关键词、原文内容、所在章节、所在页码”输出。输出覆盖提示词中关键词库的所有关键词,按关键词库顺序逐一输出。关键词库未覆盖的关键词,也需要一并输出。

- **关键词**:按顺序数字编号和关键词名称,字体加粗,不显示 **关键词**。

……

- **所在页码**:输出原文内容所在文档的具体页码,按照“第某页”的格式输出,需要输出关键词所在的文档的所有页码。

……

### 技能 3:按照以上固定格式回答用户针对上传文档的提问。

- 若用户未上传文档,可以调用知识库、网络搜索及模型能力,回答用于关于招标文件阅读技巧、投标技巧相关的问题。

这一段是对Bot在既定人设下,具体技能的描述,模型通过这些技能的掌握,从而给出高质量的输出。

AI投标助手的核心技能包括2大部分,第一,能够全面、详细的阅读和理解用户上传的招标文件,第二,能够按照合理的格式,准确无误,繁简适当的输出招标文件的关键信息。

所以,我在技能开发上的提示词,就重点对这两方面进行设计,通过这些技能的设计,达到了以下的精准输出效果。

3.知识

## 知识

### 招标文件的关键词标题/关键信息通常包括以下关键词库的列项,这有助于你增强对用户上传文档的关键信息定位和理解。你也可以基于大模型能力,知识库,和联网搜索增强对这些关键词的语义理解。

……

这一部分并非所有Bot都必须设置。不过为了提高Bot的专业性,独特知识的定义还是非常重要的。

对于AI投标助手而言,一份招标文件到底哪些信息是关键的,这个体现出了Bto和大模型在专业知识深度方面的区别了。

通常大模型的泛知识库很难精准把握招标文件的全部关键信息,我通过前期测试,没有加入知识模块时,大概每次就只能读取出来6-10项信息,但在提示词加入知识模块后,就可以输出长达20多项的关键信息。

如果你希望你的Bot在场景应用上比通用大模型更加专业,就需要设置知识模块,或者部署私有知识库。

4.限制

## 限制

- 仅限于对招投标知识的对话问答,以及对用户上传文档的内容进行对话问答。

- 按照给定的技固定格式输出。

- 基于招标文件内容提供客观信息,不提供个人意见或偏好。

- 若用户未上传文档但用户请求解读招标文件时,提醒其上传后再进行标书速读与关键信息整理。

这一部分的内容,是为了规范Bot输出行为的,AI投标助手的工作触发是用户必须上传招标文档,所以要限制Bot不能在用户没有传文件的情况下,胡乱回答。即使回答,也是对招投标相关知识的回答。这样就能确保你的Bot专业形象的树立,并且引导用户正确使用bot。
比如你开发了一个情感问答Bot,用户问他天体物理,肯定是很容易翻车的。

提示词一定不是一次性就能写好的,一个好的提示词通常需要十几轮、几十轮的测试才能确定下来。
大家写完第一遍提示词后,建议使用右上角的优化功能,扣子的提示词优化真的非常好用,优化后的提示词比我们自己写的更加精炼、结构化,当然也需要你来判断,哪些是你不希望他优化的。

03 技能设置


Bot开发页面中间的部分,是各项技能设置,项目比较多,大家到这块很容易犯晕。
坦白讲我也没有把每个项目都研究的很透彻,不过对于单Agent开发而言,基本上只需要要对插件、知识库(选用)、对话体验几个项目设置就可以了。工作流、触发器、变量、数据库等对于比较复杂的Agent或者多Agents开发才用得上。
今天我们先说简单的。
1.插件
扣子的插件是目前国内智能体开发平台最为丰富的,有了插件,也就大大降低了智能体开发的难度,如果没有插件市场,零代码开发智能体基本不可能。
点击加号,就会看到弹出框有很多可用的插件。

插件是需要根据自己的Bot功能需要来选择的,不是越多越好,也不需要很多。

单Agent,有2-3个插件就足够了。

AI投标助手,其实只需要一个核心插件,就是能够实现用户上传文档,模型调用文档的功能。

扣子官方做了一个Link Reader的插件,专门读取网页、PDF、抖音视频内容,选择添加即可。


2.知识库
刚才有在提示词里面讲到知识,提示词的知识,更多的是对Bot知识构成的设定,要想让Bot通过专业材料的学习掌握专有知识,还需要通过私有知识库来实现。
我给AI投标助手配置了一个简单的私有知识库,如下。
因为我的bot不是基于知识库的精准回答,所以并不需要对知识库的切片、搜索方式等进行太多设置,保持默认就好。

3.对话体验
剩下的项目都比较好理解、好操作了,大家根据自己的Bot来设计就好了。
以下是AI投标助手的开场白、预置问题的设计,其他的语音、背景图片需要个性化设置。



04 测试调优


当Bot的所有参数设置好以后,就可以在右侧的预览与调试进行测试,通过反复测试修改提示词,或者相关参数,一般而言主要是修改提示词。

这里需要提醒的是,在预览与调试达到理想预期的情况下,建议发布Bot,然后在Bot的正式页面再次进行测试。有时候调试页面的显示效果,和正式应用页面的效果会有些细微偏差。

如下是我的调试页面


以下是正式应用页面,显示格式有所不同。




05 Bot发布


扣子有多个bot发布平台,包括Bot商店、豆包、飞书,这几个自己的应用平台。除此以外,还可以在微信平台发布,以及掘金平台发布。
多平台发布,可以大幅增加智能体的曝光和用户使用。
不得不说扣子的进步还是很快的,我的Bot4月份刚发布的时候,只有扣子商店可以正常使用文档上传功能,当时飞书、豆包都无法正常使用。
而现在,飞书已经可以正常使用了。
而且,刚发布的时候,用户上传的文档只能单次读取,而现在模型已经可以实现单次上传,多次读取了,自由问答了。如此,AI投标助手的场景能力更强了,除了特定的招标文件信息输出,他还可以根据用户的随时问答,给出原文的相关信息。

总结


以上就是本文的主要内容了,一篇很干的手把手教大家如何开发智能体的攻略。

调用之前一篇文章的小结,来作为本文的总结吧。
AI Agent/AI Bot是大模型应用的重要载体,在落地行业、场景应用方面的前景十分广阔。
智能体就是应用商店的一个个APP,不过借助AI技术,智能体的开发比APP更加容易,开发一个好的智能体,核心竞争力已经不在于编程和代码的技术因素,而在于专家级的业务理解、专有知识和数据积累。


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询