使用 AI 的一些心得体会
Table of Contents
经过几个月的实践,我总结了使用 AI 的一些心得体会,在这里分享给大家,希望能有一点帮助。
Context
我们在使用 AI 完成任务的时候,就是从起点出发,要到达一个终点。这之间有很多路径,有些可达,有些不可达;有些会绕很多弯路,有些则是笔直通畅。对于我们来说,我们总是希望在最短的时间内找到最短的那条,而不是盲目的进行 DFS。
起点:为了实现这个目标,我们需要充足的 context。在完成任务前,尽可能的调研——GitHub、Gemini、Claude、Codex、Google,通过各种搜索引擎和 AI(强烈推荐 Gemini 的 Deep Research,可以获取非常充足的上下文),去列举出尽可能多的路径,去比对和验证,然后选择一条看起来最通畅的路径,交给 AI 去执行。我们要相信 AI 的能力,只要路径规划正确,AI 的执行通常是不需要过多干预的。
终点:另一个重要的事情就是验证。当 AI 执行完成,我们要给 AI 制定足够多的 case 和 context 去让 AI 验证结果的正确性。单测、测试环境、日志、数据库,给 AI 输入足够多的 context,让 AI 可以验证自身的正确性。
把 runtime 交给 AI,我们只需要在起点制定一个比较明确的方向,然后在终点设置足够多的 test case,就可以解决很多问题。这里最重要的就是 context:我们如果想要很好的使用 AI 就要有充足的 context,AI 想要很好的验证也需要充足的 context。我觉得理论上 context 足够,AI 完全可以做 99% 的执行工作。
Parallel
如果执行的工作都交给 AI,我们只负责规划和验证,那就意味着我们会空出很多时间,也意味着我们可以同时进行多个工作,这对于提升工作效率是很重要的。
首先如果要进行多个工作,就需要可以迅速的创建多个工作树,并可以在不同工作树之间快捷的切换。之前已经推荐过 superset,但是我发现 superset 的功能对我来说有点臃肿了,我只需要工作树加一个终端就可以了,所以我魔改了一下 ghostty,感兴趣的话可以使用一下。^_^
https://github.com/evilstar9527/ghostty/releases

大概就是这样。
Parallel 工作的工具已经有了,然后就是需要我们自己切换上下文,这个我确实没找到什么好方法,一般脑子里记着该干啥、哪些任务没干完、哪些任务有问题就行。我想到的是可以对每个任务写一个对应的进度条文档:在规划方案的时候就写一个进度条文档(简洁一些,只需要包含关键任务点描述就行),每次 AI 执行结束就对照着进度条文档,看看执行了哪些任务,还有哪些没执行。只要规划做的没问题,应该就不会有需要推倒整个计划重来的问题。
把 AI 当成老师,而不是工具
AI 虽然可以做大部分的执行工作,但是我觉得我们不应该只是让 AI 去做一个执行的机器,重复的执行「接受命令 → 完成任务 → 验证结果」这样的循环,而我们只是作为一个任务的发布者,只负责发送命令和交付结果。
正如上文所说的,为了正确的使用 AI,我们需要大量的 context,这些 context 的获取也大部分是从和 AI 的问答中获取到的。这些知识就可以沉淀为我们的经验。
另一方面,当毫无头绪的时候,可以让 AI 通过 plan 模式提出一些建议,观察 AI 的设计方案与执行建议,也可以学到一些知识。
总而言之,就是不要只把 AI 当作执行的工具,要观察 AI 的输入输出、工作流程。如果我们总是可以通过充足的 context 引导 AI 作出最佳实践,那么通过学习这些最佳实践,也可以不断提升自己的经验。
另外就是犯错。我们会犯错,AI 也会犯错。更多的情况下,是我们犯错导致 AI 犯错,犯错的经验也很宝贵。如果每犯过一次错,就能永远的避免同样或类似的错误,那会是一种很快的成长。
将固定的工作流程自动化
用好 AI 的核心在于有一颗热爱偷懒的心,把重复的、固定的工作流,全部交给 AI。比如提 PR、提工单、做一些重复业务需求、解决线上 bug,只要能提取出一种模式,一种重复的固定的模式,那么就可以想办法让 AI 来帮我们执行,写一个 skill 让 AI 去做。如果做不了,大概率是 AI 的 context 不够,这时候就去做一些 MCP,把 context 灌输给 AI,把能力赋予给 AI,然后 AI can do everything。屡试不爽。
解决问题 与 实现想法
没有 AI 之前,执行是很困难的,为了验证一个想法,我们可能需要几天、几星期、几个月去执行。有了 AI 之后,执行的时间可能会被缩短到几个小时、几十分钟。大家的执行时间都减少了,那么怎么做的比别人更好一点呢?
- 解决问题。无论有没有 AI,我们都需要面对很多问题:代码问题、环境问题、配置问题、沟通问题。无穷无尽的问题都需要我们解决,利用好 AI 解决 AI 能够解决的问题。如果我们解决的问题越多,就能获取越多的成长。
- 实现想法。想法的来源可以是你从解决某个问题时迸发出的灵感,可以是从某些开源项目中汲取出来的精华,甚至可以是做梦的时候突然梦到的一些 idea。但是空有想法是没啥用的,一有想法就迅速的、及时的去实现,哪怕很粗糙,哪怕很幼稚,我们也要去实现。实现的越多,我们的能力就会越丰富。