urlname
type
Post
password
SyncToConfluence
category
学习笔记
date
Oct 13, 2025
slug
d918d28b-cd65-4e77-b63a-e057b0b61317
icon
Button
catalog
summary
tags
学习笔记
Prompt
AI
cover
Status
BusyTime
Status 1
status
Published
💡
提示词工程 (Prompt Engineering) 是我们与大型语言模型(LLM)沟通,并让它完成我们期望任务的方式。这涉及到撰写清晰的指令、提供模型完成任务所需的上下文,并思考如何组织这些信息以获得最佳结果。
原视频:
这篇笔记,主要作为学习笔记,记录概要,方便回顾、引用。

案例场景与迭代科学

以一个瑞典汽车保险公司的理赔场景为例:每天处理汽车事故索赔,需要分析两份关键信息——一份汽车事故报告表和一份手绘的事故草图。
这里的目标是让 Claude 分析这些手动生成的数据,评估事故中发生了什么,并确定事故责任方。
初次尝试:缺乏上下文的代价
notion image
notion image
当我们使用一个非常简单的提示词,仅设定要求 Claude 审查事故报告并确定事故责任时,模型犯了一个“无辜的错误”。Claude 认为这与在瑞典某街道发生的滑雪事故有关。
这表明,提示词工程是一门迭代的、经验科学。我们必须不断地改进提示词,确保模型在正确的环境中处理问题。

优秀提示词的基本结构

当通过 API 发送单个消息给 Claude 并期望它一次性完成任务时,Anthropic 推荐采用以下结构:
1. 任务描述 (Task Description): 明确告诉 Claude 它的角色、任务以及需要完成的目标。
2. 内容 (Content): 提供动态内容,如本例中的图像、表格和草图(或从其他系统检索的数据)。
3. 详细指令 (Detailed Instructions): 提供分步列表,指导 Claude 如何进行推理和处理任务。
4. 示例 (Examples): 提供输入内容及其对应的期望响应示例(少样本学习,Few-Shot)。
5. 重要信息回顾 (Repetition/Review): 重复强调任何关键信息,然后指示 Claude 开始工作。
notion image
notion image

提示词工程的最佳实践与迭代优化

在构建提示词时,Anthropic 推荐以下关键步骤,这些步骤可以帮助我们将模型的输出从不自信的猜测转变为结构化、自信的结论

1. 设定任务和语气上下文 (Task and Tone Context)

在 V2 版本中,我们增加了场景的详细信息,例如指定 AI 助手是帮助人类理赔员审查瑞典语汽车事故报告表和手绘草图。
  • 关键点: 确保 Claude 了解它所处的任务环境。
  • 语气: 要求 Claude 保持事实性自信。如果不确定或无法理解,不要猜测,以避免误导。
notion image

2. 利用系统提示词提供静态背景数据

对于那些永远不会改变的信息,例如事故报告表本身的结构,应将其放入系统提示词中。
  • 结构化数据: 使用 XML 标签或 Markdown 等分隔符(Delimiters)来组织信息,帮助 Claude 更好地理解和引用特定内容。例如,可以使用 XML 标签来指定“用户偏好”。
  • 好处: Claude 将花费更少的时间去理解表格结构,并且能更好地阅读表格。
  • 细节补充: 告知 Claude 填写表格的是人类,因此标记可能不完美(可能是圆圈、涂鸦或 X),它需要识别各种标记类型。
通过添加这些上下文(V3),Claude 不仅能够识别出这是汽车事故,而且能更自信地根据表格和草图判断 Vehicle B 负有责任
notion image

3. 提供明确的推理步骤(顺序至关重要)

即使提供了所有背景信息,如何处理数据的顺序也对结果至关重要。
  • 人类思维模拟: 就像人类理赔员一样,Claude 不应该先看模糊的草图。
  • 指令: 明确告诉 Claude 首先仔细检查表格,并列出发现的事实。然后,再根据从表格中获得的事故理解去分析草图,并进行最终评估。
  • 提示工程观察: 如果我们要求 Claude “非常仔细地检查每一个框”,它会向我们展示其工作过程,详细说明每一步的检查结果。这种分步思维对于复杂或不清晰的案例中做出正确评估非常有帮助。

4. 强化指令与输出格式化

为了让 LLM 应用的产出可以直接用于后续系统(例如存储到 SQL 数据库或用于分析工具),输出格式化是关键步骤。
  • 输出指南: 在提示词末尾添加“重要指南”部分,再次强调我们期望的行为,例如要求总结清晰、简洁、准确。
  • 结构化输出: 要求 Claude 将最终的裁决(Final Verdict)用特定的 XML 标签包裹起来,如 <final_verdict>
  • 预填充响应 (Pre-filled Responses): 如果需要特定的格式,比如 JSON,可以要求 Claude 以特定的起始格式开始输出,例如开放的方括号或 XML 标签,以确保输出是 JSON 可序列化的。
    • notion image

进阶优化技巧

为了进一步增强 Claude 的性能和应用的可拓展性,还可以考虑以下技巧:

Few-Shot 示例

对于棘手或灰色地带的事故场景,可以将这些案例(包括 Base64 编码的图像数据)及其正确的人工标记结论,作为示例烘焙到系统提示词中。这有助于 Claude 在遇到类似情况时进行参考,从而提高应用的准确性。
notion image

会话历史 (Conversation History)

对于面向用户的 LLM 应用,将完整的会话历史包含在系统提示词中至关重要,因为它能丰富 Claude 工作的上下文。

启用扩展思维 (Extended Thinking)

尤其是 Claude 4 模型,具有混合推理能力。启用扩展思维可以让 Claude 有时间思考,并在输出中添加 <thinking> 标签(暂存器)。数据工程师可以分析这些思考记录(transcript),了解模型是如何处理数据的,并据此进一步优化系统提示词,使其更加高效。
通过这些迭代和最佳实践,提示词工程能够确保 Claude 提供一个从最初的误解(滑雪事故)转变为一个结构严谨、自信且可用于实际应用(汽车理赔)的输出。

提示词模版结构总结

结合上面的提示词结构、实践、进阶,总结一个最终的优秀提示词模版:
notion image
 
开发记录:批注截图耗时分析开发记录——WebView播放Youtube在线视频,报错153
Loading...