当chatgpt火起来的时候,一朋友问我,AI是否会淘汰程序员?答案是,不会,但是会淘汰不会用AI的程序员。
前言
作为研发,如果可以根据注释或者上下文自动生成代码、技术文档、单元测试,你想不想体验?
作为产品,如果可以自动分析市场数据和用户反馈,编写需求文档、用户故事,你想不想体验?
作为测试,如果可以自动生成测试用例,覆盖各种场景和边界条件、测试脚本,你想不想体验?
作为设计,如果可以自动生成UI设计原型,特性,或提供设计灵感、交互文档,你想不想体验?
.....
这些在2022年11月30号之前,都是每个搬砖者的梦想。
但就在那一天,OpenAI向世界丢下一枚炸弹,发布一款聊天机器人程序(ChatGPT3.5),能完成撰写邮件、视频脚本、文案、翻译、代码,写论文等任务,还能根据聊天的上下文进行互动,真正像人类一样来聊天交流。当时在整个地球引起了轰动,多少人担心AI即将统治地球。
接着各大平台进入语言模型行列,力争能分一杯羹,包括但不限于百度的文心一言、腾讯的混元,当然还有google的Gemini,以及各大巨头还在研发中的语言模型。当然,这些在chatgpt4.0面前,都是弟弟。
不得不感叹,AI 的发展真的是太快了,很多同学可能对 AI 的印象还局限于智能问答,但其实现在 AI 已经能自己干活了。
虽然 AI 现在还不能完全取代一个职业,但确实改变了很多职业的工作方式。走在时代的前面人员,早就使用 AI 工具来帮助自己摸鱼。开发用它生成代码,设计用它生成图像,测试用它来编写用例,运营用它优化文案,销售用它智能回复。我不仅全都要,还会用 AI 来创造艺术。
虽然 AI 已经这么强大了,但是有多少同学能真正利用好它呢?
接下来,我会从研发、产品,测试、设计等职能下,演示如何利用AI来提高工作效率,
Show Time
研发工程师
为了让程序员胖友们,可以跟上时代,我利用周末做了视频和图文教程,并且从付费copilot和免费的AI工具CodeGeeX、阿里的通义灵码为例,给大家分享如何运用AI工具提高学习和工作效率。
案例一:生成简单的单例模式。
- copilot
明显,没有识别到已经导入了包名、提供了main方法,但是大体不差,也使用了sync.Once方法来实现第一次加载的情况。
- codegeex
虽然定义了sync.Once,但是并未使用,而是直接返回了全局的instance,但是全局的instance并未初始化,所以这段代码无效。
可能,工作中不会这样实现的,我们来个更加切合工作实际的例子吧。
案例二:数组根据字段排序
- codegeex
明显,符合预期,且完全按照我的注释要求,自动生成代码,我无序做任何的更改,且自动生成时间较快。
- copilot
不亏是githup老牌,为了解耦合,它还单独给你创建了排序的方法,并且在排序的方法里面,生成了根据age、name等排序规则。这已经是三年的程序员水平了,甚至有独立思考的能力。
- 通灵义码
基于阿里云通义代码大模型打造的智能编码助手
大哥,你这是干嘛?我要排序啊,不是要打印。 你完败,直接出局吧。
产品选择
以上其实就是最最简单的测试,当然在工作中的场景远比demo要复杂。
我们尝试了使用copilot、codegeex和阿里的通灵义码,三者来模拟工作中的一些使用场景,下面我们来客观对比下:
特性/产品 | GitHub Copilot | Code Geex | 通灵义码 |
---|---|---|---|
产品价格 | 10美元/月,或99美元/年。 | 免费 | 免费 |
支持的语言 | 极为广泛如Go、C++、Java、Python等等 | 广泛,市面流行Top10 | 广泛,市面流行Top10 |
支持的IDE | IDEA、AndroidStudio、VSCode、Rider、RustRover等 | VS Code、IDEA、PyCharm、Vim | VSCode、IDEs、Docker、WSL、Web IDE |
生成速度 | 高速,集成IDE | 高速,集成IDE | 高速,集成IDE |
生成代码的适合度 | 较高,基于大量开源项目训练 | 高 | 高 |
所以,根据我的经验,我推荐Code Geex,它目前免费,性价比较高,可以满足大多场景,当然咯,土豪可以直接上Copilot。
至于CodeGeex的更多介绍,以及更多功能,可以在网上找下,或者移步:Code Geex详细介绍