用途
prompt-engineering 是一个关于提示词工程的技能资料,主题为跨任意模型或框架进行有效 LLM 交互的综合提示技术。它适合从零设计任意用例的提示词、学习可跨所有 LLM 适用的核心原则、采用不绑定特定框架的可移植模式、构建不依赖重依赖的简单 LLM 集成、优化既有提示词、为团队创建可复用提示模板、调试表现不佳的 LLM 应用,以及向他人教授提示词工程。
资料同时列出了不宜使用该技能的情况:需要框架专属功能时(改用 LangChain/DSPy);需要程序化优化时(使用 DSPy);构建生产级 RAG 系统时(使用 LangChain);需要对话记忆管理时(使用相关框架)。
主要能力
该技能资料围绕以下核心能力展开,并配有代码模板。
-
零样本提示(Zero-Shot Prompting):直接给出指令而不提供示例,适合简单且定义明确的任务。资料给出基础零样本、带角色的零样本(系统消息定义角色 + 用户任务),以及零样本分类模板(如把工程报告分类为 ANALYSIS、INSPECTION、DESIGN、INCIDENT、MAINTENANCE)。
-
少样本提示(Few-Shot Prompting):通过示例引导,资料称通常 2 至 5 个示例效果最佳。提供基础的输入/输出示例拼接模板,以及跨类别均衡示例的构建方式(每个类别取一个示例)。
-
思维链提示(Chain-of-Thought):用于分步推理。资料给出基础思维链模板(Step 1 到 Step 4 式引导)、零样本思维链(在问题后追加“Let's think step by step.”)、结构化思维链(理解、方法、计算、验证、答案分节),以及自一致性思维链(用多种路径求解后多数一致并给出置信度)。
-
系统提示设计(System Prompt Design):包括基于角色的系统提示(定义角色、专长列表、沟通风格与约束),以及任务型系统提示,资料给出代码审查系统提示和文档分析系统提示两个完整示例,均规定响应格式与准则。
-
人格设计(Persona Design):包括专家人格(姓名、头衔、经验年限、专长、代表性工作、沟通风格、行事方式),以及自适应人格(按 beginner/intermediate/expert 三种水平调整语言、解释、示例与假设,以便与用户专长匹配)。
-
结构化输出(Structured Output):规定模型返回固定结构,资料提供 JSON 输出模板、Markdown 表格输出模板、XML 输出模板及其结构示例。
-
提示模板(Prompt Templates):资料标题列出了可复用模板,但正文在该处截断。
资料还描述了“提示词工程循环”:定义目标、起草提示、测试、分析、优化、重复,直至质量达标;并给出提示词的解剖结构:系统上下文、任务描述、输入数据、输出格式、示例(可选)、约束。
使用方式
资料提供快速上手代码:使用 openai 库创建客户端,通过 client.chat.completions.create 传入 model、messages(含 system 与 user 角色)并打印返回内容。
前置条件(安装与环境变量): OpenAI:pip install openai>=1.0.0;export OPENAI_API_KEY="sk-..." Anthropic:pip install anthropic>=0.5.0;export ANTHROPIC_API_KEY="sk-ant-..." Azure OpenAI:pip install openai>=1.0.0;export AZURE_OPENAI_ENDPOINT="https://...";export AZURE_OPENAI_KEY="..." 可选测试依赖:pip install pytest promptfoo
整体使用策略是:先按模板构造提示(含系统消息与用户消息),再发送给所选 LLM,按提示循环反复测试与优化。
适用场景
资料给出的适用场景包括:从零设计提示词、学习通用核心原则、需要可移植模式、构建简单 LLM 集成、优化既有提示、创建团队可复用模板、调试表现不佳的应用、教授他人提示词工程。示例场景多为工程领域(如系泊系统、张力评估、工程报告分析、代码审查),但所述技术本身是通用提示技术。
限制
资料明确指出的限制与不适用情形包括:不适合需要框架专属功能、程序化优化、生产级 RAG 系统或对话记忆管理的场景,这些应改用 LangChain、DSPy 等框架。此外,可复用提示模板(Prompt Templates)部分在资料中未完整展开。除上述之外,关于收费、价格、平台、具体效果等信息暂未提供。