当前位置: 首页 > 科技观察

代码自动生成Codex导致程序员恐慌?OpenAI:不信谣,不传谣

时间:2023-03-16 15:48:44 科技观察

随着程序员不断解放各个领域的纯机械劳动,终于轮到程序员失业了吗?随着OpenAI强大的代码自动生成模型Codex的发布,这种问题一直困扰着大家,但程序员失业的那一天可能已经很远很远了。  今年夏天,人工智能公司OpenAI发布了Codex,它可以根据简单的提示自动用自然语言编写软件代码。  也就是说,作为产品经理,你可以向Codex提出各种需求,他会为你生成一个代码。  Codex是基于GPT-3训练的,而GPT-3使用了2019年之前互联网上几乎所有的公开书面文本进行训练,因此对自然语言有一定的理解能力。  关于Codex,最常见的问题是“人类程序员会被它取代吗?就像其他手工艺品被消灭一样。”  因为每个国家都不遗余力地培养新的软件开发人员,如果换掉亚人类的程序员,之前投入的数十亿美元瞬间化为乌有,所有的努力都将付之东流。  如果你是一名软件开发人员,或者你已经高价雇佣了很多程序员,你可以高枕无忧。尽管Codex比人类更强大、更高效、更专注,但要取代它可能还很遥远。  一位资深程序员分享了一个经验,几年前他与美国一家大型咨询公司的一位资深数据科学家(薪水很高)和软件开发人员一起从事政府数据库项目。他们的任务是了解国家机构如何使用其数据库向组织分配拨款,然后就如何改进数据库向该机构提出建议。  刚开始和他的开发同事一起工作时,他对程序员的工作方式有很多先入为主的想法,比如想象程序员整天蜷缩在笔记本电脑前敲代码,或者在Mathematica中写出精彩的公式来帮助我们更好地工作了解我们客户的数据库。或者用美丽的心灵在windows上疯狂涂鸦,回归分析,在屏幕前耗费大量时间,写出上千行Python代码。  然而,事实恰恰相反。程序员与客户面对面坐下来,花几天时间了解他们的赠款发放流程,然后开始一系列的数据参与,包括个人员工、利益相关者、机构等。成员会议等。  经过几次几个月的此类工作,他终于坐下来分析该机构的数据,使用R和各种图形库。真正的写代码和分析,只用了整整两天时间。他的分析准确无误,他的程序运行良好,客户非常激动。  所以实际编写代码和运行分析只需要程序员大约1%的时间。其余时间用于与客户合作以了解他们的问题、确定要使用的正确软件和数学模型、收集和清理实际数据并展示结果。在大多数情况下,编写代码和数学本身是软件开发过程中很小的、几乎是死记硬背的部分。  当然1%是极端的例子。根据TechRepublic的说法,实际编写代码通常只占软件开发人员时间的不到一半,在许多情况下,只有20%。  这意味着即使像Codex这样的系统运行良好,它们最多也只能代替典型的人类软件开发人员的一半工作,而且通常不到四分之一。除非有人训练Codex与客户坐下来,赢得他们的信任,了解他们的问题,并将这些问题分解为可解决的组件,否则Codex很难威胁到熟练的开发人员。  就是说,非编码人员能够坐下来使用Codex、编写规格表并制作软件的日子还很遥远。  OpenAI研究人员在他们发表的论文Codex中也承认了这一点。  用他们的话说,工程师不会整天写代码,相反,他们把大部分时间花在与同事讨论、编写设计规范、升级现有软件技术堆栈等事情上。有任务。  Codex的创建者相信该系统将使开发人员能够更快地编写出好的代码。如果有的话,他们认为自动化与软件开发相关的繁重工作将为更多人服务,而不是取代程序员。  它也可能会创造一个新的专业:提示工程,即制作文本提示的复杂过程,使Codex等人工智能系统能够发挥其魔力。  但其他人则不太确定。  连线杂志记者StevenLevy认为,Codex可能不是作为代码生成工具,而是作为辅助代码生成工具。如果这使每个开发人员的效率大大提高,公司可能会决定他们可以使用更少的开发人员。如果一个项目以前可能需要10名开发人员,如果这些开发人员得到Codex或类似AI系统的协助,则可能只需要8名开发人员,从而导致两个工作岗位的净损失。  也许有一天这会是真的,但那一天不会很快到来。  考虑到2020年全球对开发人员的需求将增长25%,尽管发生了大流行,像Codex这样的系统对工作的真正威胁似乎微乎其微,至少目前如此。如果有的话,允许顶级公司在更少的开发人员的情况下生存,可以使这些开发人员可供中等规模的公司或初创公司使用,从而在技术生态系统的各个层面产生更好的软件。  目前,初创公司往往难以吸引有才华的开发人员。如果谷歌和Facebook在世界范围内挖走更少的顶级开发人员,那么新的创新公司可能会拥有更多的顶尖人才。  同样重要的是,所有这些都是基于这样的想法,即Codex或类似的系统可以像人类软件开发人员一样编写代码。  但目前,他还远远没有那种能力。  OpenAI承认,在发布时,Codex的代码有63%的时间存在错误或根本无法运行。即使在37%的时间内编写出完美的代码,对于机器来说也是一项艰巨的任务。但是,非编码人员能够坐下来使用Codex、编写规格表并完成软件工件的那一天仍然遥遥无期。  Github的Copilot由Codex提供支持。其作用类似于代码自动纠错,提供代码来完成整个功能,或者作为开发者自动补上重复代码。  在航空领域,副驾驶是完全合格的飞行员,如果需要,他可以从机长手中接管飞机的控制权。另一方面,自动驾驶仪可以在某些情况下(例如直线和水平巡航)自动驾驶飞机,但在情况不稳定时(例如在恶劣天气下降落时)必须将控制权交给人类飞行员。  GitHub的副驾驶更像是自动驾驶而不是真正的副驾驶。当任务简单重复时,它可以自己写代码,但一旦任务变得比较复杂,就需要人为干预。  Github在其关??于衍生产品的页面上说:“作为开发人员,您始终负责。”  在给定的商业航班上,飞机可能有90%的时间处于自动驾驶状态。但至关重要的是,人类飞行员始终要监督该系统。没有他们10%的贡献,飞机会经常坠毁。  除非法典在未来几年内得到显着改善,否则人类软件开发人员的工作是安全的。如果您是一名开发人员,请温习RapidEngineering等技能并应用Copilot和Codex等系统,以便您可以尽早获得使用它们的经验。  像Codex这样的系统在与熟练的开发人员对抗时可能会失败。  但随着Codex及其同类产品的改进,它们可以通过将自己的技能与先进的人工智能相结合,成为一股强大的、也许是不可阻挡的技术力量。

猜你喜欢