微软也加入GPT自动化调教大军。现在估计还是个试验品,看了半天才明白大概是在咋搞。 下面一步步说明:
核心就是这张两张图。 关键就是Planner和Skills Planner :用来生成调用Skills的list Skills:就是一个prompt模版,里面有各种特殊符号,在执行时被替换成文本,替换的方式就是从M(memoary)中获取,或执行Connector(可以理解为API)后取结果然后塞回prompt.
Planner生成的是一个xml,内容如图
Skills就是一个prompt. Prompt 中的{{$varible}}会被替换。 {{http.getAsync$url}}之类就是函数调用(微软叫他connectors),调用完的结果原地塞回去。
这个和langChain一类的项目,都是解决三个问题:计划,记忆,外部调用。外部调用好解决,记忆用embedding可以凑合,但个人感觉还是要有知识图谱一类的东西,来做检索。而计划是最难做的,难在这个是一个动态的过程,不是简单生成一个树,执行的过程中可能会对树进行动态删除和添加,最终要保证收敛。
LangChain,AutoGPT之类的都只会添加,却不能根据目标删除或推倒重来。人类也会犯类似错误,弄了半天最后忘了自己目标是啥。
BabyAGI对这个问题就部分解决。具体看了下逻辑。BabyAGI确实有两个模块来处理任务更新。一个是任务生成,一个是优先级排序。任务生成从prompt上看,主要还是创建新任务,并尽量不要未完成任务重叠。任务排序也明确不要删除任务。
《微软也加入GPT自动化调教大军》留言数:0