你的代码用ai为什么出错,12大规则教你如何降低你的错误率
今天不聊别的unity引擎的东西,今天聊聊ai,随着mcp的流行,已经有部分程序员已经完全进行利用mcp进行编写代码,因为mcp有这浏览文件夹里面的文件在精准获取信息进行修改的能力,这使得程序员对代码错误率降低很多,但是在面对大量复杂代码,一坨屎山的情况下,ai的错误率将会以指数上升,我今天给大家推荐一个.md的目录repo,大家可以放入自己ai本地化程序的规则文档在每次使用执行一次说明
https://github.com/multica-ai/andrej-karpathy-skills
其实经常使用ai的人知道ai最致命的短板是在不清楚概念和代码情况下,擅自做假设。假设这个可以成功执行,尤其是你在使用一些引导性话语让他进行操作执行的时候,ai就会因为你的引导话语进行编写代码失去真相而导致错误。而不是去质疑你说的相关概念因为真实性无法执行而提醒你无法操作。(最典型的案例我们unity遇到最多而且至今为解决的问题,触发器问题,在unity里面ontriggerenter永远都只是单向的指定为当前脚本挂载对象跟别人交互产生互动,如果你在prompt提示词提出我希望你在这个脚本指某某人跟其他tag的物体交互,他不会告诉你这个因为unity引擎规定ontrigger只能让本物体与其他物体交互产生效果无法指定这个原则,而是故意编写错误代码出错顺从你了,这个问题从一年前到现在仍然没有解决)
因此创作者设置了四大法则用短短几行规则嵌入ai,来提示ai必须在这个框架进行操作分别如下:
1先思考再编码,先质疑其提示词是否在某些原则上做得到在进行操作,让ai列出需求清单分析可行后在进行编程
2简单优先,不考虑架构问题,能用最少的最不耦合的方法解决问题最好,尽量不做到简单问题装嘉豪复杂化,绝不多写一行,多余功能全部不要,用不到逻辑全消除,调试debug除外
3手术性修改,也是区域性修改,只改相关功能区域的代码,不修改架构,不删注释,不改除此以外其他功能代码,尤其是dao,实体层 ,目录层,不碰屎山架构。
4目标导向:不要告诉ai先改a再改b,强行设置顺序会导致问题,我们需要最终结果能优先通过测试用例。
当然还有新增微调8条规则负责更精准的控制
1只做判断不写死规则
2token消耗严格控制(别乱瞎想导致token消耗)
3代码冲突不要平均(这个应该是average妥协的意思)
4读完源码在动手
5不要假测试
6设置分布步骤检查点checkpoint
7严格遵守原开发代码风格甚至你不同意
8遇到问题绝不隐瞒,优先提问在进行编写
以下这几条规则严格限制了ai的假设性原则,大家可以自己编写如下的.md拷入ai使用规范进行操作你的代码错误率将会好很多,也可以使用GitHub这位大神的方法ai编写代码四大命名规范
更多推荐

所有评论(0)