11.用AI运行AI


部分截图来自原课程视频《2023李宏毅最新生成式AI教程》,B站自行搜索。
用AI运行AI,顾名思义就是使用AI来统筹调用其他AI来解决复杂问题。常见的AI运行AI工具有:
AutoGPT: https://github.com/Significant-Gravitas/Auto-GPT
AgentGPT: https://agentgpt.reworkd.ai
BabyAGl: https://github.com/yoheinakajima/babyagi
Godmode: https://godmode.space/?ref=futuretools.io
这里面推荐使用Godmode,相较其他工具更加友好,可以随时调整执行计划,可以以10分钟为单位分段执行查看执行结果,且不需要魔法上网就可以访问(但需要谷歌或推特账号登录)。

Godmode使用示例

Godmode界面非常简洁,在输入框中输入你要完成的任务,模型就会自动将该任务进行切分:
在这里插入图片描述
用户可以根据自己的需要决定是否将子任务加入执行清单,当然在后续步骤中还可以对子任务的描述进行修订。将以上子任务都选中,开始执行后,左侧会显示子任务列表,右边显示执行状态:
在这里插入图片描述
可以看到,执行状态中会显示模型的执行思路和理由。
在这里插入图片描述
还会有执行的具体指令,可以看到,模型打算使用谷歌在油管上搜索相关视频。再下面可以对指令进行修正,例如将Hongyi改成正确的Hungyi。
下面的【Approve this plan】按钮是开始执行这个子任务,右下角的时钟按钮可以以10分钟为单位来执行这个子任务(按一次执行10分钟)。当然实际上执行效果不一定如你所愿,在上例中模型认为需要先写一个Video summarize的工具,结果写的代码无法执行,一直处于死循环状态。

概念

用AI运行AI就是将要执行的任务进行拆解,得到每个子任务后再来执行,当然每个工具拆解程度不一样,Godmode如下图所示,只拆解一次,而AutoGPT会将子任务继续拆分,这样做虽然可执行性会变高,但是拆解的任务会有重复,则会陷入循环之中。
在这里插入图片描述
当然,用AI运行AI有不同的实现方式,下面通过几篇论文来讲解他们的思路。

Recursive Reprompting and Revision(Re3)

注:应该是 Re 3 \text{Re}^3 Re3
这个模型主要用于完成故事的编写。文章本身只有10来页,但是后面的故事示例就长得离谱,共计有86页。模型总体思路如下:
在这里插入图片描述
先是给出故事发生的情境(Premise)
然后模型要给出计划(Plan),主要包括:地点、人物(名字、年龄,人物关系等)、故事大纲等。
在这里插入图片描述
然后根据故事大纲,每一点都按Draft,Rewrite,Edit的步骤走一遍。Draft是写草稿:
在这里插入图片描述
Rewrite主要保证草稿要有一定的连贯性和相关性。
在这里插入图片描述
Edit将草稿的内容与Plan中的设定做一些比较,查看是否出现偏差,例如性别、姓名之类的。当然还要保证整体连贯性。
在这里插入图片描述

Language Models as Zero-Shot Planners

这是一篇来自UC伯克利的文章:Language Models as Zero-Shot Planners: Extracting Actionable Knowledge for Embodied Agents
在这里插入图片描述
主要是让语言模型与虚拟世界的人物角色进行交互,上图中下达的指令为:获取一杯牛奶。这里涉及到两个难点:
1.如何自动根据大任务规划一系列子任务;
2.如何把子任务对应到可执行的动作。
模型整体框架如下:
在这里插入图片描述
第一步:动作规划
动作规划直接用LLM来完成,如上图左侧所示,先给出一个示例,告诉模型刮胡子分三个步骤,然后让大模型生成擦乳液需要什么步骤。下图给出了一些大模型生成步骤的例子:
在这里插入图片描述
当时GPT-3是最新的大模型,图中GPT-2表现最差,只生成了一个步骤就over了。

第二步:翻译步骤
由于生成的步骤在虚拟世界中不一定能够识别,因此需要进行将其翻译成虚拟角色可以识别的指令。做法很简单,就是将虚拟角色可以执行的指令全部列出来,将生成的步骤与指令列表做匹配 ,挑选相似度最高的来执行。例如框架图中的例子生成的步骤为:
Step 1: Squeeze out a glob of lotion
匹配到的指令为:
Step 1: Pour lotion into right hand
实验结果如下:
在这里插入图片描述
纵轴是步骤的正确性,横轴是步骤的可执行性。
步骤的正确性上GPT-3已经超过了人类灰色虚线,但其可执行性不行。
经过翻译后(实际上是匹配指令列表)的Translated GPT-3在正确性上有小许下界,但可执行性大大提高。

HuggingGPT

浙大的文章(但是严格说是微软的东东):HuggingGPT: Solving AI Tasks with ChatGPT and its Friends in Hugging Face
看文章题目就知道挺有意思。整体框架如下:
在这里插入图片描述
大体路线也是分解任务,执行任务,得到结果,但是在执行任务这块,这里使用了HuggingFace的外挂模型来帮忙,所以多了Model Selection这个步骤。
例子:
在这里插入图片描述
任务是:Please generate an image where a girl is reading a book, and her pose is the same as the boy in the image example.jpg, then please describe the new image with your voice.
一看这个任务就是精心设计的,分别涉及到人体姿势识别,图片生成,语音生成等子任务。
第一步:计划任务
在这里插入图片描述
从图中可以看到,每个子任务都有任务和参数,如子任务T1要做的是姿势检测,参数是example.jpg。
当然这些子任务不一定合理,例如T3和T4其实没有必要。
第二步:选择模型
在这里插入图片描述
先从HuggingFace找一系列候选模型,这些模型都会有Model Cards来进行描述。然后就是可以根据任务Query来匹配具体的模型。
第三步:执行任务
在这里插入图片描述
第四步:生成回答
在这里插入图片描述
将每个子任务的结果进行总结,让GPT生成最后的回答。
在这里插入图片描述

Language models can solve computer tasks

来自加州大学的文章:Language Models can Solve Computer Tasks,用语言模型来控制我们的电脑。
在这里插入图片描述
上图给出了很多例子,例如让鼠标点击灰色按钮,点赞,查询指定内容并选择某个查询结果,等等。

当然模型不可能像人一样用眼睛看屏幕,模型得到的输入是一个网页的HTML代码。模型的输出是控制鼠标、键盘完成相应动作。这里面涉及到控制鼠标、键盘的代码是用MiniWoB++(Mini World of Bits++)完成的。
从动作到具体鼠标键盘的指令是根据一段冗长的Prompt得到的(具体看原文的附录D):
在这里插入图片描述
例子:
在这里插入图片描述
任务是要使用终端删除一个后缀为.rb的文件。
第一步:计划。模型给出的计划是:
Here is a plan to solve the task using the instructions specified:

  1. Type “rm [filename]” command to delete the file ending with “.rb”.
  2. Press “enter” key

第二步:反省(这个步骤前面的模型都没有)。自己给自己下Prompt:Find problems with this plan. 得到如下结果:
This plan does not specify the filename of the file ending with the extension .rb. Without knowing the filename, the agent cannot delete the file.
可以看到,模型找到bug,要有文件名才能删除文件

第三步:改进。自己给自己下Prompt:Based on this, the improved plan for the agent to complete the task are as follows.

  1. Type “ls” command to list all files in the terminal.
  2. Type “rm [filename]” command to delete the file ending with “.rb”.
  3. Press “enter” key after typing each command to execute the command.

可以看到,这里加了一个步骤,就是先用ls查看有哪些文件。

到这里任务分解完成,但是分解后的子任务不一定能够执行,因此就进入下面粉色框框的内容。
这里是以改进结果的步骤2进行举例:
第一步:先问模型要干嘛
According to the current plan, the next proper  instruction should be  ‘type "rm [filename]"‘. \text{According to the current plan, the next proper }\\ \text{instruction should be } \color{red}\text{`type "rm [filename]"`.} According to the current plan, the next proper instruction should be ‘type "rm [filename]"‘.

第二步:根据当前的状态,判断要做的事情,获得State grounding
Considering the output on the webpage,  the specific instruction for solving the task should be ‘type‘ instruction with "rm code.rb" command \text{Considering the output on the webpage, }\\ \text{the specific instruction for solving the task should be}\\ \color{red}\text{`type` instruction with "rm code.rb" command} Considering the output on the webpage, the specific instruction for solving the task should be‘type‘ instruction with "rm code.rb" command

第三步:生成具体可以执行的指令,获得Agent grounding
Therefore, the single instruction that matches one of the regular expressions is  ‘type "rm code.rb"‘ \text{Therefore, the single instruction that matches}\\ \text{one of the regular expressions is } \color{red}\text{`type "rm code.rb"`} Therefore, the single instruction that matchesone of the regular expressions is ‘type "rm code.rb"‘

可以看到,这个模型更加精致,不再像前面早期的模型在指令翻译上采用的匹配指令的方式。

  • 30
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 华为云AI人工智能开发者入门级考试实验主要包括以下几个步骤: 1. 注册华为云账号:首先,考生需要在华为云官网注册一个华为云账号,获取账号和密码。 2. 登陆华为云平台:使用注册的账号和密码登陆华为云平台,进入控制台。 3. 创建实验环境:在控制台中,选择AI服务,然后选择自然语言处理(NLP)服务,按照指引创建一个NLP实验环境。 4. 获取API密钥:在成功创建实验环境后,进入NLP服务,获取API密钥,确保后续调用接口时能够进行身份验证。 5. 下载并配置实验代码:在实验环境中,选择合适的编程语言(如Python),下载并配置相应的实验代码,以便后续调用API进行开发。 6. 测试API接口:使用下载并配置好的实验代码,调用NLP的API接口,进行简单的测试,确认接口调用正常。 7. 完成自定义开发:根据实验考题要求,进行自定义的开发,可以调用NLP的各种接口,实现相应的功能。 8. 实验报告提交:完成实验开发后,根据考试要求,将实验代码、运行结果以及相关文档整理成实验报告,按照指定格式进行提交。 以上就是华为云AI人工智能开发者入门级考试实验的基本步骤。通过完成实验,考生能够更好地了解和掌握华为云平台上AI服务的使用方法,并能够进行简单的开发和调试。 ### 回答2: 华为云AI人工智能开发者入门级考试实验步骤主要包括以下几个步骤: 第一步:了解实验要求与背景知识 首先,仔细阅读考试实验要求,理解所需完成的任务和考察的知识点。同时,需要掌握一定的人工智能基础知识,如机器学习、深度学习等。 第二步:安装环境与配置相关软件 根据实验要求,安装并配置相关的人工智能开发环境,如Python编程环境、TensorFlow、PyTorch等深度学习框架以及相关的数据处理、数据可视化工具等。 第三步:收集与处理数据 根据实验要求,收集所需的数据集并进行预处理,包括数据清洗、去除异常值等。可使用Python编程语言及相关的数据处理库进行数据处理工作。 第四步:选择与建立模型 根据实验要求,选择合适的机器学习或深度学习模型,并进行模型的建立与调优。可以根据任务需求,选择适合的模型架构,如卷积神经网络、循环神经网络等,并根据实验提供的数据集进行模型训练。 第五步:模型评估与结果分析 使用训练好的模型对测试数据进行预测,并评估模型的性能。可以使用一些评价指标,如准确率、召回率、精确率等对模型进行评估,并进行结果分析,分析模型的优点与不足之处。 第六步:撰写实验报告 根据实验要求,撰写实验报告,详细介绍实验的整个流程、使用的方法、所得结果以及对结果的分析与讨论。在报告中,要清晰地描述实验步骤,提供相应的代码和结果展示,并给出必要的结论和建议。 总结: 华为云AI人工智能开发者入门级考试实验步骤主要包括了解实验要求与背景知识、安装环境与配置软件、收集与处理数据、选择与建立模型、模型评估与结果分析,以及撰写实验报告。通过这些步骤,考生可以完成实验任务并提交相应的实验报告。 ### 回答3: 华为云AI人工智能开发者入门级考试实验主要包括以下步骤: 1. 准备工作:首先,需要注册华为云账号,并登录华为云AI开发者平台。获取实验相关的资料和教程,确保对相关知识和技能有一定的了解。 2. 环境搭建:根据实验要求,下载和安装相应的开发工具和软件,例如Python编程环境、Jupyter Notebook等。确保环境搭建正确无误。 3. 实验准备:根据实验要求,准备实验所需的数据集和模型。可以使用华为云提供的开放数据集或自己准备的数据集。 4. 实验步骤:根据实验指导,按照步骤进行实验。可能涉及到各种人工智能领域的任务,例如图像识别、语音识别、自然语言处理等。根据具体要求,编写代码、运行程序并进行调试。 5. 实验结果分析与总结:在实验过程中,记录实验结果和观察到的现象,根据实验结果分析实验效果和准确度。进行总结和归纳,发现问题和不足之处。 6. 提交实验报告:根据实验要求,整理实验过程、结果及分析,撰写实验报告。说明实验的目的、方法和技术实现,展示自己对于人工智能开发的理解和应用能力。 7. 评估和反馈:提交实验报告后,会有专业人士对实验报告进行评估和反馈。根据反馈进行改进和学习,提高自己的能力和水平。 总之,华为云AI人工智能开发者入门级考试实验步骤主要包括准备工作、环境搭建、实验准备、实验步骤、实验结果分析与总结、提交实验报告以及评估和反馈。通过这些步骤,可以提升自己在人工智能领域的开发和应用能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

oldmao_2000

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值