LLM as Controller—无限拓展LLM的能力边界(1)

本文涉及的产品
交互式建模 PAI-DSW,每月250计算时 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
模型训练 PAI-DLC,100CU*H 3个月
简介: LLM as Controller—无限拓展LLM的能力边界

Smarter 魔搭ModelScope社区

受到HuggingGPT、Visual ChatGPT、AutoGPT等项目的启发,本文试图从LLM as Controller的统一视角来看LLM的能力边界。

01LLM as Controller

我认为ChatGPT、GPT-4等LLM模型最强的能力其实是语言理解力,咱不需要让一个LLM做任何事情,只需要它能够准确无误的理解人类说的语言,再按照人类的语言去执行对应的任务即可。假如LLM的理解能力可以达到100分,那么只需要准确无误的调取最精确的工具就可以解决任何问题。

我将上述处理任务的流程总结为以下这个过程,LLM在这个流程中实际上充当的是Controller的角色,或者说是大脑。

任何复杂任务都可以包含在上述流程之中,给定一个输入(包含需要做的事情以及条件),就能通过LLM控制一系列的agent来达成目标,并且得到输出结果。并且agent的数量和多样性是可以无限拓展的,假设LLM的语言理解能力是100分,那么就可以无限拓展LLM的能力边界。另外从算法的角度来理解,plan其实就是split,collect其实就是merge,整个流程就是分治思想的集中体现。

其中从Input到Output会进行3层处理,第一层会对输入目标进行拆解,并且得到一系列有顺序的目标,第二层会对每个子目标安排最合适的agent来进行处理,第三层会对所有的agent得到的结果进行汇总整合。其中agent可以理解为各种能力,可以是模型,可以是网页,也可以是工具,其中LLM作为这3层的总控制,去理解input的含义,并且给出最优的plan、assign和collect的处理。这个过程像极了一个庞大的组织架构的正常运转。

有了上述统一的概念理解之后,下文对最近最流行的LLM as Controller的项目做一个拆解,不同项目的主要差别在于LLM as Controller的逻辑以及各个专项Agent的能力,主要包含Visual ChatGPT、HuggingGPT、Toolformer、AutoGPT等项目。

02Visual ChatGPT

实际上Visual ChatGPT的agent的范围是各种视觉的Foundation Models。

Visual ChatGPT实际上是最简单的一种LLM as Controller的项目,范围仅限于Visual Foundation Models,这种形态的项目,虽然能力边界小,但是LLM的负担是最轻的,每一个步骤以及流程是更加的可控,可能总共就只需要十几二十个流程。未来这种形态的工具或者产品对于各种垂直领域来说可能是更为常见的。

03HuggingGPT

实际上HuggingGPT的agent的范围是huggingface所有模型。

HuggingGPT将LLM as Controller整个过程总结为4步:

  • 任务规划:利用ChatGPT分析用户的请求,了解用户的意图,通过提示分解成可能解决的任务。
  • 模型选择:为解决计划任务,ChatGPT 根据模型描述选择托管在Hugging Face 上的专家模型。
  • 任务执行:调用并执行每个选定的模型,并将结果返回给ChatGPT。
  • 生成结果:最后,使用ChatGPT整合所有模型的预测,为用户生成答案。

HuggingGPT的模式可控性也比较高,而且模型都是放在HuggingFace上进行托管的,输入输出的形式上也是一致的,用户使用以及代码维护都更为方便一些。

HuggingGPT的模式可控性也比较高,而且模型都是放在HuggingFace上进行托管的,输入输出的形式上也是一致的,用户使用以及代码维护都更为方便一些。

04Toolformer

实际上Toolformer的agent的范围是各种外部工具。

上图中是Toolformer一种典型的用法,Toolformer可以自主决定调用不同的 API(从上到下:问答系统、计算器、机器翻译系统和维基百科搜索引擎)以获取对完成一段文本有用的信息。这个工作实际上也为后续的AutoGPT和BabyAGI等项目提供了灵感。

05AutoGPT

AutoGPT其实就是在上述的基础之上,通过LLM反思input->plan->assign->collect->output整个过程,并且重新规划plan,从而产生一直迭代的auto效果。从外部的表现形式上来看,整个系统不断的交替进行plan和reflect,已经出现了自我思考自我迭代的过程。这实际上已经到了autonomous agents的范畴了。

实际上AutoGPT的agent的范围就是各种网页以及各种工具。

上述流程图来自BabyAGI,下面举一个简单的例子来阐述Autonomous Agent的思想:

假设有一个可以帮助研究的autonomous agent,并且我们想要关于某个主题的最新消息的总结,比如说“关于 Twitter 的新闻”,我们告诉agent你的目标是找出有关 Twitter 的最新消息,然后向我发送摘要”。

  1. agent查看目标,使用 OpenAI 的 GPT-4 等LLM模型,使其能够理解正在阅读的内容,并提出第一个任务。“任务:在谷歌上搜索与 Twitter 相关的新闻”。
  2. 然后agent在谷歌上搜索 Twitter 新闻,找到热门文章,并返回一个链接列表。第一个任务完成。
  3. 现在agent回顾它的主要目标(找到关于 Twitter 的最新消息,然后发送摘要)和它刚刚完成的事情(得到一堆关于 Twitter 的新闻链接)并决定它的下一个任务需要是什么 .
  4. agent提出了两个新任务。1)写新闻摘要。2) 阅读通过谷歌找到的新闻链接的内容。
  5. 现在agent在继续之前停止了一秒钟,它需要确保这些任务的顺序正确。真的应该先写摘要吗?不,它决定了最优先阅读通过google找到的新闻链接的内容。
  6. agent从文章中读取内容,然后再次返回待办事项列表。它想添加一个新任务来总结内容,但该任务已经在待办事项列表中,所以它没有添加它。
  7. agent检查待办事项列表,唯一剩下的项目是总结它阅读的内容,所以它这样做了。它会按照您的要求向您发送摘要。

目前autonomous agent还比较初级,因为agent的范围太大了,无边无际,非常的不可控,但是这个概念非常的强大,随着不断的发展和实验,未来会慢慢的融入我们的日常生活。

接下来再介绍两个比较有意思的项目,可以开拓一下思维。

06NexusGPT

上文中提到,整个LLM as Controller系统像极了一个庞大的组织架构的正常运转,事实上,也有脑洞大开的开发者沿着这个思路做了一个NexusGPT项目,简单理解就是每个Agent实际上可以认为是一个人,每个agent擅长不同的事情,那么一个庞大的组织架构可以通过雇佣擅长各种能力的Agent来维持组织的正常运转。

07Generative Agents

斯坦福和谷歌的研究者们利用人工智能创造出的生成式智能体。研究人员一共设置了25个角色,并且给每个角色都设定了姓名和职业等基本信息。传统的NPC都是先给他们安排好剧本,安排好话术,该到哪步就说哪句话。而随着ChatGPT的出现,这些游戏角色的对话可以在只输入关键信息的前提下,自我生成。

LLM as Controller的系统稳定性

上文的阐述中都是基于假设LLM语言理解能力为100分的情况,能力边界是可以无限拓展的,但事实上LLM仍然会存在一定的事实性错误。这会影响整个系统的稳定性,并且稳定程度取决于LLM的语言理解能力,以及各个Agent的专项能力。

另外值得注意的是,goal之间、agent之间可以引入相互影响,但是个人认为这样子会使得不同流程的处理变的更加复杂,整个系统的稳定性会下降不少。

LLM as Controller—自然语言编程

以往的编程方式通常是左边这张图的形式,规范好函数的格式化输入和格式化输出,程序主体可以执行特定的功能,而随着LLM的能力不断增强,事实上未来会发生右图编程形态的转变,自然语言输入通过LLM并行控制多个函数的调用,并且通过LLM将多个函数的调用结果进行总结,最终返回自然语言输出,而LLM在其中的执行方式通常是通过Prompt的形态来执行的,Prompt也是自然语言,这个过程可以认为是自然语言编程

并且其中的格式化输入、格式化输出以及简单的程序主体通常是标准化的,LLM也可以同时去做所有的标准化任务,未来人类可能只需要编写复杂的、非标准化的程序主体。换句话说,LLM可以用自然语言编程的方式去统一所有标准化的内容。右图中的橙色部分可能都会变成自然语言编程的一部分。


相关文章
|
人工智能 搜索推荐 Linux
LLM as Controller—无限拓展LLM的能力边界(2)
LLM as Controller—无限拓展LLM的能力边界
|
3月前
|
前端开发 机器人 API
前端大模型入门(一):用 js+langchain 构建基于 LLM 的应用
本文介绍了大语言模型(LLM)的HTTP API流式调用机制及其在前端的实现方法。通过流式调用,服务器可以逐步发送生成的文本内容,前端则实时处理并展示这些数据块,从而提升用户体验和实时性。文章详细讲解了如何使用`fetch`发起流式请求、处理响应流数据、逐步更新界面、处理中断和错误,以及优化用户交互。流式调用特别适用于聊天机器人、搜索建议等应用场景,能够显著减少用户的等待时间,增强交互性。
685 2
|
3月前
|
机器学习/深度学习 人工智能 运维
企业内训|LLM大模型在服务器和IT网络运维中的应用-某日企IT运维部门
本课程是为某在华日资企业集团的IT运维部门专门定制开发的企业培训课程,本课程旨在深入探讨大型语言模型(LLM)在服务器及IT网络运维中的应用,结合当前技术趋势与行业需求,帮助学员掌握LLM如何为运维工作赋能。通过系统的理论讲解与实践操作,学员将了解LLM的基本知识、模型架构及其在实际运维场景中的应用,如日志分析、故障诊断、网络安全与性能优化等。
101 2
|
3月前
|
机器学习/深度学习 数据采集 人工智能
文档智能 & RAG 让AI大模型更懂业务 —— 阿里云LLM知识库解决方案评测
随着数字化转型的深入,企业对文档管理和知识提取的需求日益增长。阿里云推出的文档智能 & RAG(Retrieval-Augmented Generation)解决方案,通过高效的内容清洗、向量化处理、精准的问答召回和灵活的Prompt设计,帮助企业构建强大的LLM知识库,显著提升企业级文档管理的效率和准确性。
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
深挖大模型幻觉!哈佛大学最新报告:LLM等价于众包,只是在输出网络共识
大型语言模型(LLM)如ChatGPT正改变人机交互,但在生成看似真实的错误信息方面存在“幻觉”问题。这种现象源于LLM依赖统计概率而非语义理解,导致在处理争议或冷门话题时易出错。研究显示,LLM的准确性高度依赖于训练数据的质量和数量。尽管如此,LLM仍具巨大潜力,需持续优化并保持批判性使用。
53 12
|
2月前
|
人工智能 自然语言处理
大模型在装傻!谷歌苹果最新发现:LLM知道但不告诉你,掌握知识比表现出来的多
在AI领域,大模型(LLM)展现出了惊人的进步,但在谷歌和苹果的最新研究中,发现这些模型有时会故意“装傻”,即使已知正确答案也不告知用户。这种“隐藏智慧”现象揭示了大模型可能具备超出表面表现的深层能力,对AI评估与应用提出了新挑战,同时也带来了设计更高效模型的新机遇。论文链接:https://arxiv.org/pdf/2410.02707
46 11
|
2月前
|
自然语言处理 开发者
多模态大模型LLM、MLLM性能评估方法
针对多模态大模型(LLM)和多语言大模型(MLLM)的性能评估,本文介绍了多种关键方法和标准,包括模态融合率(MIR)、多模态大语言模型综合评估基准(MME)、CheckList评估方法、多模态增益(MG)和多模态泄露(ML),以及LLaVA Bench。这些方法为评估模型的多模态和多语言能力提供了全面的框架,有助于研究者和开发者优化和改进模型。
148 5
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
大模型强崩溃!Meta新作:合成数据有剧毒,1%即成LLM杀手
在人工智能领域,大型语言模型(LLMs)的快速发展令人瞩目,但递归生成数据可能导致“模型崩溃”。Meta的研究揭示,模型在训练过程中会逐渐遗忘低概率事件,导致数据分布偏差。即使少量合成数据(如1%)也会显著影响模型性能,最终导致崩溃。研究强调保留原始数据的重要性,并提出社区合作和技术手段来区分合成数据和真实数据。论文地址:https://www.nature.com/articles/s41586-024-07566-y
89 2
|
2月前
|
人工智能 自然语言处理 算法
政务培训|LLM大模型在政府/公共卫生系统的应用
本课程是TsingtaoAI公司面向某卫生统计部门的政府职员设计的大模型技术应用课程,旨在系统讲解大语言模型(LLM)的前沿应用及其在政府业务中的实践落地。课程涵盖从LLM基础知识到智能化办公、数据处理、报告生成、智能问答系统构建等多个模块,全面解析大模型在卫生统计数据分析、报告撰写和决策支持等环节中的赋能价值。
77 2
|
3月前
|
人工智能 自然语言处理 运维
前端大模型应用笔记(一):两个指令反过来说大模型就理解不了啦?或许该让第三者插足啦 -通过引入中间LLM预处理用户输入以提高多任务处理能力
本文探讨了在多任务处理场景下,自然语言指令解析的困境及解决方案。通过增加一个LLM解析层,将复杂的指令拆解为多个明确的步骤,明确操作类型与对象识别,处理任务依赖关系,并将自然语言转化为具体的工具命令,从而提高指令解析的准确性和执行效率。

热门文章

最新文章