翁丽莲 LLM Powered Autonomous Agents

摘要

大型语言模型(LLM)作为自主代理的核心控制器是一个创新概念。LLM驱动的自主代理系统(ai agent)主要包含三个关键组件:

  • 规划(包括任务分解和自我反思)
  • 记忆(包括短期和长期记忆)
  • 工具使用能力。

这种系统通过LLM的推理能力,结合外部工具和记忆系统,可以完成复杂的认知任务。但当前这类系统仍面临上下文长度有限、长期规划困难、自然语言接口可靠性等挑战。
Overview of a LLM-powered autonomous agent system

要点

  • LLM作为代理系统的"大脑",需要规划、记忆和工具使用三个关键组件的支持
  • 规划组件包括任务分解和自我反思,可以将复杂任务分解为可管理的子目标
  • 记忆系统分为短期记忆(上下文学习)和长期记忆(外部向量存储)
  • 工具使用能力使LLM可以调用外部API和服务来扩展其功能
  • 目前已有多个概念验证系统,如AutoGPT和GPT-Engineer等
  • 系统需要处理格式解析和错误处理等工程挑战
  • 当前主要限制包括有限的上下文长度、长期规划能力不足等问题

有效地整合外部工具和知识库来增强LLM代理的能力

提升LLM代理对外部工具和知识库的综合利用能力,核心在于为模型提供明确的“调用方式”和“调用时机”,并辅以高效的检索与上下文管理机制。以下几点是实践过程中常见的关键做法:

  1. 工具的可调用接口与规范化输出
  • 以自然语言对话的方式向LLM提供工具的功能、输入/输出格式,帮助模型清楚地理解何时应调用某个工具,以及应该生成怎样的参数。像Toolformer或ChatGPT Plugins使用显式标注或函数描述,让LLM在生成回答时“插入”相应的工具调用。
  • 确保对LLM返回结果进行解析,以处理可能的格式化错误或“幻觉”输出。这通常通过在代理层写解析代码、检查返回JSON格式等方式增强稳定性。
  1. 知识库检索与长程记忆
  • 结合向量数据库(如FAISS、HNSW、ScaNN等)可以让代理快速检索到相关文档或以往记录,从而在有限的上下文窗口外获取更多信息。
  • 通过将大文本分段索引,把检索到的匹配内容注入到提示中,就能缓解“上下文窗口限制”,但仍要注意分块后对话结构的合理性,避免噪声信息影响模型判断。
  1. 规划与反馈回路
  • 在工具调用前明确拆分复杂任务为子任务,LLM需要知道任务目标和可用工具清单,以便“先计划,再调用”。
  • 借助自我反思(Reflection),LLM对先前步骤的输出进行检查,在必要时纠正或重新调用工具。这样能保证对话在多轮协作中不断提高准确度和鲁棒性。
  1. 框架与扩展实践
  • 在HuggingGPT或ChemCrow等具体系统中,模型不仅需要“知道有多少工具”,还需掌握工具何时可用、何时需要跨工具协作。通过选模组件或Plan-Select-Execute的多阶段流程,代理可以自主挑选和组合不同工具或模型推理结果。
  • 对于专业领域(如科学研究、金融分析),可配置一批专门API或模型(如药物分析、分子合成工具)扩展LLM在垂直场景的能力,并以专家评审或测试集合对生成结果做质量把关,从而保证最终输出的可信度。

参考

https://lilianweng.github.io/posts/2023-06-23-agent/
https://kns.cnki.net/nzkhtml/xmlRead/trialRead.html?dbCode=CJFD&tableName=CJFDTOTAL&fileName=DSJD202312002&fileSourceType=1&invoice=kjrZD%2fC7xcvOyXDA2%2bOtzODGT3YPmoc6pffyvVQBmeHw%2f9OVUQHYyMiznkM1Nj4vkeJq2MW5FjGwdpfNg2pZxfwzOdvU88CrujWbxfiuxUFT9XkjU%2b7rNBOydRt5llcUcJ82q2m0JtNGaAghoHCGjpI4pAjUkr43XDdzCoGjzDU%3d&appId=KNS_BASIC_PSMC

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值