← 返回文档列表

鱼皮的 AI 指南 - 3、AI 编程技巧

文档路径: AI\鱼皮的 AI 指南\鱼皮的 AI 指南 - 3、AI 编程技巧.md

鱼皮的 AI 指南 - 3、AI 编程技巧

⭐️ 推荐观看视频版:https://www.bilibili.com/video/BV1i9Z8YhEja

其实现在很多程序员朋友对 AI 还是持怀疑态度的,觉得 AI 是不是只能做点儿小网站、小项目。我之前也是这么想的,直到我纯用 AI、完全不写代码地做了一个有几万行代码的大项目,我才发现 AI 的进化,远比我的想象更可怕。

当然,想用 AI 做大项目,还是有很多技巧的。为啥使用相同的 AI 工具,有同学能做出来网站,有同学只能做出来一堆 Bug 呢?这一部分,我们就来解决一个问题 —— 如何让 AI 生成的代码更准确?

1、优化 Prompt

Prompt 的质量直接决定了 AI 生成代码的准确性,也正因如此,才有了 Prompt 工程的概念、市面上才出现了提示词工程师这个岗位。

首先我们要掌握最基本的 Prompt 优化技巧,比如明确 AI 的角色、提供具体的细节要求、拆解任务、提供示例等等,这里 智谱 AI 开放平台的文档 总结得不错,大家可以学习下。

此外,我更建议先把自己手写的 Prompt 扔给其他 AI,让它帮我生成一段质量更高的、结构化的需求文档,再喂给 Cursor 去生成网站,效果会更好。

完整的需求文档通常包括:

2、复杂项目的生成技巧

对于复杂的项目,想一步到位是不现实的,可以采用分步迭代的策略:

  1. 先利用 Cursor 的 Agent 模式 + 高级推理模型生成基础项目框架,暂时不管功能好不好用,确保能够运行项目即可
  2. 划分模块和功能点,依次向 AI 提问,逐步实现核心功能并验证是否可用。
  3. 在保证不影响功能的前提下,优化实现细节。

听起来很简单,但实际操作时,大家经常会遇到 AI 输出的内容驴头不对马嘴、生成了一个新功能后原来的功能就不能用了、改了一个 Bug 又来 3 个 Bug 的情况。怎么办呢?

教你几招:

1)项目模块化。由于 AI 的脑容量不大,能接受的上下文是有限的,随着你的项目信息量不断增大,它有可能忘记之前的信息,导致生成的代码错误。所以我们要把项目的功能尽可能隔离开,把一个大项目分割成多个小项目,让 AI 生成某个功能时只需要关注一小部分上下文,得到的结果会更精准。

举个例子,开发一个电商系统,可以把商品管理模块独立出来,当需要 AI 生成添加商品功能的代码时,只需要提供像商品表的字段设计、添加商品的业务逻辑规则,不需要把支付结算、用户会员等关联不大的功能作为上下文提供给 AI。

2)限定修改范围。AI 生成的代码没有那么可控,经常改 A 功能的同时把 B 功能也顺带修改了。这个问题很好解决,只要在提示词中限定修改范围即可,比如:

`markdown 仅修改 services/order.java 中的 CreateOrder 方法:

  1. 添加分布式锁防止超卖
  2. 保持现有日志格式
  3. 不要改动其他文件
`

3)抽象和复用。假如我们要让 AI 生成 2 个布局一模一样的页面,它有的时候会很死板,生成完页面 A 之后,复制一遍页面 A 的代码来生成页面 B。这样非常不利于大项目的生成和维护,以后 AI 改了页面 A,说不定页面 B 就忘了改,跟人来开发一样。所以我们需要留个心眼儿,适当地告诉 AI:请帮我抽象 XX 页面、XX 代码为可复用的组件。这样也能减少整个项目的代码量,也有助于减轻 AI 上下文记忆的负担,让生成结果更准确。

4)版本控制。建议利用 Git 版本控制工具对代码进行管理,每正确生成一个功能后都提交一次版本,在每次 AI 生成新代码之后人工对比一下改动的文件,出了问题也能快速还原到之前的版本,防止代码丢失。

3、其他技巧

掌握了上面这些,是完全可以利用 AI 生成复杂大项目的。还有一些其他小技巧,大家自己看一看就好:

  1. 注意操作系统:AI 更喜欢 Linux 或 Mac 系统的终端,执行命令的能力更强。如果使用 Windows 系统,可以通过安装 Linux 子系统(WSL)来替代自带的终端。或者在和 AI 对话的上下文中明确告诉它使用 Windows 系统的终端命令,否则可能 AI 给的很多命令都是无法运行的。
  2. 人工控制:AI 有时会因缺乏关键上下文信息、或者自身能力的不足而陷入循环,这时就有必要人工介入了。可以尝试手动指定上下文、更换 Prompt 来引导 AI。
  3. 多元 AI 协作:不同 AI 大模型擅长不同任务,如果单一大模型无法正常完成工作,可以利用其他大模型生成 “教 AI 做事的方法和指令”,增加解决问题的可能性。

------

OK,AI 使用技巧还是挺多的,建议大家可以多去练习练习,看到这里,你应该就超过了 90% 的同学。