「吴恩达Agentic AI 模块1」:智能体AI工作流学习指南

本指南旨在评估和深化对吴恩达(Andrew Ng)关于智能体AI工作流课程核心概念的理解。它包括一个测验、一份答案解析、一组论文问题和一个关键术语词汇表,所有内容均基于提供的课程材料。

测验:

简答题

请用2-3句话回答以下每个问题,以检验您对核心概念的理解。

  1. 什么是智能体AI工作流(Agentic AI Workflow)?它与传统的单次提示方法有何不同?
  2. 吴恩达为什么创造并推广“agentic”(智能体的)这个词,而不是简单地使用“agent”(智能体)?
  3. 智能体系统中的“自主性”(autonomy)谱系是如何划分的?请描述其两端。
  4. 根据课程内容,使用智能体工作流相比非智能体方法,在性能提升方面有何显著优势?请引用编码基准测试的例子。
  5. 除了提升性能,智能体工作流还提供了哪两个主要好处?
  6. 什么是“任务分解”(Task Decomposition)?为什么它在构建智能体工作流中至关重要?
  7. 在构建智能体工作流时,开发人员可以使用哪些核心“构建模块”(building blocks)?
  8. 请简要解释“反思”(Reflection)这一智能体设计模式及其工作原理。
  9. 什么是“工具使用”(Tool Use)设计模式?请举例说明。
  10. 评估(evals)在开发智能体工作流中扮演什么角色?请描述两种主要的评估方法。

答案解析

  1. 什么是智能体AI工作流(Agentic AI Workflow)?它与传统的单次提示方法有何不同? 智能体AI工作流是一个基于LLM(大语言模型)的应用程序执行多个步骤来完成任务的过程。与传统的单次提示(直接生成最终结果)不同,智能体工作流是一个迭代过程,可能包括规划、研究、草拟和修订,从而产生更高质量的成果。
  2. 吴恩达为什么创造并推广“agentic”(智能体的)这个词,而不是简单地使用“agent”(智能体)? 吴恩达创造“agentic”这个形容词是为了避免关于什么是“真正的智能体”的二元论争议。他认为系统可以在不同程度上表现出智能体特性,使用“agentic”可以承认这种程度上的差异,让社区专注于构建系统,而不是争论定义。
  3. 智能体系统中的“自主性”(autonomy)谱系是如何划分的?请描述其两端。 智能体系统的自主性谱系从“低自主性”到“高自主性”不等。低自主性系统通常遵循由程序员预先确定的、确定性的步骤序列;而高自主性系统则能自主做出许多决策,包括决定执行任务的步骤顺序,甚至可能创建新工具。
  4. 根据课程内容,使用智能体工作流相比非智能体方法,在性能提升方面有何显著优势?请引用编码基准测试的例子。 智能体工作流能够显著提升性能,其提升幅度甚至可能超过模型本身的代际升级。在Human Eval编码基准测试中,将GPT-3.5与智能体工作流结合使用,其性能提升幅度超过了从GPT-3.5升级到GPT-4所带来的性能提升。
  5. 除了提升性能,智能体工作流还提供了哪两个主要好处? 除了性能提升,智能体工作流还提供了另外两个好处:并行化(parallelism)和模块化(modularity)。并行化允许系统同时执行多个任务(如并行下载多个网页),从而比人类更快地完成某些工作;模块化则允许开发者轻松地添加、更新或替换工作流中的组件(如更换搜索引擎或LLM模型)。
  6. 什么是“任务分解”(Task Decomposition)?为什么它在构建智能体工作流中至关重要? 任务分解是将一个复杂的任务或流程分解成一系列离散、更小的步骤的过程。这在构建智能体工作流中至关重要,因为它能将一个宏大目标转化为可由LLM或软件工具执行的具体、可管理的操作序列,从而实现整个工作流。
  7. 在构建智能体工作流时,开发人员可以使用哪些核心“构建模块”(building blocks)? 开发人员可以使用的核心构建模块包括AI模型(如大语言模型或多模态模型)和软件工具。软件工具涵盖了多种功能,例如用于信息检索的API(如网络搜索、数据库查询)、用于执行任务的代码执行工具,以及与其他生产力应用(如邮件、日历)交互的接口。
  8. 请简要解释“反思”(Reflection)这一智能体设计模式及其工作原理。 “反思”是一种设计模式,即让LLM检查其自身的输出,并根据反馈进行迭代改进。例如,一个LLM生成代码后,可以提示它(或另一个“批评家”LLM)检查代码的正确性并提出批评,然后根据这些批评生成一个修正后的、更好的版本。
  9. 什么是“工具使用”(Tool Use)设计模式?请举例说明。 “工具使用”是一种设计模式,即赋予LLM调用外部函数或API(即“工具”)的能力来完成任务。例如,当被问及一个需要实时信息的问题时,LLM可以调用一个网络搜索工具来查找最新数据;当需要精确计算时,它可以调用一个代码执行工具来编写并运行代码得出答案。
  10. 评估(evals)在开发智能体工作流中扮演什么角色?请描述两种主要的评估方法。 评估在开发智能体工作流中扮演着至关重要的角色,它用于衡量系统性能、发现问题并推动迭代改进。两种主要的评估方法是:针对客观标准的评估,可以通过编写代码来检查(如检查输出中是否提及竞争对手);以及针对主观标准的评估,通常使用“LLM作为裁判”(LLM as a judge)的方法,让另一个LLM为输出质量打分。

论文问题

请针对以下问题进行深入思考和阐述,无需提供答案。

  1. 详细论述智能体AI工作流的自主性谱系。结合课程中提到的应用案例(如发票处理和通用客户服务),分析在不同自主性程度上,系统的可靠性、可控性与任务复杂性之间的权衡关系。
  2. 解释“任务分解”在设计高效智能体工作流中的核心作用。请以设计一个“自动化法律文件合规审查代理”为例,构思并描述您会如何将其分解为一系列可执行的步骤,并说明每个步骤选择的构建模块(LLM或工具)。
  3. 分析吴恩达所提出的四种关键设计模式:反思、工具使用、规划和多智能体协作。请选择其中两种模式,深入比较它们的应用场景、实现复杂性以及它们如何共同作用以解决比单一模式更复杂的任务。
  4. “一个 disciplined evaluation process(严谨的评估流程)是成功构建智能体工作流的最重要预测指标之一。” 请阐述您对这句话的理解。讨论端到端评估(end-to-end evals)与组件级评估(component level evals)各自的优缺点,并说明错误分析(error analysis)如何驱动工作流的迭代优化。
  5. 展望未来,课程中提到的“计算机使用代理”(computer use agents)代表了智能体AI的一个前沿研究领域。请讨论实现可靠的计算机使用代理所面临的主要挑战(如网页加载慢、界面解析困难),并探讨解决这些挑战可能的技术路径。

词汇表

术语 定义
智能体AI (Agentic AI) 一种重要的、快速增长的人工智能应用构建趋势,其核心是使用智能体工作流来完成复杂任务。
智能体AI工作流 (Agentic AI Workflow) 一种基于大语言模型的应用执行多个步骤来完成任务的过程。它通常是迭代的,包括思考、研究、修订等环节,以产生更高质量的输出。
自主性 (Autonomy) 智能体系统在没有人类预先硬编码的情况下自主做出决策和决定行动顺序的程度。这个概念存在一个从低到高的谱系。
任务分解 (Task Decomposition) 将一个复杂的、宏观的任务分解成一系列更小、离散且可由LLM或软件工具执行的步骤的过程。这是构建智能体工作流的关键技能。
评估 (Evaluations / evals) 用于衡量智能体工作流性能、发现错误和不足之处的流程。它是推动系统迭代改进的关键,包括客观指标和主观判断。
LLM作为裁判 (LLM as a Judge) 一种主观评估技术,即使用一个LLM来评估另一个LLM生成的输出的质量,通常是通过提示其对输出内容进行评分。
反思 (Reflection) 一种智能体设计模式。它让LLM检查并批判自己的输出,然后利用这些反馈或外部信息(如代码错误信息)来迭代生成一个更好的版本。
工具使用 (Tool Use) 一种智能体设计模式。它赋予LLM调用外部函数或API(即“工具”)的能力,如网络搜索、代码执行或数据库查询,以完成超越纯文本生成的任务。
规划 (Planning) 一种智能体设计模式。它让LLM自主决定为完成一项复杂任务所需采取的行动序列,而不是由开发者预先硬编码步骤。
多智能体协作 (Multi-Agent Collaboration) 一种智能体设计模式。它通过模拟多个拥有不同角色(如CEO、程序员、测试员)的智能体,让它们协同工作以完成复杂的项目。
构建模块 (Building Blocks) 构建智能体工作流的基本组件,主要包括AI模型(如LLM)和各种软件工具(如API调用、代码执行器、信息检索器)。