# Prompt Engineering提示词工程
## 什么是提示词工程?
提示词工程(Prompt Engineering)是设计和优化输入提示以获得AI模型最佳输出的技术。在大语言模型时代,会写提示词已经成为一项重要技能,甚至催生了"提示词工程师"这一新兴职业。
## 基础技巧
### 1. 角色设定
给AI设定一个具体角色,可以让输出更加专业和针对性:
```
你是一位有10年经验的Python高级工程师,擅长代码重构和性能优化。
请审查以下代码并提供改进建议。
```
### 2. 任务描述清晰
明确说明你想要AI做什么:
```
不好的提示:帮我写代码
好的提示:请用Python编写一个函数,该函数接收一个整数列表作为输入,返回列表中所有偶数的平方和。请包含类型提示和文档字符串。
```
### 3. 指定输出格式
告诉AI你期望的输出格式:
```
请分析以下代码的时间复杂度和空间复杂度。
按以下格式输出:
- 时间复杂度:O(?)
- 空间复杂度:O(?)
- 分析说明:...
```
### 4. 提供示例(Few-shot)
通过示例展示你期望的输入输出格式:
```
将以下英文技术术语翻译成中文:
示例:
- Machine Learning -> 机器学习
- Deep Learning -> 深度学习
请翻译:
- Reinforcement Learning
- Natural Language Processing
```
## 高级技巧
### 1. 思维链(Chain of Thought)
让AI展示推理过程,提高复杂问题的准确率:
```
请一步一步思考这个问题:
一个程序员每天写200行代码,其中20%需要在代码审查后修改。
如果修改一行代码平均需要5分钟,这个程序员每周花多少时间修改代码?
请展示你的计算过程。
```
### 2. 自洽性检查
让AI检验自己的输出:
```
请编写一个排序算法,然后:
1. 解释算法逻辑
2. 分析时间复杂度
3. 检查代码是否有bug
4. 提供测试用例验证正确性
```
### 3. 分步骤执行
将复杂任务分解为多个步骤:
```
我需要构建一个用户认证系统,请按以下步骤帮我设计:
步骤1:设计数据库表结构
步骤2:编写用户注册API
步骤3:实现密码加密存储
步骤4:设计JWT令牌验证
步骤5:添加登录失败锁定机制
请先完成步骤1,等我确认后再继续。
```
### 4. 限制和约束
明确指出限制条件:
```
请编写一个Python函数,要求:
- 不使用任何第三方库
- 代码不超过20行
- 时间复杂度必须是O(n)
- 不使用递归
```
## 编程特定技巧
### 代码生成提示模板
```
请用[语言]编写[功能描述]的代码。
要求:
- 使用[框架/库]
- 遵循[编码规范]
- 包含错误处理
- 添加必要的注释
- 提供使用示例
技术约束:
- [具体约束1]
- [具体约束2]
```
### 代码审查提示模板
```
请审查以下代码,关注:
1. 代码质量和可读性
2. 潜在的bug和边界情况
3. 性能优化空间
4. 安全漏洞
5. 最佳实践遵循情况
请对每个问题提供具体的改进建议和示例代码。
```
## 常见错误
1. **提示太模糊**: "帮我写个网站" -> 需要具体说明功能需求
2. **缺少上下文**: 没有提供必要的背景信息
3. **期望过高**: 一个提示想完成太多事情
4. **格式不明**: 没有说明输出格式导致结果不符预期
## 总结
好的提示词是与AI有效沟通的关键。通过明确的角色设定、清晰的任务描述、具体的格式要求和恰当的示例,你可以显著提高AI输出的质量和相关性。
暂无评论。成为第一个评论的人吧!