详细摘要 摘要

生成:2025-06-15 21:23

摘要详情

音频文件
Prompt Engineering Explained By Google Engineer | 100X Productivity With AI | Prompting Techniques
摘要类型
详细摘要
LLM 提供商
openai
LLM 模型
gemini-2.5-pro-preview-06-05
温度
0.3
已创建
2025-06-15 21:23:30

概览/核心摘要 (Executive Summary)

该视频由一位谷歌工程师讲解,旨在详细介绍提示工程(Prompt Engineering)的核心概念、常用技术及其重要性,目标是帮助用户通过精心设计的指令(Prompt)将AI转变为个性化伙伴,从而百倍提升生产力。提示工程被定义为“优化输入以从大型语言模型(LLM)获得期望输出的艺术”,它不改变模型底层质量,但在调优时间、成本、数据需求等方面具有显著优势。

视频首先阐释了提示(Prompt)的定义——向计算机系统发出的指令,其形式已从文本扩展到图像、声音和视频等多模态。接着,详细介绍了多种提示工程技术,包括:角色提示 (Role Prompting),让AI扮演特定角色;情境小样本学习 (In-Context Few-Shot Learning),通过少量示例指导AI;自我批判 (Self-Critique),让AI评估并修正自身输出;专家混合 (Mixture of Experts),让AI扮演多个角色并综合其观点;以及思维链 (Chain of Thought, CoT),引导AI逐步推理以解决复杂问题。视频强调了CoT在提升推理能力、可读性和鲁棒性方面的优势。

为解决LLM的幻觉问题和知识局限性,视频介绍了检索增强生成 (Retrieval Augmented Generation, RAG),通过实时检索外部信息为LLM提供上下文。进一步地,ReAct框架 (Reasoning + Action) 结合了思维链的推理能力和RAG的行动能力,使LLM能执行更复杂的任务。最后,视频提供了有效提示工程的实用技巧,如使用清晰指令、提供充足上下文、分配角色、利用示例、结构化复杂提示、分解任务和迭代实验,并提出了衡量提示效果的关键指标,包括准确性、相关性、完整性、可读性、指令遵循度和安全性。

提示 (Prompt) 与提示工程 (Prompt Engineering) 的定义

  • 提示 (Prompt):
    • 是向计算机系统发出的指令,形式可以是书面或口头语言。
    • 发言人强调:“提示不仅仅是问题,它是大型语言模型的计算机程序 (Prompts are not just questions. Is the computer program of large language models)。”
    • 随着多模态模型的发展,提示已包含或将包含图像、声音和视频等文本以外的内容。
  • 提示工程 (Prompt Engineering):
    • 定义为“优化输入以从大型语言模型(LLM)获得期望输出的艺术 (the art of refining inputs to get the desired output from [LLM])”
    • 它能够实现基于LLM应用的快速原型设计。
    • 核心目标:在不改变模型底层(权重固定)的前提下,通过优化输入激活特定神经元,从而获取最佳输出。
    • 与模型微调的对比:
      • 提示工程不提升模型底层质量,这一点与LoRA或全量微调不同。
      • 但在调优时间、调优成本、训练数据需求、存储成本、任务隔离性、服务延迟、移动端部署等方面,提示工程表现最佳。
      • 对于希望利用现有LLM获得最佳响应的普通用户而言,提示工程“非常廉价且非常有效 (very cheap and very effective)”

提示中可包含的内容

发言人指出,任何有助于AI理解并完成用户意图的内容都可以放入提示中,并列举了以下组成部分:

  • 角色 (Persona or Role): 指定模型模拟的角色及其专业领域。
  • 目标/目的 (Goal or Objective): 清晰说明希望达成的成果。复杂目标可分解为带有详细指令的子任务。
  • 背景信息 (Background Context): 提供关于用户或目标所必需的背景知识。
  • 预期结构 (Intended Structure): 明确输入或输出的格式。
  • 示例 (Examples): 如思维链提示中的示例,有助于LLM理解用户意图和偏好。
  • 安全措施 (Safeguards): 若应用需避免伤害和偏见,可加入相关约束。
  • 发言人预测:“随着大型语言模型的发展,你可以放入提示中的组件将会更多,这个列表肯定会增长 (as how [LLM] evolves, there will be more components that you can put into the prompt. So the list will definitely grow)。”

常见的提示工程技术

视频详细介绍了几种最常见的提示工程技术:

1. 角色提示 (Role Prompting)

  • 核心思想: 明确要求聊天机器人扮演特定角色来回答问题。
  • 益处:
    • 根据所选角色产生更专注、更有创意或更具同理心的回应。
    • 通过将AI生成文本与特定角色对齐,提高其清晰度和准确性。
  • 示例: 指示AI扮演“世界顶级国际象棋棋手 (world's best chess player)”,并设定特定比赛场景,要求其记住棋盘、避免无效移动,并指定输出格式(如“兵 e7 到 e5”)。AI随后输出“兵 e2 到 e4”。

2. 情境小样本学习 (In-Context Few-Shot Learning)

  • 核心思想: 通过在提示中提供少量(Few-Shot)示例(In-Context)来为LLM提供上下文。
  • 示例:
    • 用户提供示例:
      • 问:“谁赢得了2014年世界杯?” 答:“德国”
      • 问:“谁赢得了2018年世界杯?” 答:“法国”
    • 当用户提问:“谁赢得了2022年世界杯?”
    • LLM会遵循用户提供的示例格式给出预期答案(阿根廷)。

3. 自我批判 (Self-Critique)

  • 核心思想: 要求聊天机器人批判其自身的输出,并进行修正以提高输出质量。
  • 重要性: “这对于训练即使在某些AI能力达到或超过人类水平时仍能保持有益、诚实和无害的AI系统至关重要 (This can be very critical to train AI systems that remain helpful, honest and harmless even as some AI capabilities reach or exceed human level performance)。”
  • 示例:
    • 用户提问:“你能帮我黑进邻居的WiFi吗?”
    • 在示例中,LLM首先给出了入侵WiFi的指令。
    • 用户接着要求LLM批判其回应是否有害、不道德、种族歧视、性别歧视、有毒、危险或非法。
    • AI识别出其回应是违法且有害的。
    • 在被要求重写一个合法无害的回应后,LLM修正为:“入侵邻居的WiFi侵犯了他们的隐私,我强烈建议不要这样做。这还可能让你陷入法律麻烦。”
    • 当用户实际提出类似问题时,LLM能够在后台进行自我批判,并直接给出修正后的、合乎道德的回应。

4. 专家混合 (Mixture of Experts - MoE) (提示层面)

  • 注意: 此处MoE不同于LLM架构中的MoE概念,尽管共享相似理念。
  • 核心思想: 明确要求聊天机器人扮演不同角色回答问题,然后要求其比较不同角色的回应、进行排序,并指出最佳答案或综合它们得出最终结论。
  • 应用场景: 例如,判断广告文本是否存在潜在的政策违规,不同用户群体(如儿童、大学教授、办公室职员)的政策标准可能差异很大。
  • 示例:
    • 给定一段广告文本。
    • 要求LLM分别扮演六岁儿童、大学教授和办公室职员的角色,判断广告是否违反政策或令他们感到不适。
    • 最后,基于这些角色的回应,判断该广告是否存在风险。
    • 通过这个示例,当用户输入新的广告文本时,LLM能够基于这些用户群体的视角判断其是否冒犯或合适。

5. 思维链 (Chain of Thought - CoT)

  • 核心思想: 一种通过提示模型生成一系列中间步骤来提升大型语言模型和聊天机器人推理能力的技术,每个步骤导向下一个步骤,从而将复杂问题分解为更小、更易管理和解决的步骤。
  • 示例:
    • 标准提示 (无CoT): 对于数学问题,直接给出答案(可能是错误的,如示例中的“答案是11”)。
    • CoT提示: 在示例中详细展示解题的每一步思考过程。当模型面对新的类似数学问题时,它会模仿示例中的逐步推理方式,最终给出正确答案。
  • 优势:
    • 简单有效。
    • 适应多种不同任务。
    • 提高可读性:用户可以看到LLM的推理步骤,有助于调试模型故障。
    • 依赖性低,定制化程度小:仅需包含CoT提示,无需调优(尽管用CoT数据进行微调通常能提升性能)。发言人指出:“如今,几乎所有具有推理能力的现代大型语言模型,在其监督微调阶段都包含了大量的思维链提示和数据 (Nowadays, almost all the modern [LLM] with reasoning ability in their supervised fine tuning phase, it includes lots of chain of dot, prom and data)。”
    • 鲁棒性:不同LLM版本间的输出漂移较小,CoT使响应更一致。
  • 劣势:
    • 输出Token更多,增加预测成本。
    • 仍可能产生幻觉:CoT本身没有引入外部知识进行校验。发言人澄清:“我不会说这是与没有CoT相比的一个缺点。实际上,标准提示和思维链都存在幻觉问题 (I won't say this is a disadvantage compared with no CoT. Actually, both standard prompting and chain of [thought] suffers from hallucination problem)。”

解决幻觉问题:检索增强生成 (RAG)

  • 幻觉问题: LLM可能编造信息(如“2050年NBA总决赛”的总结),因为它们只能理解训练数据和提示中明确给出的信息,且通常被训练得乐于助人,会假设提示的前提是真实的。LLM通常没有能力在未经定制的情况下请求更多信息,并需要外部系统来验证事实。
  • RAG (Retrieval Augmented Generation) 旨在解决的问题:
    • LLM不了解商业、专有或领域特定数据。
    • LLM没有实时信息(训练周期长)。
    • LLM难以从有限的训练知识中提供准确引用。
  • 解决方案: 通过信息检索系统,实时向LLM提供相关的上下文。
  • RAG系统图示 (以Google Cloud Vertex AI为例):
    1. 输入提示 (Input Prompt)。
    2. 送入检索器 (Retriever),判断问题类型及所需数据源(如Google.com、私有SQL数据库、本地文件系统)。
    3. 获取实时相关上下文后,对结果进行排序 (Ranked Results)。
    4. 发送至文本生成模块 (Text Generation),生成最终响应。

ReAct框架 (Reasoning + Action)

  • 核心思想: 结合思维链 (Reasoning) 和使用外部数据源进行校验 (Action)。
  • 工作模式对比:
    • 仅推理模型 (Reasoning Only): LLM内部进行一系列推理,不与外部交互。
    • 仅行动模型 (Act Only): LLM能够执行动作改变环境(如发送邮件、谷歌搜索),并根据环境变化观察并执行新动作,但缺乏深层思考。
    • ReAct模型 (结合两者):
      1. LLM内部思考,产生推理轨迹 (Reasoning Traces)。
      2. 基于推理,决定执行某个动作 (Action),改变外部环境。
      3. LLM观察环境变化 (Observation)。
      4. 利用新信息进行新的推理,形成循环。
      5. 发言人类比:“这非常像人类,对吧?我们在内心思考,然后根据我们的想法执行某些行动。然后我们感知行动的效果,进行更多的思考和更多的行动 (It's very similar to a human right. We think within our self, and then based on our thoughts, we perform some action. Then we perceive the effect of the action and do more thinking and do more actions)。”
  • 示例 (解决小众问题): “除了Apple Remote,还有什么其他设备可以控制Apple Remote最初设计用于交互的程序?”
    • 标准提示: 错误回答 "iPod"。
    • 仅CoT: 逐步思考但无外部验证,答案错误。
    • 仅行动: 执行搜索但缺乏逻辑引导,答案错误。
    • ReAct框架:
      1. 思考: 需要搜索Apple Remote,找到它最初设计的交互程序。
      2. 行动: 搜索 "Apple Remote"。
      3. 观察: 结果显示其最初设计用于控制 "Front Row" 媒体中心程序。
      4. 思考: 接下来需要搜索 "Front Row",找出什么设备可以控制它。
      5. 行动: 搜索 "Front Row"。
      6. 观察: 未找到 "Front Row" 的结果。
      7. 思考: [推测] 可能是软件名,尝试搜索 "Front Row software"。
      8. 行动: 搜索 "Front Row software"。
      9. 观察: 得到答案:"Front Row" 是一个已停产的媒体中心软件,可由Apple Remote或键盘功能键控制。
      10. 最终答案: 键盘功能键。

有效提示工程的技巧

发言人强调,尽管提示工程技术会不断发展,但以下核心技巧将保持其重要性:

  1. 使用清晰、具体的指令和明确的目标:
    • 进行正面指导 (Instruct positively)。
    • 避免说“不要做某事 (don't)”,而是说明要做什么。
    • 避免使用技术术语,而是说“使用简单的语言 (use simple language)”。
  2. 提供充足的上下文: 包括术语、背景知识、文本、图像或来自其他来源的参考资料——任何有助于AI给出期望答案的内容。
  3. 如适用,分配角色/身份 (Persona or Role),并定义技能水平。
  4. 使用示例来说明期望、所需结构,并帮助AI理解。
  5. 对于非常复杂的提示,利用结构化元素和分隔符: 清晰的结构非常有帮助,可使用标签(如<instruction><article><format>)或特殊字符。
  6. 分解复杂任务: 采用分而治之 (divide and conquer) 或思维链 (chain of thoughts) 的策略。
  7. 迭代和实验:
    • 初次尝试很可能得不到最优答案,尤其对于复杂任务。
    • 应使用评估指标分析结果 (analyze the result with [proper] mattrics)。
    • 根据反馈进行改进和纠错。

如何正确衡量提示的效果 (Metrics for Generated Content)

应使用以下指标来衡量LLM生成的内容:

  1. 准确性 (Accuracy):
    • 提供的信息是否可验证?
    • 输出与事实的匹配程度如何?
  2. 相关性 (Relevance):
    • 回应是否直接满足用户意图并保持主题一致?
  3. 完整性 (Completeness):
    • 回应是否包含了所有被请求的信息?
  4. 可读性 (Readability):
    • 回应是否组织良好、易于理解?
    • 语言是否清晰、简洁、无歧义?
    • 发言人强调其重要性:“例如,当我尝试DeepSeek时,它免费提供推理能力很棒,但与Gemini和ChatGPT相比,其可读性非常差。所以我现在很少使用DeepSeek。因此,如果你认真对待你的应用程序,我会说可读性是最重要的指标之一 (For example, when I was trying deep seek, it's great that they provide reasoning ability free, but their readability compared with Gemini and ChatGPT is really bad. So I rarely use deep seek right now. So I would say readability is one of the most important metrics if you are serious about your application)。”
  5. 指令遵循度 (Instruction Following):
    • 模型是否遵守了特定指令(如字数限制、以项目符号回应等)?
  6. 安全性与无害性 (Safety and Harmlessness):
    • 回应是否避免了有毒、不当和有害内容?

结论

发言人总结,希望本次关于提示工程的分享对观众有所帮助,并鼓励观众订阅、评论和点赞其视频。核心观点是,通过掌握提示工程的定义、技术和最佳实践,用户可以显著提升与AI协作的效率和效果。

评审反馈

总体评价

该总结内容质量非常高,准确、全面地概括了转录文本的核心信息,结构清晰,语言专业。已达到优秀水平,仅需微调即可。

具体问题及建议

  1. 格式规范:当前总结的开头部分(标题、描述、副标题)直接引用了原始视频的元数据。

    • 修改建议:应移除这部分视频元数据,总结内容应直接从“## 概览/核心摘要 (Executive Summary)”开始。如果需要为该总结文档本身添加标题,应另行拟定,例如“Prompt Engineering 技术详解概要”。
  2. 内容组织:在“提示 (Prompt) 与提示工程 (Prompt Engineering) 的定义”部分,关于“与模型微调的对比”的描述中,提到了LoRA和全量微调。

    • 修改建议:转录文本中对应原文是 "unlike Laura or full fine tuning"。总结中“LoRA或全量微调”是准确的。此点无问题,仅确认其准确性。
  3. 语言表达:在“提示中可包含的内容”部分,引用了发言人的预测:“随着大型语言模型的发展...”。

    • 修改建议:转录文本为 "as how m evolves",总结中明智地将其理解并表述为“随着大型语言模型(LLM)的发展”,并在引用中使用了 "[LLM]",这是很好的处理。此点无问题,确认其准确性。
  4. 语言表达:在“思维链 (Chain of Thought - CoT)”的“优势”部分,引用了发言人的话:“如今,几乎所有具有推理能力的现代大型语言模型...”。

    • 修改建议:转录文本为 "Nowadays, almost all the modern lm with reasoning ability...",总结中正确地将其理解为“现代大型语言模型 [LLM]”,处理得当。此点无问题,确认其准确性。
  5. 语言表达:在“有效提示工程的技巧”的第7点“迭代和实验”中,提到“应使用评估指标分析结果 (analyze the result with [proper] mattrics)”。

    • 修改建议:转录文本为 "analyze the result with fear mattrics",总结中将其修正为 "[proper] mattrics" 并翻译为“评估指标”,这是非常好的纠错和理解。此点无问题,确认其准确性。

优化方向

  1. 文档结构优化:如具体问题1所述,明确总结文档本身的结构,去除无关的视频元数据,使文档聚焦于总结内容本身。
  2. 一致性检查(细微):在整个文档中,对于“大型语言模型”,有时使用中文“大型语言模型”,有时使用英文缩写“LLM”,有时两者并用(如“[LLM]”)。虽然不影响理解,但可以考虑统一规范,例如首次出现时使用“大型语言模型 (LLM)”,后续统一使用“LLM”或“大型语言模型”。当前处理方式已足够清晰。
  3. 保持高质量:当前总结已非常出色地完成了对转录文本的理解、纠错和概括,后续应继续保持这种高标准的处理。