增强语言模型 ALM

增强语言模型(Augmented Language Models,ALM)

  • ALM 指 LLM 使用各种非参数的外部模块/工具,来扩展上下文处理能力
  • LLM 在事实确认、信息更新、算术推理和程序编译等方面存在客观局限性
  • LLM 可以通过提示、微调、强化学习等方式优化,来更好地利用外部工具
  • ALM 常用外部工具:搜索引擎、浏览器、编程工具、其他模型、智能硬件

按照模型增强的方式可大致分为:检索增强、编程增强、工具增强、综合增强

检索增强:检索增强 RAG高级 RAG 技术

编程增强:

  • 直接利用 LLM 来生成包含文本和 Python 代码的混合输出
  • 代码交给 Python 解释器来执行,从而实现推理和计算的解耦
  • 借助编程工具,增强 LLM 对复杂推理、数值/方程计算的能力
  • 经典方法:程序辅助语言模型(PAL)、思维程序提示(PoT)

工具增强:

  • 广义上所有 ALM 都可以看做一种工具增强,LLM 只需要负责推理,而推理之外的工作都可以通过调用外部工具来实现;此处的工具增强偏狭义,主要指浏览器、计算器、QA 系统、翻译系统等常见软件工具
  • 目前主流 LLM 都可以通过 Function CallingMCP 协议来实现外部标准定义工具的调用
  • TALM 和 Toolformer 通过自监督(self-supervised) 机制,让 LLM 学习如何以及何时使用工具
  • 自动推理并使用工具 (Automatic Reasoning and Tool-use, ART) 则是一种工具增强的提示框架,可以引导模型的推理和工具调用过程,并支持灵活的链式调用、人工反馈和手动扩展

综合增强:

  • Agents = 大模型 + 记忆 + 任务规划 + 工具使用
  • ReAct(1)交替生成推理轨迹和任务行动,并实现二者的最大协同(2)推理轨迹主要包括模型的引导与跟踪、任务行动更新和异常情况处理(3)任务行动主要包括与知识库或外部环境的交互
  • HuggingGPT (1)对任务请求进行规划和拆分(2)在 Hugging Face 开源模型中按照任务类型和模型热度进行模型列表初筛(3)让 LLM 选择合适的开源模型来完成子任务(3)汇总子任务结果并输出结论

其他拓展阅读:提示工程 Prompt思维链 CoT 技术

参考:

Augmented Language Models: a Survey
提示工程学习笔记(二)

往年同期文章