有个段子,两个游客在森林里碰到了熊,一个人马上从背包里拿出钉鞋蹲下来换上,另一个看他换鞋摇摇头说,没用的,穿上钉鞋你也跑不过熊。换鞋的人头也不抬冷冷的说道,跑不过熊没关系,跑的过你就行了。
大模型在编程方面实现基础编程能力的平权,以后长期沉浸于一线coding,手特快,编码量多脾气又很倔的程序员,将会逐步丧失优势。
有了大模型的助力,编程进化到每个借助大模型的软件开发人员都相当于自带了一个软件组,一个人就实现了团队作战。
带团队作战,你最需要的不是基础编程能力,而是需求分析、故事拆分、用例设计以及最重要的包工头的能力(即会安排活,会定DoD,能把要干的活转化为清清楚楚、明明白白的prompt)。
善用大模型的人一个人顶一个开发组,那普通软件团队的人员规模也会相当幅度的缩减。如果你还不精通大模型编程,跟善用大模型编程的人比,那可是一个人手撕别人一个团队啊。同样的工资,你觉得老板会雇谁?
这里重点来了,带领大家成为大模型辅助编程的高手。
工欲善其事必先利其器。要想用好大模型,必须了解大模型的局限:
1、回答结果不稳定
有很多时候都要在多次prompt后选择一个靠谱的输出:
tips:一次效果不满足要求,可以多次尝试。
2、编造内容
tips:生成内容需要人工确认才能应用
3、token有限
token指一次交互输入+输出的字符总数
tips:代码走查时,输入代码量不能一次太多,要多次输入;生成过大代码时,会被截断,需要拆细拆小。
针对大模型的这些问题,如何用好大模型进行编码呢?
答案就是必须用确定性prompt,这个方简单易用,非常容易上手。我们来看几个例子(example1讲完后将会进行确定性prompt方法论的分享,并通过example2、example3进行进一步阐述,看完并实践后,相信你已经换上能跑过同行的钉鞋了。):
example1:
不使用java大数类,实现java不限长正整形字符串加法
测试用例prompt