FWQ
谷歌 AI Agent 白皮书 3/3
本篇对应原白皮书以下章节: 3. 通过针对性学习提升模型性能 现实场景通常需要超出训练数据的知识,有以下几种方法帮助模型/agent 获取这些知识: 在推理时通过提示词提供示例 基于检索的上下文学习 (RAG):提供外部知识库 基于 Fine-tune 的学习:使用特定数据微调 有效使用模型的关键之一是它们在生成输出时能够选择合适的工具,特别是在生产环境中大规模使用工具时。 虽然一般的训练有助于模型发展这一技能,但现实场景通常需要超出训练数据的知识。可以将其想象为基本烹饪技能与精通特定菜系之间的区别。两者都需要基础的烹饪知识,但后者需要针对更细致结果的专门学习。 为了帮助模型获取这种特定知识,存在几种方法: 上下文学习:这种方法在推理时为通用模型提供提示、工具和少样本示例,使其能够在特定任务中“即时”学习如何以及何时使用这些工具。ReAct 框架是自然语言处理中这种方法的一个例子。 基于检索的上下文学习:该技术通过从外部存储中检索最相关信息、工具和相关示例,动态填充模型提示。例如,Vertex AI 扩展中的“示例存储”或之前提到的基于 RAG 架构的数据存储。 基于微调的学习:这种方法在推理之前使用更大的特定示例数据集训练模型。这有助于模型在接收到任何用户查询之前理解何时以及如何应用某些工具。 为了进一步深入了解每种针对性学习方法,让我们回顾一下我们的烹饪类比。 假设有一位厨师收到了一份具体的食谱(提示)、一些关键食材(相关工具)以及一些示例菜肴(少量示例)。基于这些有限的信息和厨师对烹饪的普遍知识,他们需要“即兴”想出如何准备一道最符合食谱和顾客偏好的菜肴。这就是上下文学习。 现在,让我们想象一下,这位厨师在一个备有丰富食材的厨房(外部数据存储)中,里面装满了各种食材和烹饪书(示例和工具)。厨师现在能够从储藏室中动态选择食材和烹饪书,从而更好地符合顾客的食谱和偏好。这使得厨师能够利用现有和新知识,制作出更明智和精致的菜肴。这就是基于检索的上下文学习。 最后,假设我们把这位厨师送回学校学习一种或多种新的菜系(在更大的特定示例数据集上进行预训练)。这使得厨师能够以更深入的理解来应对未来未见过的顾客食谱。如果我们希望厨师在特定菜系(知识领域)中表现出色,这种方法非常完美。这就是基于微调的学习。 每种方法在速度、成本和延迟方面都有独特的优势和劣势。然而,通过在代理框架中结合这些技术,我们可以利用各自的优势并最小化其劣势,从而实现更强大和适应性更强的解决方案。 4.…