LLM 自主代理

94 阅读2分钟

LLM 自主代理


代理系统概述 | Agent System Overview

以 LLM(大型语言模型)作为核心控制器构建代理是一个创新的概念。AutoGPT、GPT-Engineer 和 BabyAGI 等项目展示了其潜力。LLM 的能力不仅限于生成文本和代码,更可成为通用问题解决工具。

核心组件

  1. 规划(Planning)

    • 子目标分解:将复杂任务拆解为可管理的子任务。
    • 反思与优化:通过自我批评改进策略,提升结果质量。
  2. 记忆(Memory)

    • 短期记忆:通过上下文学习实现即时推理。
    • 长期记忆:借助外部向量存储实现信息持久化。
  3. 工具使用(Tool Use)

    • 调用外部 API 补充模型知识(如实时数据、代码执行等)。

规划 | Planning

任务分解

  • 思维链(CoT) :通过分步思考解决复杂问题,如提示模型“逐步分解任务”。
  • 思维树(ToT) :探索多路径推理,结合广度/深度优先搜索。
  • LLM+P 方法:利用经典规划器(如 PDDL)处理长期任务。

自我反思

  • ReAct 框架:结合推理(自然语言)与行动(API 调用),通过 Thought → Action → Observation 循环优化决策。
  • Reflexion 框架:动态记忆与自我评估,通过失败轨迹生成改进策略。
  • 后见之明链(CoH) :基于反馈历史微调模型,实现渐进式优化。

记忆 | Memory

记忆类型

  • 感觉记忆:短期感官输入(如视觉/听觉)。
  • 短期记忆:工作记忆(约 7 个信息块,持续 20-30 秒)。
  • 长期记忆:外部向量存储,支持快速检索。

高效检索技术

  • 近似最近邻(ANN)算法

    • LSH(局部敏感哈希)
    • HNSW(分层可导航小世界)
    • FAISS(Facebook 相似性搜索)
    • ScaNN(各向异性量化)

工具使用 | Tool Use

关键框架

  • MRKL 系统:模块化架构,LLM 作为路由调用符号/神经模块。
  • HuggingGPT:利用 ChatGPT 协调 HuggingFace 模型,实现多任务处理。
  • API-Bank 基准:评估工具增强型 LLM 的 API 调用能力。

实践案例

  • ChemCrow:化学领域代理,集成 13 种工具完成合成设计。
  • 生成式代理模拟:25 个虚拟角色在沙盒环境中交互,展现社会行为涌现。

挑战与展望

  1. 有限上下文:需平衡注意力范围与历史信息利用。
  2. 长期规划:面对意外错误时调整策略的能力不足。
  3. 自然语言接口可靠性:输出格式错误或拒绝对指令的响应。

参考文献

  1. Wei et al. "Chain of Thought Prompting Elicits Reasoning in Large Language Models." NeurIPS 2022.
  2. Yao et al. "Tree of Thoughts: Deliberate Problem Solving with Large Language Models." arXiv:2305.10601.
  3. Park et al. "Generative Agents: Interactive Simulacra of Human Behavior." arXiv:2304.03442.