快速开始 #

你的第一个提示词 #

最简单的提示词 #

让我们从一个最简单的例子开始:

text
提示词:
你好

输出:
你好!很高兴见到你。有什么我可以帮助你的吗?

这是最基础的交互形式,但实际应用中我们需要更精确的控制。

一个完整的提示词 #

text
┌─────────────────────────────────────────────────────────────┐
│                     完整提示词示例                            │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  角色:你是一位经验丰富的 Python 开发者                       │
│                                                             │
│  任务:请解释以下代码的功能                                   │
│                                                             │
│  代码:                                                      │
│  def fibonacci(n):                                          │
│      if n <= 1:                                             │
│          return n                                           │
│      return fibonacci(n-1) + fibonacci(n-2)                 │
│                                                             │
│  要求:                                                      │
│  1. 用简单的语言解释                         │
│  2. 说明时间复杂度                                           │
│  3. 给出一个使用示例                                         │
│                                                             │
└─────────────────────────────────────────────────────────────┘

基础技巧 #

技巧一:明确角色 #

设定角色可以让 AI 以特定视角回答问题。

text
❌ 没有角色设定:
"解释什么是机器学习"

✅ 有角色设定:
"你是一位面向初学者的计算机科学教师,请用简单的语言
 和生活中的例子解释什么是机器学习"

技巧二:具体描述 #

越具体的描述,越能得到满意的答案。

text
❌ 模糊的描述:
"写一篇文章"

✅ 具体的描述:
"请写一篇关于人工智能在医疗领域应用的文章:
 - 目标读者:医疗从业者
 - 文章长度:约 800 字
 - 内容要求:包含 3 个具体应用案例
 - 写作风格:专业但易懂"

技巧三:提供示例 #

通过示例让 AI 理解你期望的输出格式。

text
提示词:
请按照以下格式提取信息:

示例:
输入:张三,男,28岁,软件工程师
输出:{"name": "张三", "gender": "男", "age": 28, "job": "软件工程师"}

现在请处理:
输入:李四,女,35岁,产品经理
输出:

技巧四:分步骤 #

将复杂任务分解为多个步骤。

text
❌ 一次性要求:
"分析这段代码的所有问题并给出优化方案"

✅ 分步骤:
"请分步骤分析以下代码:
 步骤 1:识别代码中的潜在问题
 步骤 2:解释每个问题的影响
 步骤 3:给出具体的优化建议
 步骤 4:提供优化后的代码示例"

技巧五:设定约束 #

明确告诉 AI 什么能做、什么不能做。

text
提示词:
"请解释量子计算的基本原理,要求:
 - 使用高中物理水平的语言
 - 不要使用复杂的数学公式
 - 必须包含一个生活中的类比
 - 字数控制在 300 字以内"

实战练习 #

练习一:文本摘要 #

text
任务:将一篇长文章压缩成简短摘要

提示词模板:
─────────────────────────────────────────────────
请将以下文章压缩成一段 100 字以内的摘要,
保留最重要的信息:

[文章内容]

摘要:
─────────────────────────────────────────────────

示例:
提示词:
请将以下文章压缩成一段 100 字以内的摘要:

人工智能(AI)正在改变各行各业。在医疗领域,
AI 可以帮助医生更准确地诊断疾病;在金融领域,
AI 用于风险评估和欺诈检测;在教育领域,
AI 提供个性化学习体验。然而,AI 的发展也带来
了挑战,如就业影响、隐私保护和伦理问题。
专家认为,需要在技术进步和社会责任之间找到平衡。

输出:
AI 正在改变医疗、金融、教育等行业,提升效率和服务质量。
但同时也带来就业、隐私和伦理等挑战,需要在技术进步与
社会责任之间寻求平衡。

练习二:信息提取 #

text
任务:从非结构化文本中提取结构化信息

提示词模板:
─────────────────────────────────────────────────
从以下文本中提取关键信息,以 JSON 格式输出:

文本:[文本内容]

输出格式:
{
  "field1": "value1",
  "field2": "value2"
}
─────────────────────────────────────────────────

示例:
提示词:
从以下文本中提取人物信息,以 JSON 格式输出:

文本:
王明是一位来自北京的软件工程师,今年32岁。
他毕业于清华大学计算机系,现在在一家互联网公司工作,
擅长 Python 和 Java 编程。

输出:
{
  "name": "王明",
  "city": "北京",
  "profession": "软件工程师",
  "age": 32,
  "university": "清华大学",
  "major": "计算机系",
  "skills": ["Python", "Java"]
}

练习三:代码解释 #

text
任务:解释代码的功能和工作原理

提示词模板:
─────────────────────────────────────────────────
请解释以下代码的功能:

```[语言]
[代码]

要求:

  1. 说明代码的整体功能
  2. 解释关键步骤
  3. 分析时间复杂度 ─────────────────────────────────────────────────

示例: 提示词: 请解释以下 Python 代码的功能:

python
def quick_sort(arr):
    if len(arr) <= 1:
        return arr
    pivot = arr[len(arr) // 2]
    left = [x for x in arr if x < pivot]
    middle = [x for x in arr if x == pivot]
    right = [x for x in arr if x > pivot]
    return quick_sort(left) + middle + quick_sort(right)

输出: 这是一个快速排序算法的实现。

整体功能: 将一个无序列表按升序排列。

关键步骤:

  1. 基准情况:如果列表长度小于等于1,直接返回
  2. 选择基准:取中间元素作为基准值
  3. 分区:将元素分为小于、等于、大于基准三部分
  4. 递归:对左右两部分递归排序

时间复杂度:

  • 平均情况:O(n log n)
  • 最坏情况:O(n²),当每次选择的基准都是最大或最小值时
text

### 练习四:文本转换

任务:将文本从一种格式转换为另一种格式

提示词模板: ───────────────────────────────────────────────── 请将以下 [格式A] 转换为 [格式B]:

[原始内容] ─────────────────────────────────────────────────

示例: 提示词: 请将以下 JSON 数据转换为 Markdown 表格:

[ {“name”: “张三”, “age”: 25, “city”: “北京”}, {“name”: “李四”, “age”: 30, “city”: “上海”}, {“name”: “王五”, “age”: 28, “city”: “广州”} ]

输出:

name age city
张三 25 北京
李四 30 上海
王五 28 广州
text

### 练习五:问题解答

任务:回答问题并提供解释

提示词模板: ───────────────────────────────────────────────── 请回答以下问题,并解释你的推理过程:

问题:[问题内容]

要求:

  1. 给出明确答案
  2. 解释推理过程
  3. 如果不确定,请说明 ─────────────────────────────────────────────────

示例: 提示词: 请回答以下问题,并解释你的推理过程:

问题:Python 中 list 和 tuple 的主要区别是什么?

输出: 答案:list 是可变的,tuple 是不可变的。

详细解释:

  1. 可变性

    • list:创建后可以修改、添加、删除元素
    • tuple:创建后不能修改
  2. 语法

    • list:使用方括号 [1, 2, 3]
    • tuple:使用圆括号 (1, 2, 3)
  3. 性能

    • tuple 比 list 更快,占用内存更少
  4. 使用场景

    • list:需要频繁修改的数据集合
    • tuple:不需要修改的数据,如坐标、配置

示例代码: my_list = [1, 2, 3] my_list[0] = 10 # 可以修改

my_tuple = (1, 2, 3) my_tuple[0] = 10 # 报错:不能修改

text

## 常见问题与解决

### 问题一:回答太长或太短

问题:AI 的回答长度不符合预期

解决方案: ├── 明确指定字数或段落数 ├── 使用"简短回答"或"详细解释"等关键词 └── 提供期望长度的示例

示例: “请用 3-5 句话简要回答…” “请详细解释,至少包含 500 字…”

text

### 问题二:回答偏离主题

问题:AI 的回答与问题不相关

解决方案: ├── 重新组织问题,使其更清晰 ├── 提供更多上下文 ├── 使用"只回答…"来限制范围 └── 将复杂问题拆分为多个简单问题

示例: “请只回答关于性能优化的问题,不要涉及其他方面”

text

### 问题三:格式不符合预期

问题:输出的格式不是想要的格式

解决方案: ├── 明确指定输出格式 ├── 提供格式示例 ├── 使用结构化要求

示例: “请以以下 JSON 格式输出: { "title": "标题", "content": "内容", "tags": ["标签1", "标签2"] }”

text

### 问题四:回答不一致

问题:相同问题得到不同回答

解决方案: ├── 降低 Temperature 参数 ├── 使用更明确的指令 ├── 要求"确定性回答"

示例: “请给出确定性的答案,不要使用’可能’、'也许’等不确定词汇”

text

### 问题五:专业术语过多

问题:回答中包含太多专业术语

解决方案: ├── 指定目标受众 ├── 要求使用简单语言 ├── 要求解释专业术语

示例: “请用小学生能理解的语言解释…” “如果使用专业术语,请同时给出通俗解释”

text

## 提示词模板库

### 通用问答模板

你是一位 [角色]。 请回答以下问题:[问题] 要求:

  1. [要求1]
  2. [要求2] 输出格式:[格式]
text

### 文本处理模板

请对以下文本进行 [操作]:

文本: [文本内容]

要求:

  • [要求1]
  • [要求2]

输出格式:[格式]

text

### 代码相关模板

作为一位 [语言] 专家,请 [任务]:

代码:

[语言]
[代码]

要求:

  1. [要求1]
  2. [要求2]
text

### 写作模板

请写一篇关于 [主题] 的 [文体]。

要求:

  • 目标读者:[受众]
  • 文章长度:[字数]
  • 写作风格:[风格]
  • 必须包含:[要素]

请开始写作:

text

## 学习检查清单

完成以下练习,确保你掌握了基础技能:

□ 能够编写包含角色设定的提示词 □ 能够明确指定输出格式 □ 能够使用示例引导输出 □ 能够将复杂任务分解为步骤 □ 能够设定合理的约束条件 □ 能够处理常见的输出问题 □ 建立了自己的提示词模板库

text

## 下一步

恭喜你完成了 Prompt Engineering 的基础学习!接下来学习 [提示词结构设计](/docs/prompt-engineering/structure),深入了解如何构建专业的提示词框架。
最后更新:2026-04-05