基础

有效提示词的结构

使提示词有效的组成部分

每个优秀的提示词都具有共同的结构要素。理解这些组成部分可以让你系统性地构建提示词,而不是通过反复试错。

构建模块

把这些组成部分想象成乐高积木。你不需要在每个提示词中都使用所有组件,但了解有哪些可用的组件可以帮助你精确构建所需内容。

核心组成部分

一个有效的提示词通常包含以下部分或全部元素:

角色你是一位资深软件工程师背景正在开发一个 React 应用程序。任务审查这段代码中的 bug约束只关注安全问题。格式以编号列表形式返回发现的问题。示例例如:1. 第42行存在 SQL 注入风险

让我们详细了解每个组成部分。

1. 角色/人设

设定角色可以使模型从特定专业知识或视角的角度来聚焦其回复。

没有角色

解释量子计算。

有角色

你是一位物理学教授,擅长将复杂话题讲解得通俗易懂。请解释量子计算。

角色可以引导模型:

  • 使用恰当的词汇
  • 运用相关的专业知识
  • 保持一致的视角
  • 适当考虑受众

有效的角色模式

"你是一位拥有[X年][专业领域]经验的[职业]"
"扮演一位[具有某特征]的[角色]"
"你是一位[领域]专家,正在帮助一位[受众类型]"

2. 背景/上下文

背景提供模型理解你情况所需的信息。请记住:除非你告诉模型,否则它对你、你的项目或你的目标一无所知。

弱背景

修复我代码中的 bug。

强背景

我正在使用 Express.js 构建一个 Node.js REST API。该 API 使用 JWT 令牌处理用户认证。当用户尝试访问受保护的路由时,即使使用有效的令牌也会收到 403 错误。以下是相关代码:[代码]

背景中应包含的内容

  • 项目详情 — 技术栈、架构、约束条件
  • 当前状态 — 你已经尝试过什么、什么有效、什么无效
  • 目标 — 你最终想要达成什么
  • 限制条件 — 时间限制、技术要求、风格指南

3. 任务/指令

任务是提示词的核心——你希望模型做什么。要具体且明确。

具体程度光谱

编辑这篇文章的语法和表达清晰度,保持原有语气但减少20%的冗余内容

有效的动作动词

创作类撰写、创建、生成、编写、设计
分析类分析、评估、比较、评价、审查
转换类转换、翻译、重新格式化、总结、扩展
解释类解释、描述、阐明、定义、举例说明
问题解决类解决、调试、修复、优化、改进

4. 约束/规则

约束限定模型的输出范围。它们可以防止常见问题并确保相关性。

约束类型

长度约束:

"将回复控制在200字以内"
"提供恰好5条建议"
"写3-4段"

内容约束:

"不要包含任何代码示例"
"只关注技术方面"
"避免使用营销语言"

风格约束:

"使用正式的学术语气"
"像对10岁孩子说话一样来写"
"直接明了,避免模棱两可的表达"

范围约束:

"只考虑 Python 3.10+ 中可用的选项"
"建议仅限于免费工具"
"专注于不需要额外依赖的解决方案"

5. 输出格式

指定输出格式可确保你获得结构可用的回复。

常见格式

列表:

"以项目符号列表形式返回"
"提供编号步骤列表"

结构化数据:

"以 JSON 格式返回,包含以下键:title、description、priority"
"格式化为 markdown 表格,列名:功能、优点、缺点"

特定结构:

"按以下结构组织你的回复:
 ## 摘要
 ## 要点
 ## 建议"

JSON 输出示例

分析这条客户评价并返回 JSON:
{
  "sentiment": "positive" | "negative" | "neutral",
  "topics": ["主要话题数组"],
  "rating_prediction": 1-5,
  "key_phrases": ["关键短语"]
}

评价:"产品送达很快,使用效果很好,但说明书让人困惑。"

6. 示例(少样本学习)

示例是向模型展示你期望内容的最有效方式。

单样本示例

将这些句子转换为过去时。

示例:
输入:"她走路去商店"
输出:"她走路去了商店"

现在转换:
输入:"他们每天早上跑步"

少样本示例

按紧急程度对这些支持工单进行分类。

示例:
"我的账户被黑了" → 紧急
"如何更改密码?" → 低
"付款失败但我被扣款了" → 高

分类:"打开设置时应用崩溃了"

综合运用

以下是一个使用所有组成部分的完整提示词:

完整提示词示例

此提示词演示了六个组成部分如何协同工作。试试看,了解结构化提示词如何产生专业的结果。

# 角色
你是一位拥有10年开发者文档编写经验的资深技术文档工程师。

# 背景
我正在为一个支付处理服务编写 REST API 文档。受众是将我们的 API 集成到其应用程序中的开发者。他们具有中级编程知识,但可能对支付处理概念不太熟悉。

# 任务
为以下创建新支付意向的 API 端点编写文档。

# 约束
- 使用清晰、简洁的语言
- 包含常见错误场景
- 不要包含关于我们后端的实现细节
- 假设读者了解 HTTP 和 JSON 基础知识

# 输出格式
按以下结构组织文档:
1. 端点概述(2-3句话)
2. 请求(方法、URL、请求头、请求体及示例)
3. 响应(成功和错误示例)
4. 代码示例(使用 JavaScript/Node.js)

# 端点详情
POST /v1/payments/intents
Body: { "amount": 1000, "currency": "usd", "description": "Order #1234" }

最小有效提示词

并非每个提示词都需要所有组成部分。对于简单任务,一个清晰的指令可能就足够了:

将"Hello, how are you?"翻译成西班牙语。

在以下情况下使用额外组成部分:

  • 任务复杂或模糊
  • 你需要特定格式
  • 结果与预期不符
  • 多次查询之间需要保持一致性

常见提示词模式

这些框架为你编写提示词时提供了简单的检查清单。点击每个步骤查看示例。

CRISPE框架

C能力/角色
R请求
I信息
S情况
P人设
E实验
你是一位在美容品牌有15年经验的资深营销顾问。

创建下个月的社交媒体内容日历。

背景:我们向25-40岁女性销售有机护肤品。我们的品牌声音友好且具有教育性。

情况:我们将在15日推出新的维生素C精华。

风格:随意,表情符号友好,注重教育而非销售。

帖子示例:"你知道维生素C是护肤超级英雄吗?🦸‍♀️ 这就是你的皮肤会感谢你的原因..."

创建每周3篇帖子的内容计划。

RTF框架

R角色
T任务
F格式
角色:你是一位耐心的数学导师,专门让初学者容易理解概念。

任务:解释什么是分数以及如何加分数。

格式:
- 从现实世界的例子开始
- 使用简单的语言(没有行话)
- 展示3道带答案的练习题
- 控制在300字以内

总结

有效的提示词是构建出来的,而不是偶然发现的。通过理解和应用这些结构组成部分,你可以:

  • 第一次尝试就获得更好的结果
  • 调试不起作用的提示词
  • 创建可重复使用的提示词模板
  • 清晰地传达你的意图

哪个组成部分对回复质量影响最大?

自己试试

此提示词使用了所有六个组成部分。试试看,体验结构化方法如何产生聚焦、可操作的结果。

你是一位拥有10年 SaaS 产品经验的资深产品经理。

背景:我正在为远程团队构建一个任务管理应用。我们是一家工程资源有限的小型初创公司。

任务:建议我们 MVP 应该优先考虑的3个功能。

约束:
- 功能必须能由2名开发人员在4周内实现
- 专注于我们与 Trello 和 Asana 的差异化特点

格式:对于每个功能,提供:
1. 功能名称
2. 一句话描述
3. 为什么它对远程团队很重要

构建你自己的提示词

现在轮到你了!使用这个交互式提示词构建器,运用你学到的组成部分来构建你自己的提示词:

交互式提示词构建器填写每个部分以构建一个完整、结构良好的提示词

AI应该采取什么具体行动?

章节挑战:构建代码审查提示词中级

你的任务:

编写一个提示词,要求 AI 审查代码中的安全漏洞。你的提示词应该足够具体,以获得可操作的反馈。

你的提示词将在以下方面评分:

  • 1.包含明确的角色或专业级别
  • 2.指定代码审查的类型(安全重点)
  • 3.定义预期的输出格式
  • 4.设置适当的约束或范围

慢慢来,创建最佳提示词。

在下一章中,我们将探讨指导提示词构建决策的核心原则。