与AI协作编程的核心是让AI精准理解你的需求边界、技术约束和目标产出,好的提示词能大幅减少反复修正的成本。以下是可复用的通用建议和思路,覆盖提示词设计、场景适配和协作技巧。
一、 提示词设计核心原则
1. 明确边界:技术栈+约束条件+目标
AI无法凭空猜测你的项目环境,必须在提示词开头清晰界定核心限制,避免产出无效代码。
- 必写要素:编程语言/框架版本、运行环境(如Node.js 18+、Python 3.10、React 18)、依赖库限制(如“禁止使用jQuery,仅用原生JS”)、性能/安全要求(如“接口需做参数校验,防止SQL注入”)。
- 反面例子:“帮我写一个登录接口”(模糊,AI可能随意选框架)。
- 正面例子:“用Python 3.10 + FastAPI写一个用户登录接口,要求:1. 接收username和password参数;2. 做非空校验;3. 返回JSON格式的成功/失败响应;4. 禁止直接拼接SQL,使用参数化查询。”
2. 分层指令:先宏观后微观,先目标后细节
复杂需求建议拆分为**「目标层-方案层-细节层」**,让AI先把握整体方向,再填充具体逻辑,避免因细节过载导致偏离核心需求。
- 示例结构
- 目标层:实现一个前端表格组件,支持分页、排序、搜索功能。
- 方案层:基于Vue 3 + Element Plus,数据从Mock接口获取。
- 细节层:分页每页10条数据;排序支持按ID升序/降序;搜索框支持模糊匹配用户名;表格样式需适配移动端。
3. 提供上下文:贴代码片段+说明关联逻辑
当需要修改已有代码时,必须粘贴相关代码片段+说明代码的作用+修改点,否则AI无法判断变量含义、函数依赖和业务逻辑。
- 反面例子:“帮我优化这个函数,让它更快”(无代码,AI无法优化)。
- 正面例子:
以下是一个计算数组元素总和的Python函数,现在需要优化它,要求:1. 支持过滤掉非数字类型的元素;2. 处理超大数组时避免内存溢出。
def sum_array(arr): total = 0 for num in arr: total += num return total
4. 指定输出格式:代码+注释+使用说明
明确要求AI的输出结构,方便直接复用,减少后续整理成本。可要求包含:
- 完整可运行的代码块
- 关键逻辑的注释(如“// 这里做参数校验,防止空值传入”)
- 使用示例(如函数调用方式、接口请求示例)
- 注意事项(如“注意:该函数需要传入已实例化的数据库连接对象”)
二、 不同编程场景的提示词思路
1. 需求→代码:从业务描述到实现逻辑
适合全新功能开发,核心是**「把业务语言翻译成技术语言」**,并明确输入输出。
- 提示词模板
请用【技术栈】实现一个【功能名称】,业务需求是:【1.xxx 2.xxx】。
要求:- 输入:【参数名/类型/说明】
- 输出:【返回值格式/示例】
- 约束:【技术限制/性能要求/安全规范】
请提供完整代码+注释+使用示例。
2. 代码→优化:性能/可读性/安全优化
适合已有代码的迭代,核心是**「明确优化目标+给出评判标准」**。
- 提示词模板
以下是一段【功能】的代码,用【技术栈】编写:
【粘贴代码】
请对它进行【优化方向:如性能优化/可读性优化/安全优化】,优化目标是:【如“循环次数减少50%”“符合PEP8规范”“修复XSS漏洞”】。
优化后请对比说明:1. 优化前的问题;2. 优化后的改进点;3. 性能/安全提升的数据(如有的话)。
3. Bug→修复:精准定位+复现条件
AI查Bug的关键是**「提供完整的报错信息+复现步骤+相关代码」**,否则只能给出通用排查思路。
- 提示词模板
我在运行【代码功能】时遇到了报错,技术栈是【xxx】。
- 报错信息:【粘贴完整的报错日志/截图文字版】
- 复现步骤:【1. 调用xxx接口;2. 传入参数xxx;3. 触发xxx操作】
- 相关代码:【粘贴报错相关的函数/类代码】
请分析报错原因,并给出修复方案和修改后的代码。
4. 解释→学习:代码逻辑/技术概念讲解
适合新手理解复杂代码或技术点,核心是**「要求AI用通俗语言解释+举例子」**。
- 提示词模板
请用通俗易懂的语言解释以下【Python装饰器】代码的逻辑,包括:1. 每一行代码的作用;2. 装饰器的执行流程;3. 这个装饰器的实际使用场景。
【粘贴装饰器代码】
要求:避免使用专业术语堆砌,适合编程新手理解。
三、 与AI协作编程的实用技巧
-
小步快跑,逐步验证
复杂功能不要一次性让AI写完,拆分成多个小任务(如先写数据模型→再写接口→最后写前端调用),每完成一步就验证是否符合预期,避免后续返工。 -
善用“追问”修正偏差
当AI产出的代码不符合需求时,不要重新写提示词,而是基于现有结果追问,明确指出偏差点。- 示例:“你写的登录接口没有做密码加密,麻烦补充使用bcrypt进行密码哈希的逻辑,并且添加密码校验的函数。”
-
加入“自查指令”提升代码质量
在提示词末尾添加自查要求,让AI主动规避常见问题。- 示例:“请检查代码是否存在以下问题:1. 未做参数校验;2. 存在硬编码;3. 不符合PEP8规范;4. 有性能瓶颈,并给出修正方案。”
-
根据AI特性调整提示词
- 对ChatGPT等通用大模型:适合自然语言描述,可加入更多业务背景;
- 对CodeLlama等代码专用模型:适合更简洁的技术指令,可直接贴代码片段要求修改。
四、 避坑指南:常见提示词误区
- ❌ 需求模糊:缺少技术栈、约束条件,导致AI产出的代码无法直接使用;
- ❌ 信息过载:一次性粘贴几百行代码,AI无法处理长文本,容易遗漏关键逻辑;
- ❌ 忽略上下文:修改代码时不提供原有逻辑,导致AI写出与项目冲突的代码;
- ❌ 过度依赖AI:不验证AI产出的代码(如未检查是否有语法错误、逻辑漏洞),直接上线。
