AI编程实战:把需求讲给 AI——Prompt 基础与模板

文章目录

AI编程实战:把需求讲给 AI------Prompt 基础与模板

写在前面

环境搭好后,很多人的第一个困惑是:AI 怎么经常听不懂我说话?其实大部分时候不是 AI 笨,而是需求没说清楚。

AI 写代码的质量,七成取决于需求表达。 同样的模型,一个含含糊糊的提问和一个结构清晰的提问,产出差距可以是"不能用"和"直接能用"。

这篇讲两件事:需求表达的核心框架,以及五套可以直接复制的模板。

一、需求四要素

给 AI 描述编程任务时,把下面四件事说清楚,它就很难跑偏:

  1. 目标:要做什么、解决什么问题(一句话讲清楚);
  2. 约束:用什么语言/框架、运行环境、不许做什么(比如"不要改动数据库结构");
  3. 输入与输出:给它什么,它要返回什么格式(文件、函数、打印结果......);
  4. 验收标准:怎么算完成,跑通什么场景才算过关。

提示:约束和验收标准是最容易被忽略的两项。缺了它们,AI 大概率会"自由发挥"------结果往往不是你想要的。

二、坏例子 vs 好例子

例子一:写脚本

❌ 坏提问:

text 复制代码
帮我写一个爬虫

问题在哪:目标模糊、没有说语言、没有说抓什么、没有说输出格式、没有验收标准。

✅ 好提问:

text 复制代码
用 Python 写一个抓取网页标题的脚本。
- 目标:给定一个 URL,抓取该网页的 <title> 标签内容并打印
- 约束:只用标准库和 requests;处理超时和请求失败;不要使用浏览器自动化
- 输入:命令行参数传入 URL
- 输出:控制台打印 "标题:xxx"
- 验收:我传任意一个有效 URL 能正确打印标题,传无效 URL 能给出清晰报错

例子二:修 Bug

❌ 坏提问:

text 复制代码
我的程序报错了,帮我看看

✅ 好提问:

text 复制代码
我的 Python 程序读取 CSV 时报错,完整报错如下:
(粘贴完整报错)
- 环境:Python 3.11,文件在 D:/projects/data/
- 数据:CSV 文件约 2 万行,含中文
- 要求:给出修改后的代码和修改原因,不要引入新依赖

看出区别了吗?好提问把"信息"和"边界"都给了 AI,它就不用猜,也猜不偏。

三、五套即用模板

下面五套模板可以直接复制,把方括号里的内容换成你的需求。

模板一:生成代码

text 复制代码
用 [语言/框架] 实现 [功能]。
- 目标:[要解决什么问题]
- 约束:[技术栈、版本、不能做什么]
- 输入:[函数/参数/文件格式]
- 输出:[返回值/输出格式]
- 验收标准:[怎么算完成]
- 请先给出实现思路,再写完整代码,代码要有注释

模板二:修改已有代码

text 复制代码
请修改文件 [路径] 中的 [函数/模块]。
- 现状:[现在它做什么]
- 期望:[改成什么样]
- 约束:[不能动哪些部分]
- 请先说明改动点,再给出完整的新代码(保留原有风格)

模板三:调试

text 复制代码
这段代码运行报错,请帮我定位并修复。
- 代码:[粘贴代码]
- 报错:[粘贴完整报错]
- 环境:[操作系统、语言版本、依赖版本]
- 要求:先解释原因,再给出修复后的代码,并告诉我如何验证

模板四:写测试

text 复制代码
为 [文件/函数] 编写单元测试。
- 被测代码:[粘贴代码或说明]
- 框架:[pytest/Jest/其他]
- 要求:覆盖正常输入、边界输入、异常输入三类场景
- 输出:可直接运行的测试文件,并说明每个用例测什么

模板五:写文档

text 复制代码
为 [项目/模块/函数] 编写 [README/接口文档/注释]。
- 目标读者:[使用者/维护者]
- 必须包含:[安装方式、用法示例、参数说明......]
- 风格:[简洁/详细]
- 要求:示例代码必须与真实接口一致,不要编造

四、三个常见误区

  1. 一次塞太多需求。 一个任务一个任务来,复杂功能拆成几步,每步验证后再继续;
  2. 不交代环境。 语言版本、操作系统、依赖,这些"背景知识"AI 猜不出来;
  3. 不校验输出。 AI 生成的代码和命令一定要自己跑一遍,文档要核对,别盲信。

提示:最后一条最重要。AI 是提效工具,不是甩锅对象------代码出了问题的责任和验收人永远是你自己。

小结与下篇预告

本篇掌握了需求四要素(目标、约束、输入输出、验收标准),并拿到了五套可直接复制的模板:生成、修改、调试、测试、文档。

下一篇开始进入实战:《用 AI 从 0 写一个小工具》,带你把第一篇、第二篇、第三篇学的东西串起来,完整走一遍"需求→代码→运行"的流程。

小作业

拿你手头一个真实的小需求,按四要素框架写成一段完整的 Prompt,发给 AI 试试:

  1. 它给出的结果是否一次就接近可用?
  2. 如果不行,缺了哪个要素?补上再试一次;
  3. 把两次的对比结果记下来,这就是你最好的 Prompt 学习笔记。
相关推荐
不可求~7 小时前
C++ std::string_view 不是字符串:从悬空引用到安全用法
java·开发语言·c++
kyriewen8 小时前
我受够了复制报错去问 AI,花一下午给控制台做了个调试助手
前端·javascript·ai编程
深蓝海域知识库8 小时前
评学问练考:大模型AI智能学院——重塑学习培训
人工智能
漂流瓶jz8 小时前
【AI】一文读懂大模型生态:分类/参数/结构/训练/GPU/评测/排行/社区
人工智能·llm·openai
一点一木8 小时前
Hermes Desktop 重磅更新,Bot Mode 正式上线——把你的 AI 变成一支可协作的专属团队
人工智能·agent
90后小陈老师8 小时前
PHP 配置默认值失效排查实录:isset 兜底遇上表单空串回填,首页文案是怎么集体消失的
开发语言·php
xushichang123_8 小时前
客服中心想要依托 AI 升级客户服务体验,可选择哪些云联络中心架构方案?:优先评估 Amazon Connect+客服 AI Agent
人工智能
jikemaoshiyanshi9 小时前
企业如何借助一体化 AI 工作台赋能办公提效?Amazon Quick 可适配哪些企业业务场景?—— 从智能问答、数据解析到流程自动化的全域 AI 能力平台
人工智能
IT_陈寒9 小时前
Redis的DEL命令竟然没删掉数据?我踩的这个坑你得知道
前端·人工智能·后端
JJJennie7779 小时前
Gemini 3.7 Flash 上线,Google 想让 AI 多干活
开发语言·javascript·ecmascript