关于 LLM Prompt Optimizer
LLM Prompt Optimizer 是用于按模型和目标改进提示词的技能,可诊断问题、提出修改并支持迭代测试,适用于生产系统、研究及日常使用。
主要功能
- 01诊断歧义和指令冲突
- 02补充上下文、示例和输出格式
- 03针对特定 LLM 调整提示词
- 04测试并迭代提示词版本
适用场景
- 01降低提示词引发幻觉的风险
- 02针对目标模型调整指令
- 03创建版本用于 A/B 测试
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ jmsktm/ claude-settings --skill llm-prompt-optimizer安装后在 Claude Code 中输入/llm-prompt-optimizer确认已加载。
详细介绍
LLM 提示词优化器
LLM 提示词优化技能会系统地分析并改进提示词,以最大限度提升大模型输出的质量、准确性和相关性。它采用基于证据的优化技术,包括结构改进、上下文补充、约束校准和输出格式规范。
这项技能不止于基础的提示词编写,还会运用对不同 LLM 处理指令的方式、注意力模式和响应倾向的理解,帮助你将表现不佳的提示词转化为高效指令,持续产出所需结果。
无论你是在构建生产级 AI 系统、开展研究,还是只想获得更好的 ChatGPT 回复,这项技能都能确保提示词针对你的特定模型和使用场景进行优化。
核心工作流
工作流 1:分析并诊断提示词问题
- 接收当前提示词和示例输出
- 识别失败模式:
- 幻觉诱因
- 歧义来源
- 缺失的上下文
- 相互冲突的指令
- 约束过多或不足的参数
- 将问题映射到具体的提示词片段
- 按影响程度排列修复优先级
- 向用户说明根本原因
工作流 2:应用优化技术
- 根据诊断结果选择合适的技术:
- 添加思维链
- 添加少样本示例
- 指定角色/人物设定
- 定义输出架构
- 收紧/放宽约束
- 重构提示词,使其更清晰
- 补充缺失的上下文或示例
- 移除相互冲突或多余的指令
- 测试优化后的版本
- 根据结果迭代
工作流 3:针对特定模型进行优化
- 识别目标 LLM(GPT-4、Claude、Llama 等)
- 应用针对该模型的最佳实践:
- 优化 Token 预算
- 拆分系统提示词与用户提示词
- 提供温度/采样指导
- 利用上下文窗口
- 针对模型的特性和优势进行调整
- 记录针对该模型的建议
快速参考
| 操作 | 命令/触发语 |
|---|---|
| 诊断提示词问题 | “为什么这个提示词不起作用:[prompt]” |
| 优化准确性 | “优化准确性:[prompt]” |
| 减少幻觉 | “减少以下提示词中的幻觉:[prompt]” |
| 添加结构 | “为以下提示词添加更好的结构:[prompt]” |
| 针对特定模型进行优化 | “针对 [model] 优化此提示词:[prompt]” |
| A/B 测试变体 | “创建提示词变体以供测试:[prompt]” |
最佳实践
-
从明确意图开始:优化之前,准确定义成功的标准
- 不佳:“让它运行得更好”
- 良好:“在保持对话语气的同时减少事实错误”
-
明确指定输出格式:相比模糊的请求,LLM 更擅长遵循结构
- 指定 JSON 架构、Markdown 格式或模板结构
- 示例:“以 JSON 格式返回,包含以下键:analysis、recommendations、confidence”
-
校准约束:约束过多会引发冲突,过少则会导致偏离
- 系统地测试不同的约束组合
- 移除无法提升输出质量的约束
-
善用正向指令:告诉模型应该做什么,而不只是不要做什么
- 不佳:“不要冗长”
- 良好:“用 2-3 个简洁的句子作答”
-
策略性地安排关键指令的位置:开头和结尾更容易获得关注
- 将关键约束放在开头
- 在结尾重申关键要求
-
使用分隔符区分多部分输入:清晰划分可避免混淆
- 三重引号、XML 标签或 Markdown 标题
- 示例:
"""User Query: {query}""" """Context: {context}"""
高级技术
递归优化循环
对于复杂的提示词,采用迭代优化:
1. Generate baseline outputs (n=5)
2. Score outputs against criteria
3. Identify lowest-scoring dimension
4. Adjust prompt targeting that dimension
5. Repeat until all dimensions score acceptably
提示词分解
将复杂任务拆解为更简单的子提示词:
Complex: "Analyze this code, find bugs, suggest fixes, and refactor"
Decomposed:
Step 1: "List all potential bugs in this code"
Step 2: "For each bug, explain the fix"
Step 3: "Refactor the fixed code for clarity"
负面示例注入
在正面示例旁展示不该怎么做:
Good output: [example]
Bad output (avoid this): [anti-example]
Key difference: [explanation]
优化 Token 预算
上下文有限时:
1. Remove redundant phrases
2. Use abbreviations consistently
3. Compress examples to minimal effective size
4. Prioritize recent/relevant context
5. Consider summarizing long contexts
应避免的常见陷阱
- 对简单的提示词过度设计,加入不必要的复杂内容
- 未经调整就将提示词复制到不同模型中
- 忽略温度与提示词具体程度之间的关系
- 添加会引入不良模式的示例
- 使用“好”“合适”或“恰当”等含糊词语,却不加以定义
- 指令相互冲突,迫使模型做出选择
- 忘记说明如何处理边缘情况和错误
评论
支持 Markdown