关于 prompt-optimizer
prompt-optimizer 是用于设计和审查提示词的技能,面向需要提升模型回答相关性、清晰度或格式遵循度的用户。它采用 4-D 流程拆解意图、诊断问题、制定方案并构建提示词。
主要功能
- 01拆解角色、目标与约束
- 02检查歧义、认知负担和格式缺口
- 03按任务选择提示词优化方法
- 04组装提示词并进行测试
适用场景
- 01改善模型产生的无关或虚构回答
- 02编写系统提示词或 SKILL.md
- 03将复杂任务分解为明确指令
- 04要求输出符合指定格式
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ joellewis/ skill-library --skill prompt-optimizer安装后在 Claude Code 中输入/prompt-optimizer确认已加载。
详细介绍
概述
提示词优化是将意图转化为机器可执行指令的工程。这项技能运用 4-D 方法论(拆解、诊断、开发、交付),确保提示词清晰、结构合理,并针对特定模型架构进行优化(例如,Claude 偏好 XML 标记,而 OpenAI 偏好 Markdown)。
铁律
NO PROMPT SHIPS WITHOUT RUNNING THE 4-D AUDIT
不对提示词进行审查会导致“偏移”——由于歧义或结构薄弱,AI 的输出会逐渐偏离用户意图。
状态机
digraph prompt_optimization_flow {
"Rough Input" [shape=doublecircle];
"Deconstruct: Intent & Context" [shape=box];
"Diagnose: Ambiguity Audit" [shape=box];
"Develop: Apply Frameworks" [shape=box];
"Deliver: Final Construction" [shape=box];
"Validation: Test Run" [shape=diamond];
"Optimized Prompt" [shape=doublecircle];
"Rough Input" -> "Deconstruct: Intent & Context";
"Deconstruct: Intent & Context" -> "Diagnose: Ambiguity Audit";
"Diagnose: Ambiguity Audit" -> "Develop: Apply Frameworks";
"Develop: Apply Frameworks" -> "Deliver: Final Construction";
"Deliver: Final Construction" -> "Validation: Test Run";
"Validation: Test Run" -> "Optimized Prompt" [label="pass"];
"Validation: Test Run" -> "Diagnose: Ambiguity Audit" [label="fail"];
}
何时使用此技能
- AI 给出“幻觉”或无关答案时。
- 创建新的系统提示词或
SKILL.md文件时。 - 复杂任务需要拆解后交给模型处理时。
- 需要让模型遵循特定输出格式(JSON、XML、Markdown)时。
何时不使用此技能
- 对精度要求不高的简单对话式查询。
- 瓶颈在于模型的知识截止时间,而非指令集时。
核心流程
步骤 1:拆解(提取核心意图)
将提示词拆解为基本要素。识别以下内容:
- 角色: AI 应该扮演什么角色?(来源:Anthropic)
- 目标: 具体、可衡量的结果是什么?
- 约束: 哪些事情绝对不能发生?(来源:OpenAI)
步骤 2:诊断(审查“漏洞”)
检查结构上的薄弱之处:
- 歧义: “更好”“更快”或“更有创意”等词语是否没有明确定义?
- 认知负荷: 提示词是否试图一次完成过多任务?
- 格式缺失: 是否清楚地定义了预期的输出结构?(来源:Anthropic)
步骤 3:开发(应用优化框架)
根据任务复杂度选择合适的技术:
- 思维链(CoT): 要求模型在回答前先在
<thinking>标签中“思考”(来源:Anthropic)。 - 少样本学习: 提供 2-3 个高质量的输入/输出示例。
- XML 结构化: 使用标签(例如
<context>、<task>、<example>)将指令与数据分开(来源:Anthropic)。 - 参考文本: 提供模型应使用的确切文本,以尽量减少幻觉(来源:OpenAI)。
步骤 4:交付(最终构建)
采用“自底向上”的方式组装优化后的提示词:
- 角色定义。
- 上下文/背景。
- 任务/指令(拆解为多个步骤)。
- 输出格式规范。
- 示例(如适用)。
跨技能调用
- 必需的子技能:writing-skills — 确保提示词遵循 TDD 原则(结果可测试)。
- 推荐的子技能:non-fiction-precision — 确保指令措辞清晰、简洁。
理性化说明表
| 想法 | 现实 |
|---|---|
| “这只是一个简单请求,不需要标签。” | 简单请求最容易让模型“敷衍作答”。 |
| “模型足够聪明,能自己弄明白。” | 智能无法替代清晰的意图工程。 |
| “我多加几句话,表达就会更清楚。” | 冗长往往会分散模型的注意力;应使用结构。 |
| “我没时间做 4-D 审查。” | 糟糕的提示词在修改中浪费的时间,比审查所需的时间更多。 |
危险信号
- “模型不听话” → 你可能设置了相互冲突的约束,或角色定义薄弱。
- “输出太泛泛” → 你缺少具体约束或“少样本”示例。
- “一大段文字” → 你没有使用分隔符(Markdown 或 XML)来帮助模型解析意图。
诊断清单
- 提示词是否定义了具体的角色?
- 是否使用XML 标签或分隔符将指令与数据分开?
- 是否包含思维链指令(例如“逐步思考”)?
- 是否明确说明了输出格式要求(例如 JSON、长度、语气)?
- 提示词是否至少包含一条负面约束(需要避免的内容)?
来源
- OpenAI,《提示词工程指南》(任务分解策略)。
- Anthropic,《提示词工程文档》(XML 标签的使用与角色提示)。
- Anthropic,《提示词工程文档》(4-D 方法论)。
评论
支持 Markdown