ChatGPT 提示词工程实战指南
提示词工程是与大型语言模型高效沟通的核心技能,掌握它可以大幅提升 AI 输出质量和效率。
提示词基础原则
清晰具体原则
❌ 不好的提示词: "写一篇文章"
✅ 好的提示词: "写一篇关于 JavaScript 异步编程的文章,包含以下内容: 1. 回调函数的使用方法和缺点 2. Promise 的基本概念和链式调用 3. async/await 的语法和优势 4. 实际应用场景示例 文章长度:1500-2000 字 目标读者:有 JavaScript 基础的开发者"
|
上下文充分原则
❌ 缺乏上下文: "这个代码有什么问题?"
✅ 提供充足上下文: "我正在开发一个电商网站,用户在下单时遇到以下问题: 当用户快速点击提交按钮多次时,会创建多个重复订单。 这是我的订单创建代码: [贴出相关代码] 请分析问题原因并提供解决方案,需要考虑: 1. 前端防抖处理 2. 后端幂等性设计 3. 数据库约束"
|
角色设定原则
✅ 角色明确: "你是一位资深的数据库架构师,有 10 年的电商系统设计经验。 请帮我设计一个用户系统的数据库表结构,需要支持: 1. 用户基本信息管理 2. 角色权限控制 3. 用户行为日志记录 请提供完整的 SQL 建表语句和设计说明。"
✅ 专业领域角色: "你是机器学习算法工程师,专注于推荐系统开发。 请帮我设计一个商品推荐系统的架构方案,需要: 1. 支持协同过滤算法 2. 考虑实时推荐需求 3. 处理冷启动问题"
|
高级提示词技巧
链式思考 (Chain of Thought)
✅ 逐步引导: "我需要解决一个性能优化问题,请按以下步骤帮我分析:
第一步:首先帮我理解这个业务场景 场景:用户在搜索商品时,响应时间超过了 5 秒,需要优化到 1 秒内
第二步:分析可能的性能瓶颈 请考虑: - 数据库查询效率 - 索引使用情况 - 缓存策略 - 网络延迟
第三步:提供具体的优化方案 - 短期快速优化措施 - 中期架构改进 - 长期技术方案
第四步:制定实施计划 - 优先级排序 - 预期效果 - 风险评估"
|
少样本学习 (Few-shot Learning)
✅ 提供示例: "请帮我分析用户评论的情感倾向,使用以下格式:
示例1: 评论:"这个产品质量很好,物流也很快,非常满意!" 分析:正面情感(满意度高,推荐)
示例2: 评论:"商品收到后发现有问题,联系客服也没人回应" 分析:负面情感(产品质量问题,服务差)
示例3: 评论:"还可以吧,价格实惠,但包装有点破损" 分析:中性情感(价格满意,包装不满)
现在请分析: 评论:"用了三天就坏了,浪费钱" 分析:"
|
约束条件设定
✅ 明确约束: "请为我生成一个 Python 脚本,要求:
约束条件: - 使用 Python 3.9+ 版本 - 只使用标准库,不依赖第三方包 - 处理大文件时内存使用不超过 100MB - 运行时间不能超过 10 秒 - 输入输出格式为 JSON - 必须包含错误处理和日志记录
任务:读取一个 1GB 的 CSV 文件,统计每个商品的销售总额"
|
专业化提示词模板
代码审查提示词
"你是一位高级软件工程师,请对以下代码进行专业审查:
审查维度: 1. 代码规范和可读性 2. 性能优化机会 3. 安全漏洞和风险 4. 错误处理机制 5. 可维护性和扩展性
代码: [贴出代码]
请提供: - 具体问题列表(行号+问题+建议) - 优先级评级(高/中/低) - 重构建议 - 最佳实践推荐"
|
学习计划制定
"请为我制定一个详细的学习计划,目标:3 个月成为前端开发工程师
我的背景: - 零编程基础 - 学习时间:每天 2 小时 - 目标:能够独立开发响应式网站
计划要求: 1. 分阶段设置目标(月/周/日) 2. 推荐学习资源(书籍/视频/项目) 3. 实践项目难度递进 4. 包含知识点检查点 5. 制定学习评估标准
输出格式:使用 Markdown 表格展示"
|
面试准备提示词
"你是一位资深的技术面试官,请帮我准备高级前端工程师面试
公司背景:独角兽互联网公司,技术栈:React + TypeScript + Node.js
请提供: 1. 常见技术面试题(含答案) - JavaScript 基础(10 题) - React 深入(10 题) - 工程化实践(5 题) - 算法数据结构(5 题)
2. 项目经验回答模板 - 项目亮点描述 - 技术难点解决 - 团队协作经验
3. 软技能准备 - 沟通表达技巧 - 问题解决思路 - 职业规划回答
请提供详细的答案要点和评分标准"
|
创意与设计提示词
UI/UX 设计
"你是一位资深的 UI/UX 设计师,请帮我设计一个在线教育平台的学习页面
设计要求: 1. 目标用户:13-18 岁学生 2. 风格:简洁、现代、有活力 3. 功能区域: - 视频播放器 - 课程目录 - 笔记区域 - 讨论区 - 进度跟踪
请提供: 1. 页面布局方案(文字描述) 2. 色彩搭配建议 3. 字体选择 4. 交互设计要点 5. 移动端适配方案
考虑因素: - 减少注意力分散 - 提高学习效率 - 适配不同屏幕尺寸"
|
内容创作
"你是一位专业的内容创作者,请为我生成一系列技术博客文章
主题系列:JavaScript 性能优化实战 目标读者:中级前端开发者 文章数量:5 篇
每篇要求: 1. 主题明确,解决实际问题 2. 包含代码示例和性能数据 3. 既有理论深度又有实践指导 4. 长度:2000-3000 字 5. 语言风格:专业但不晦涩
文章规划: 第1篇:JavaScript 内存管理与垃圾回收机制 第2篇:DOM 操作性能优化技巧 第3篇:网络请求优化与缓存策略 第4篇:代码分割与懒加载实战 第5篇:性能监控与分析工具使用
请先写第一篇,包含完整的大纲和前 500 字示例"
|
提示词优化技巧
迭代改进
第一轮: "写一个用户登录功能"
第二轮(优化后): "设计一个用户登录功能,包含: 1. 用户名密码登录 2. 手机验证码登录 3. 第三方社交登录 4. 安全措施(验证码、防暴力破解) 5. 用户体验优化(记住登录、自动填充) 请提供前端 React 组件代码和后端 API 设计"
第三轮(进一步优化): "设计一个企业级的用户认证系统: 技术栈:React + TypeScript + Node.js + Redis + MySQL 功能要求: - 多种登录方式(用户名密码、手机、邮箱、第三方) - JWT + Refresh Token 认证 - 角色权限管理(RBAC) - 多因素认证(2FA) - 单点登录(SSO) - 审计日志 性能要求: - 支持 10 万并发用户 - 登录响应时间 < 200ms 安全要求: - 防止 SQL 注入、XSS 攻击 - 密码加密存储 - 接口访问频率限制 请提供完整的架构设计、核心代码和部署方案"
|
错误处理
"当输出不符合要求时,请按以下格式反馈:
❌ 问题反馈: - 具体问题:[描述问题] - 期望改进:[说明要求] - 示例:[提供好的例子]
✅ 如果输出正确,请: - 确认理解正确 - 提供额外建议或相关内容"
示例使用: "请生成一个 Python 文件处理的函数"
如果输出太简单,我会回复: ❌ 问题反馈: - 具体问题:函数功能过于简单,没有错误处理 - 期望改进:添加文件不存在、权限错误、内存溢出的处理 - 示例:参考 Python 的 with 语句和异常处理最佳实践"
|
实际应用场景
数据分析
"你是一位数据分析师,请帮我分析这个电商数据集
数据描述: - 时间范围:2024年1月-6月 - 包含字段:用户ID、商品ID、购买时间、金额、地区 - 数据量:100万条记录
分析要求: 1. 销售趋势分析(月度、季度) 2. 用户购买行为分析 3. 商品销售排行 4. 地区销售分布 5. 用户生命周期价值
输出要求: - 使用 pandas 代码 - 包含数据可视化代码 - 提供业务洞察和建议 - 预测未来 3 个月趋势"
|
自动化办公
``
“你是一位办公自动化专家,请帮我设计一个 Excel 报表自动化方案
业务场景:
- 每月需要整理 10 个部门的费用报表
- 数据来源:多个 CSV 文件
- 报表格式:统一模板,包含图表
自动化需求:
- 自动读取和合并数据
- 数据清洗和格式统一
- 生成汇总报表
- 创建可视化图表
- 邮件发送给相关人员
请提供:
- Python 代码(使用 pandas + openpyxl)
- 配置文件设计
- 错误处理机制
- 定时任务设置
- 使用说明文档”
```
最佳实践总结
- 明确目标:清楚知道自己想要什么
- 提供上下文:给予足够的背景信息
- 设定角色:利用模型的”角色扮演”能力
- 循序渐进:复杂问题拆解为简单步骤
- 迭代优化:根据输出调整提示词
- 使用示例:提供具体的输入输出样例
- 约束输出:明确格式、长度、风格要求
[!tip]
- 保存有效的提示词模板供后续使用
- 针对不同任务建立提示词库
- 定期更新和优化提示词策略
- 学习其他人的优秀提示词案例
参考资料