千帆杯——对话第一期最强挑战者
在2月22日晚,百度开展直播,邀请了千帆杯第一期最强挑战者杨之正、百度主任研发架构师董大祥老师、以及Datawhale成员司玉鑫为大家带来直播分享。我听了直播后,感觉受益匪浅,于是选择记录一下直播的内容。直播主要内容如下:
- 第一期赛题分析与解读
- 百度智能云千帆AppBuilder实践与体验分享
- AI行业以及未来技术变革思考
随着大模型的飞速发展,2024年将会成为AI原生应用爆发的元年,引领千行百业的创新变革。那在这一时代的背景下,百度智能云重磅推出千帆杯AI原生应用开发挑战赛,旨在激发广大开发者的创意潜能,推动AI原生应用。在中国市场的蓬勃发展,大赛以创意无限,生成未来为主题,紧密围绕当前AI技术的前沿动态,运用趋势,借助百度智能云千帆APP builder和model builder两大智能开发助手,鼓励参赛者打造出更具有创新性,实用性和社会价值的AI原生应用。
1 题目回顾
1.1 赛题背景
随着春节假期来临,环球影城等热门主题游乐场成为大人孩子的经典过节选项,但巨大的人流也意味着排队成为游客最大的痛点,游乐场项目多、如何在有限的游玩时间内收获最大的快乐,是本期赛题要解决的问题
1.2 赛题内容
官方提供「环球影城」、「上海迪士尼」、「香港迪士尼」、「广州长隆」四个热门游乐场地图(地图信息见下图list),地图中标注各项目的排队+游玩时间、视觉体验指数、刺激指数,每个项目最多玩一次,不考虑项目之间的交通时间
1.3 参赛任务
-
从以上4个游乐场中任选一个,通过AppBuilder的Agent Builder创建应用,在应用名称中明确具体的游乐场,如「环球影城排队规划助手」
-
你将获得官方提供的若干问题示例以及参考答案,你的应用需要尽可能的满足用户类似问题,并返回准确的答案
-
本次赛题必须使用百度智能云千帆AppBuilder完成开发,可以使用Agent Builder中的任何工具
-
不允许使用暴力穷举和直接写代码计算的方式实现
2 赛题分析
-
最强挑战者 杨之正 赛题分析:
首先,我觉得赛题主要是在考察用户对题目的理解。对于我来说呢,赛题出来以后正确的分析要比上来要构建要重要的多。题目的目的是希望我们能够在规定的时间内,在某个游乐场中选出视觉指数最大,或者刺激指数最大的几个项目,并且返回最大的视觉指数或者刺激指数,同时每个项目只能选择一次。
这是一个明显的**01背包问题**,是一个经典的算法问题,它的原始问题是有 n件物品 和一个最多能背 重量为w的背包 ,第 i i i 件物品的重量是 w i w_i wi,得到的价值是 v i v_i vi,每件物品只能用一次,求解将哪些背物品装入背包里的物品价值总和最大。
我们这个游乐场项目就是明显的一个背包问题,如果我们通过自然语言对结果进行分析,是很难得到正确的答案的。因为它是一个优化问题,存在非常多的可能性,自然语言也很难表述的清楚。因此从技术角度上,我断定,赛题一定是要比谁更能借助自然语言,来引导模型完成正确的代码编写。谁能让模型写出尽可能正确的代码,谁就能取得更高的准确率。
-
百度主任研发架构师 董大祥 赛题分析:
之正的表达讲的基本符合组委会出题的一共初心。我们其实是希望通过,日常生活中的一些常见的需求场景,来让广大的开发者知道,现在大模型拥有解决这类需求的能力。同时,也是希望让开发者知道,即使你不会写代码,不懂编程,也可以通过及时词工程这样的方法,使用这个平台上的一些预制的工具,来去开发AI原生应用,来解决我们的一些日常的需求。
从这个理解这个问题来讲的话,我们出题的考点大概分这么几块:
- 首先,考察的是对问题的一个理解能力,题目给的并不是一个纯文字的描述,还给了一个这样的一个地图。怎么能**把地图转化成一个自然语言**,然后并且正确理解这个题目要求解的这个目标,这是第一个考点。
- 第二,是对这个agent builder,我们这次比赛的一个主要的生产环境,它的功能进行一个熟悉和使用。包括知道怎么去写instruction,怎么去选工具和使用工具。
- 第三,就是这次比赛重点去PK的环节,比谁的这个提示词写的更好,更能够调动底层工具的这个能力,然后获得一个更好的效果。包括自己去构造一些测试集,自己去通过不同的方法来去测试自己的这个方案的鲁棒性。
3 具体方案
以下是最强挑战者,杨之正的具体解题过程,分为四个部分。
-
算法的分析与确定
在上面的赛题分析中,我首先确定了这是一个01背包问题。对于01背包问题,我会从算法复杂度的角度进对它进行分析。它的解题方案一般来说是**动态规划算法**,这也是某些算法网站,例如leet code上会教你的思路。
但是实际上,01背包在数据量很少的情况下,是可以通过暴力算法来解决的。这里要 注意 一点我这里说的暴力算法,不是说把所有的分钟数以及它对应的项目刺激指数、视觉指数等等全部列到一个文档里,之后再用RAG或者写prompt的方法,进行暴力穷举。而是一种是计算机中最常用的算法之一,对所有的组合进行一种遍历,然后从遍历的结果得到最优解。
我们可以在这里分析一下,这道题的时间复杂度。对于我选择的香港迪士尼景区,它一共只有10个项目,然后根据排列组合,我们的每个景点就有选择或者不选择两种可能性。因此一共是有 2 10 2^{10} 210 种组合方式,也就是1024种可能性,所以说暴力算法的时间复杂度是1024。它的空间复杂度是1,因为它不需要额外的空间去存储。
对于动态规划算法来说,它的时间复杂度是time乘10,优化后的空间复杂度是time,如果不优化的话,可能也是time乘10。这里所说的time就是我们的分钟数。当时间大于两个小时以后,他的复杂度就是要大于暴力算法了。所以说对于代码解释器来说,复杂度越大,那他执行的结果肯定就慢,而且结果可能还不对。但是实际上,如果我们想多玩几个项目,时间肯定是要大于两个小时。
因此我断定,他的测试集里,肯定是有很多大于两个小时项目的。所以从复杂度上来说,动态规划远远不如暴力算法,因此我就选择暴力算法来进行解决。
同时我也考虑到,暴力算法绝对是最稳定最简单的算法,也是模型见得最多的。而且它的实现非常稳定,不需要创建过多的数组,就两层放循环就可以了。
最后再注意一点,01背包是绝对不能用贪心算法来做的,这是绝对错误的,我在这里就不证明了。但是也千万不要在prompt提“不要使用贪心算法”,不然模型理解错误,就可能就用了贪心算法。
-
数据集准备
因为这是一个纯agent开发的过程,我不需要进行任何的训练,所以只需写测试集就好。
我一共是准备了22个测试数据集,涵盖了香港迪士尼乐园从30分钟一个项目都没有办法玩,到600分钟能完成所有的项目。然后我最终的目标,就是让我创建的agent,通过所有的测试数据集,就算完成了本次的开发。
-
提示词工程
我的提示词分为以下4个部分:
-
角色定义
我们需要在这里明确角色的定义,比如说在这个任务里,我需要他写Python代码,因此我就告诉模型,你是一个Python代码助手。然后就是告诉模型它需要实现一个什么样的功能。例如本题就是一个优化问题,同时这里还要把我们的题目中的图像信息转换成文字信息。注意在prompt中最好不要中英混杂,我最开始也在考虑,如果提示词写英文会不会好一些,但是考虑到文心毕竟是一个中文模型,训练时候的中文语料肯定是最多的,如果贸然改成英文这反而会导致结果变差。
-
介绍任务
我在这里将迪士尼景区内的所有景点,时间刺激指数以及视觉指数都加了进来。并告诉模型,要根据我提供的信息编写代码,不能有任何的幻想之类的信息。
-
注意事项
我前面分析了,希望模型使用暴力算法。那这里我就要告诉他,你在使用代码解释器的时候,必须生成暴力算法的代码,不要生成动态规划之类的算法。并且因为它是一个01背包,每个景点只能玩一次,所以说我也规定每个景点,模型生成代码只能去一次。
-
思维链(Chain of Thought)
这里我选择方式是fileshot,我根据官方提供的几个例子,加入了fileshot放上去来控制输出。这就是我整个的prompt的构建过程。
提示词调优:
构建好了prompt以后,肯定还是要进行调优的。因为它一上来,也不能通过我所有的测试集。整个过程其实是一个弱代码的开发,我本身是不需要写任何代码的。整个开发过程,我有两个方面印象比较深刻。
- 第一个是,我发现最终的结果,可能会跟官方的需求有些出入。我如果不控制的话,有些输出只有刺激指数或者视觉指数,没有我玩了哪些项目。有些呢又只有游玩的项目,又没有刺激指数和视觉指数。所以,我就尝试了fileshot的方法,来控制模型的输出。
- 第二个呢,就是代码解释器生成代码,总是省略代码。这个也是群里很多人都在讨论的问题,我的解解决方案是在注意事项里加入了一条内容,让模型每次生成代码时,加入四个列表。分别包括了景点名称、时间、刺激指数以及视觉指数。这极大的提高了准确率,直接通过了所有测试。
最后呢,我还加入了一些中文的优化,也就是让整个中文更加的容易理解,让整个promt的更加的清晰易懂。我最后的提示词只有1,000字多一点,远远没有达到我们题目要求的1,400字的上限。
-
-
千帆APP builder使用
它的使用流程是非常简单的,我们只需要创建应用,把我们需要模型去做的任务写到提示词中,适当调整输入多样性,就可以完成整个APP开发。发布也是非常简单,它可以实时地保存,不需要每次都Ctrl S,或者说是点击保存键,开发完以后点击一下发布,就可以完成创建了。然后,我就可以把我的链接分享给别人使用。就比赛过程而言,即使我不看任何教程,我也能完成整个的开发过程。
4 千帆APP builder 产品能力以及设计理念
以下是百度主任研发架构师董大祥,对千帆APP builder 产品能力以及设计理念的介绍。
千帆APP builder,最开始是想面向不会写代码的这些用户,以及想写这些专业代码的这个用户,去开发AI原生应用,来去设计的产品功能。那其实在0代码开发这一块,APP builder里面提供的这个RAG和agent两个开发框架,都是可以让使用者不用写代码,只需写提示词,就可以去面向他的终端用户,来开发一个文档问答或者是这种复杂的agent系统。
那像这个agent框架里面,提供了比较丰富的这样的工具,除了上传文档,提供文档问答的能力以外,还允许开发者去选择模型能力边界以外的一些工具。比如说代码解释器,它可以让这个大模型生成一些可以执行的脚本代码,然后到我们的这个执行环境里面自动运行,并且把一些运行的结果,返回给用户。当然也也包括基于文本去生成图片,以及百度搜索,还有我们正在对接的一些其他的工具。这些都是agent这个框架想要提供给开发者的一些能力。
因为我们大语言模型本身,很难去做这个外部系统的自动推测和调用。我们需要把外部的各种各样的系统和语言模型连接起来,丰富语言模型的能力边界。所以我们通过instruction的定义和让用户选择工具的方式,来让模型自动推理当前这个阶段应该使用哪些工具。这样可以更自动化的,提供应用场景的一些定制的能力。
除了刚才说的这个0代码的这种开发模式以外,我们也提供了这个代码开发模式,我们提供了这个app builder的SDK,这个其实里面会包含更多的底层的大模型能力,和AI引擎的一些能力。包括OCR、人脸识别,然后语音等等相关的一些工具组件。这些组件是传统的开发者去开发AI应用系统,必备的一些组件。我们也我们是提供这样的一些SDK,能够方便大家基于app builder提供的大模型的agent和RAG的能力,来去做它上层系统的集成,去做更完整的应用产品。
从设计理念来讲的话,其实app builder更多还是面向大模型应用的一个发展趋势来设计的。我们相信,就是这个底座模型会越来越强大,而且足够强大以后,基于提示词去开发应用,以及调用周边工具,这样得到了AI原生应用。并且开发这些应用的开发者,有可能不是我们现在认知里的这些开发者,他可能只是会写提示词,这些用户在未来也是具有巨大的增长空间的。所以app builder的0代码开发,是面向这些群体去建设的。
那对于已有系统来讲,现阶段我们有大量的已有的应用系统,想去有大量的大模型的能力,给他自身产品进行赋能升级,甚至是重构。那么只基于这个app builder的GUI的这种定义app原生应用的功能,是难以满足他的需求了。所以我们会把更底层的一些组件,以SDK的方式开放出来。并且这些SDK也是放在这个广大的开源生态里面去进行充分的融合,然后做集成,方便我们的集成商,或者是我们的伙伴,来去做更低成本的app builder的集成,实现更复杂的一些应用。
5 AI技术的趋势与看法
-
Q:这个2023年,大模型技术可以说层出不穷,可能昨天的paper没看完,今天又出来一篇,明天又出来10篇。那首先问问之正,从开发站角度来看,你是如何看待现在的大模型技术的,以及平时最关注哪些技术呢?
杨之正:从这个开发者的角度,我认为大模型技术绝对是未来。从2022年底开始,ChatGPT出世以来,短短一年多的时间,AI就已经从ChatGPT发展到了前几天刚发布的Sora。已经从对话模型,发展到了视频生成模型。我觉得这个发展已经控制不住,只会越来越快,然后AGI未来也许有一天真的会实现。
大模型对于我们来说,能带来非常大的商业价值,尤其是AGI的技术,它真正做到低门槛。代码解释器可以大幅度提高像我们这种开发者的效率,让很多过去只敢想不敢做的事情变成了现实。几乎所有应用,都可以使用大模型进行重构,同时它还可以做很多,平时没有办法做的应用。比如说创作、还有内容理解,这些东西基本上只能通过AI来做,如果使用传统方法是很难完成的。
我现在是一名还是一名在校学生,也已经感受到了大模型给我们生活带来的巨大影响。我跟我的同学们也会做这方面讨论,它确实能改变当下的很多很多模式。首先呢它就可以作为一个学习助手,帮助我们相当于一个全能的老师,可以提升我的学习和工作效率。然后我很多时候,都不需要用搜索引擎了,很多问题我就直接问这个大语言模型,然后它就会告诉我。然后它还可以有效的缩减信息差,作为一个生产助手,它可以帮助我读论文,写论文总结,可以提高我看文献的效率。因为实际上,有些文章可能也不需要我精读,让模型精读,然后再总结给我,这个就可以节约我的时间。
我觉得像我们这种这些开发者,其实是不缺热情的,有时候只是缺一个好的平台,和一个好的机会。我觉得千帆,还有其他的一些大模型平台工具的发展,可以让每个人把过去想都不敢想的内容,就通过来通过AI来实现了。现在可以说对于更多的开发来说,确实是一个非常好的时代。这个我也算是百度技术的老用户了,从飞桨到文星到千帆,其实现在很多先进的技术,基本都来自于产业界的多年积累以及前沿的实践,百度其实在AI领域,可以说是积累颇深。
-
Q:那接下来想问问大祥老师,从您的视角来看,未来大模型技术的发展趋势是什么?以及百度作为技术背后的平台方有什么样的一些发展方针和着力点呢?
最近一年多以来,看到了一些外部的大模型的发展,以及我们内部模型的进展。我说一下我看到的一些趋势。
-
我认为未来是会呈现一个**多元化发展**的一个模式。他一定会有一个最强的模型,它的使用成本可能会非常高,所以也会存在一个性价比最好的模型。不同的应用场景对模型的能力要求也不太一样,有一些场景需要大模型严谨的推理能力,而有一些场景只需要对文本段落的一些摘要。这意味着未来的AI原生应用,一个应用里面会存在各种各样size,然后每一个模型是以最高性价比的这样的一个方式,存在于这个产品中,为用户提供最好的体验。
-
第二个趋势,就是我们的基座模型确实在逐渐提升他的能力,强大到一定程度以后,整个AI原生应用的落地也会更容易爆发起来。就是基座模型强到一定程度,像我们开发了这个agent的框架,就比较容易去落地到真实场景。像Agent强依赖的这个大模型的规划,执行反思能力,它就会有比较精准的效果。同时,对周边工具的使用也会越来广泛,最终会形成一个就是**以大模型为入口,周边工具作为辅助功能,这样的一个应用范式**,可以让大家更容易开发,各种各样的外部系统组装起来的AI原生应用。
-
第三个趋势,其实也是最近大家也能看到外面的一些发展,就是**未来大模型应用的个性化以及多模态**,可能会是今年重点转的一个方向。AI原生应用它本身,目前来讲的话,所有的产品里面都是以文本生成这个能力为主,并没有看到一些明显的产品,是随着用户的使用,他的粘性和他的个性化能力会逐渐提升的。但是随着模型的本身能力的提升,包括它的能处理的上下文的长度,以及每个产品对用户使用的历史记录越来越多,那么整个这个AI原生应用的这种产品,它会呈现一个非常好的粘性。通过个性化的输出,来去提供更好的满足用户需求的这样的体验,从而实现这个应用的爆款。
动态的大模型的话,也是最近比较火热的一个方向。也是我认为未来可能比较重要的一个应用形态,那未来的RAG可能不像现在一样,文本的问题和文本的回答,他有可能就是一个文本的问题,然后呈现一个视频或者有个性化语言的回答。
针对这些趋势来讲的话,其实百度在模型侧,然后平台以及应用这几层,都有非常多的布局。从基础模型来讲的话,在过去一年也推出了ERNIE 3.5/4.0这样的一些更强版本的一些模型。此外,就是前方的model builder、app builder,这些平台化的产品,以pass的形态,逐渐去赋能上层的这个应用开发者。像在千帆的app builder里面,我们也是持续会提供效果更稳定、性价比越来越好的agent开发框架,来服务于广大的AI原生应用开发者。
-
-
Q:我理解其实大模型大大的降低了应用开发的门槛,但是它提高了研究的门槛。那作为我们更多的,更普遍的AI应用开发者,则应该更加抓住AI原生应用的机遇。那其实我也理解,现在和过去的AI原生应用开发,发生了非常多的变化。那也想请大祥老师来去聊一聊,您觉得现在的AI应用开发范式发生了哪些变化呢?
这个问题的话,我觉得我还是有很大的发言权的。就是AI应用,从这个过去十年来讲的话,其实经历了几个阶段。从最早的这个单个的小模型,然后一点一点去做一些独立的小模块,形成一个完整的系统,这种烟囱式的开发,一直到现在基于大语言模型,仅需要去写提示词,就可以开发一个简易的问答系统。我觉得中间的这个范式,转变还是比较大的。
举例子,在传统的这个AI应用开发中,以机器翻译这样的系统为例,我们需要在词法、句法、语料对齐、解码,整个这个翻译的流程里面的每一个环节,都投入大量的研发人力,来去把这个效果做到极致。还需要做很多小模型,来辅助它的效果提升。那这样概括下来,它就是一个烟囱式的系统,这个系统只能做机器翻译,它没有办法去做这个问答。这样的话,我们需要在这个各个细节上深耕到一定时间,才能达到这个系统可用,甚至达到这个世界的一流水平。
而基于生成式大语言模型的这种应用开发,对开发者的技术背景的要求就显著降低了。举例子就是,过去开发一个这种问答系统,你需要去梳理大量的这种问答的规则,梳理大量的知识,甚至构建知识图谱,训练一些羽翼的这种匹配模型,问答模型等等。通常是需要一个十来人的产业团队,一个季度才能搭建好的。这样的一个系统在今天,如果你使用比如说APP builder上的这个RAG,你就可以简单的上传几篇文档,写几句提示词,就可以实现一个效果相当不错的一个问答系统。
所以这个从烟囱式,投入大量人力才能构建的AI的这种专用系统,到了写提示词传文件就可以实现的这种AI原生应用的这种系统,整个的这个开发范式,和开发投入的资源,都发生了巨大的变化。
-
Q:好,非常感谢大祥老师的分享,确实观点非常鞭辟入里,我听下来感触还是很深的。不知道知之正之前,有没有开发过这个AI应用,同比之前的这个AI应用开发,现在AI应用开发有了哪些变化?在流程、效率、效果上,有没有一些这个非常直观的一些感受?
我之前是做过一些AI应用的开发的,比如说那种多模态大模型,还有一些基于文本的代码大模型。但是之前的开发,都是基于Hugging Face上的开源模型进行,再做进一步的开发。同时,我需要对他们的论原始论文进行进一步的阅读。相比于app builder的agent的开发,自己开发AI的门槛是非常非常高的,调优也是非常的麻烦,需要对这个方向非常熟悉才能做。像我刚刚说的,我们需要去看它的原始论文,然后还要自己编写代码。它流程就包括训练集、测试集的准备,模型训练,测试集验证,bad case调优等等。
这几步,可以说如果说是普通的开发者,可能都没有办法完成,最开始的训练集和测试集的准备,可能就把他们拦下了。如果没有显卡的话,可能还要租用云服务器,需要对这方面有一定的基础和了解,才能完成相应的开发。同时要花的钱也是绝对不会少的。
然后现在的这种,基于app builder的AI应用开发方式,我就可以不写代码,就开发出很多有趣的应用。就像我刚刚分享的,我也不需要写训练集,只需要写几个测试集,就能测试一下我这个开发的应用是不是没问题。这在之前都是不可能的,这种方式也极大的降低了我们开发的门槛,提高了开发的丰富度,环境都不用搭建。对于一些非计算机科班的人来说,是非常友好,人人都可以参与到这个开发的过程当中来。
同时,大模型的能力很强,他能够开发出传统应用没有办法做的事情,比如说我前面说的创作、还有一些内容理解之类的事情。如果不用大模型,可能都不是很方便做。
然后,对于我们这种计算机相关的人员来说,也可以提升我们的开发效率。最后,他还可以定制化,我们可以定制一个专业的助手。总结来说,我觉得它的流程就是更加的简单易懂,效率也是非常高的。之前可能几天,几个月我才能开发好一个应用,然后现在我半天就可以把它搞好了,如果不考虑效果可能会更快。在效果上,如果我们写好一个提示词,也能够实现非常不错的效果。
-
Q:大模型确实对于我们现在的AI用开发,带来了更多普惠的价值。那现在AI的平台带来之后,之正你觉得为你带来什么样的机会呢?或者说希望更多这种平台级的企业,给这种开发者们,提供哪些方面的一些助力?
首先,我算是这种比较有开发基础的人吧。我觉得对于像我这种,本身就有一些开发基础的人来说,使用这些agent平台做事情就可以事半功倍,提升我们的开发效率。之前开发一款应用,如果想上线的话,我需要做相当多的事情,而且流程会非常久,需要不停的写代码,然后debug,然后上线测试,压力测试等等。但是现在,我只需要写一下prompt,然后它就可以完成了应用的开发。
然后,对于一些没有技术背景的人来说,它给带给我的感觉,就像是苹果的APP store,或者是安卓的Google store。但是区别在于,再简单的手机应用,都需要通过编码来实现,但是随着agent平台的出现,随着人工智能的出现,让我们无需进行代码编写,就可以完成相当难的任务。
以前,创意和代码都非常的重要,现在,只要有创意任何事情都可以实现。我现在其实也对这些agent产生了一些依赖,在做任何任务之前,我都会创建一个agent来帮我处理。比如说论文润色,我就会专门创建一个agent,来帮助我润色论文。
最后,关于平台型企业为我们提供助力,我从开发者的角度来谈一下。我觉得首先要加强基座模型的研究,一个好的基座模型,直接决定了agent最终的效果。第二个就是可以通过举办各种比赛,来帮助大家上手,我觉得千帆杯就是一个非常好的学习机会。相信大家也都在这个比赛中,学习到了非常多。我觉得也可以举办一些定期的分享,或者发布一些在线课程,来帮助大家进行进一步的上手和学习。
6 观众提问
-
求大神分享prompt经验啊
杨之正:prompt我在当时刚才其实已经介绍过了,其实就是我分享的那4条。我个人认为,如果按照以下几点来做,一般来说这个prompt都能够取得还不错的效果。就是分为以下四条:
- 首先是角色定义,就创建一个专属的agent,告诉模型他是谁。就像我们在这个比赛里,我要告诉他他是一个Python代码助手,也就是他帮我写代码。
- 第二步,就是告诉他任务是什么。我们要把需要做的事情告诉模型,他才能帮我们做事情。就像我们在这个赛题中,我就会把我们迪士尼的这些信息去告诉这个模型,然后让他去做一个优化的任务。
- 第三步,就是一些注意事项。在本道题中,我就让他去使用暴力算法,每个景点只去一次这样子。然后还有一些,就是我需要他在模型里添加一些东西,比如说要添加几个固定的列表。
- 第四步,就是fileshot,加入一些例子来引导模型的输出。因为大模型,它本身是一个概率模型。它的输出本身是基于前面输出的。如果我们了解原理的话,是基于前面的输入的概率去计算下一个词的输出的。对于我来说,我一般来说都是会加入fillshot,来控制模型的输出。
对于我来说,不管是在什么平台创建agent,都基本上都是基于这几步来做的,当然了就是任务不同,也会需要有适当的变通。如果说某个某个平台需要的要求的字数特别少,那fillshot可能就需要删掉了。然后,也需要对其中内容进行一些精简。我这个方法,也只能说是可用,各位大佬可能也有更多更好的经验,我也还在持续的学习中。
-
agent builder后续会增加新模型吗?
董大祥:我们的agent的那个主模型,思考规划,然后这一套反射机制的这个模型,其实目前来讲的话,还是比较依赖能力比较强的模型。还基本会基于这个ERNIE 4.0这个版本,甚至他的更高版本来去做。但是,具体的那个执行动作,他也有可能会调用下游的其他的大模型,像包括啊写代码的,或者是做创作的,生图的一些模型。这些模型,可能都会以工具的形式,逐渐的去丰富agent的能力。
所以就是这个问题来讲的话,就是agent的主模型,可能短时间内不会有太多的新模型引入。但是,作为他周边的工具能力的这些模型,会持续的进行引入,丰富他的能力。
-
我现在是大三阶段,如果后续,想读这方面的研究生,有没有什么经验可以分享呢?
杨之正:如果目前还在本科阶段,我觉得主要还是要打基础,数学基础一定要打好,然后再去做这种机器学习,深度学习相关的任务,才会事半功倍。然后,我觉得还可以去在本科阶段,读一些对业界影响非常深远的论文,比如说Attention is all you need的这些文章。如果我们了解了底层的原理的话,那么对于以后的学习的帮助,也是特别特别大的。
因为对于一个本科生来说,可能本身的资源是特别少的,如果有机会的话,可以去一些大公司去进行实习,比如说百度。也可以去参加各种AI相关的比赛,比如说千帆杯。整个参赛过程中,也是可以取得非常非常大的经验。
总结来说呢,就是不断的积累实习,然后比赛,然后获得各种各样的经验。之后呢也可以去多读一些经典文章,然后去打好自己的基础。
观众问答部分,就选了几个比较好的问题放上来,我其实不确定之正大佬说的,prompt第四步的“fileshot”是不是这个词,如果不是欢迎大佬指出。