新兴技能的出现催生了一个新职称:要掌握这些技能,我们需要超越简单的命令行编程,转而开发 软件。
我们正见证了一场每代人仅见一次的 AI 应用“向右转变”,这种变化是由新兴技能和基础模型的开源/API 的普及推动的。
在 2013 年,很多 AI 任务需要 5 年时间和一个研究团队 才能完成,而现在在 2023 年,只需要阅读一下 API 文档,抽出一个下午的时间就能搞定。
就像我们在 Twitter Space 上讨论的那样,API 的边界是可以穿透的 – AI 工程师可以选择去调整或托管模型,而研究工程师也可以选择利用 API 构建新应用!不过,他们各自的专长和主攻方向是十分明确的。
“就数量而言,AI 工程师可能会远远多于机器学习工程师或大语言模型工程师。一个人在这个角色中可以非常成功,甚至不需要亲自训练任何模型。” – Andrej Karpathy
不过,挑战总是藏在细节之中 – 在成功评估、应用和产品化 AI 方面,我们面临着无尽的挑战:
-
模型: 从评估最大型的 GPT-4 和 Claude 模型到小型的开源 Huggingface、LLaMA 和其他模型
-
工具: 从最流行的链式检索和向量搜索工具(例如 LangChain、LlamaIndex 和 Pinecone)到新兴的自主智能体领域(比如引人注目的 Auto-GPT 和 BabyAGI,强烈推荐阅读 Lilian Weng 的总结)
-
新闻: 此外,每天发布的论文、模型和技术方法的数量呈现出 指数级增长,随着兴趣和投资的增加,保持最新进展几乎成了一项全职工作。
我认真并且实际上将此视为一份全职工作。我确信这 就是 一份全职工作。我相信软件工程会催生一个新的专业领域,这个领域将专注于 AI 的应用并有效利用新兴技术。就像我们看到的“网站可靠性工程师”、“运维工程师”、“数据工程师”和“分析工程师”的出现一样。
这个新兴角色中最受期待且不那么尴尬的是:AI 工程师 1。
我所知的每个创业公司都有一个 #discuss-ai
Slack 讨论频道。这些频道将从非正式小组发展成为正式团队,就像 Amplitude、Replit 和 Notion 已经做到的那样。无数的软件工程师,无论是在公司时间还是在业余时间,都在 Slack 或独立的 Discord 中努力使 AI API 和开源模型商业化,他们将走向专业化,并最终共同拥有一个称号——AI 工程师。这很可能会成为这十年内最受追捧的工程职业。
AI 工程师的身影无处不在,从 Microsoft、Google 这样的科技巨头,到像 Figma(通过 Diagram 收购),Vercel(比如 Hassan El Mghari 开发的火爆 RoomGPT)以及 Notion(例如 Ivan Zhao 和 Simon Last 推动的 Notion AI)等领先的初创企业,再到独立黑客如 Simon Willison、Pieter Levels(Photo/InteriorAI 的创始人)和 Riley Goodside(现任 Scale AI 员工)。他们在 Anthropic 从事提示工程,年薪达 300k 美元;在 OpenAI 开发软件,年薪高达 900k 美元。他们利用空闲周末在 AGI House 探索新想法,并在 /r/LocalLLaMA2 分享心得。他们共同的特点是,将 AI 的最新进展迅速转化为数以百万计用户使用的实用产品。
而且,他们中没有一个是博士。在 AI 产品的开发和推广方面,你需要的是实干的工程师,而非理论研究人员。
AI 与 ML 工程师的角色逆转
这里我想指出的是一个已经出现的趋势,而不是我在开创这个趋势。在 Indeed 网站上,“机器学习工程师”的职位数量是“AI 工程师”的十倍。然而,由于 AI 领域的增长速度更快,我预测这种比例在未来五年将会完全颠倒。
来自 HN Who’s Hiring 的每月职位趋势图
虽然所有的职位名称都不是完美的,但有些名称确实有其用处。我们对于 AI 和 ML 之间的语义辩论感到既警惕又厌烦。我们很清楚,即使是普通的“软件工程师”也完全有能力开发 AI 软件。不过,近期在 HN 上的一个问题“如何成为 AI 工程师”揭示了市场上仍然存在的一个普遍观念:
2023 年 6 月的截图:HN 上对“如何成为 AI 工程师”问题的最受欢迎回答
现在,大多数人还是将 AI 工程视为机器学习或数据工程的一种。因此,他们建议学习相似的基础课程。但我可以肯定地告诉你,我所提到的那些杰出的 AI 工程师们没有一个人完成过与 Andrew Ng 在 Coursera 上的课程相当的工作,他们也不熟悉 PyTorch,甚至不清楚数据湖 (Data Lake) 和数据仓库 (Data Warehouse)3之间的区别。
未来,没有人会建议 通过阅读《注意力就是一切》(Attention is All You Need) 来开始学习 AI 工程, 正如你不会通过阅读福特 T 型车的设计图纸来学开车一样。当然,了解基础知识和历史总是有益的,这有助于你发现一些尚未被普遍认识的创意和效率/能力上的提升。但有时候,你只需直接使用产品并通过实践来理解它们的特点。
我并不认为这种课程内容的转变会一夜之间发生。出于人性,人们总是希望自己的简历更加丰富、在市场上更具竞争力,并通过引用更深层次的话题来彰显自己的权威。也就是说,对于那些拥有扎实数据科学/机器学习背景的人来说,Prompt Engineering 和 AI 工程还需要很长时间才能得到认可。但我相信,最终市场的需求和供给规律会发挥作用。
AI 工程师为何成为新兴职业
-
基础模型 被视为“少样本学习者 (few shot learners)”,它们展现了 在上下文中学习 (in-context learning) 和 零样本迁移 (zero shot transfer) 的强大能力,这些能力甚至超出了模型创造者的预期。也就是说,创造这些模型的人并不完全清楚它们的全部潜力。非大语言模型 (LLM) 研究人员可以通过更多地与模型互动,并把它们应用于研究较少关注的领域(比如 Jasper 在文案创作上的应用),来挖掘并利用这些潜能。
-
微软 (Microsoft)、谷歌 (Google)、Meta 以及其他大型基础模型实验室已经独占了稀缺的研究人才,它们基本上提供了一种“AI 研究即服务”API。你可能雇不到这些人才,但可以租用他们的服务 — 只要你团队中有懂得如何利用这些服务的软件工程师。尽管全球大约只有 5000 名大语言模型研究者,但软件工程师的数量却高达约 5000 万。供应的局限性使得“AI 工程师”这一新兴职业类别应运而生,以迎合日益增长的需求。
-
GPU 囤积现象。显然,OpenAI/Microsoft 首当其冲,但 Stability AI 通过强调他们拥有的 4000 GPU 集群 开启了初创企业之间的 GPU 军备竞赛。
还记得 2022 年 10 月 的情形吗?
自从那时起,新兴公司如 Inflection (13亿美元),Mistral(13 亿美元),Mistral (1.13 亿美元),Reka (5800万美元),Poolside(5800 万美元),Poolside (2600 万美元) 和 Contextual ($2000 万美元) 筹集巨额种子资金以购买自己的硬件设备已成常态。Dan Gross 和 Nat Friedman5 甚至宣布了他们的 Andromeda 计划,这是一个价值 1 亿美元、计算能力达 10 艾弗洛普(exaflop)的 GPU 集群,专门为他们所投资的初创公司提供支持。目前全球的芯片短缺6 正在反过来加剧这种短缺现象。在 API 界限的另一边,AI 工程师将拥有更多的能力去使用模型,而非亲自训练它们。
- 先行动,再准备,最后瞄准。 与其让数据科学家/机器学习工程师在将单一领域特定模型投入生产前进行繁重的数据收集,不如让产品经理/软件工程师直接使用大语言模型(LLM),构建并验证产品概念,之后再根据具体数据进行微调。
想象一下,如果后者的数量是前者的 100 到 1000 倍,那么以提示为基础的大语言模型(LLM)原型的 “先行动再调整” 工作流程,能让我们的工作速度比传统机器学习(ML)快 10 到 100 倍。这意味着 AI 工程师可以以更低的成本(大约低 1000 到 10000 倍)来验证 AI 产品。这就像是重温瀑布式开发与敏捷开发之间的对比,AI 正在成为敏捷开发的新形式。
-
Python + JavaScript。在数据/AI 领域,Python 一直占据着主导地位,首批 AI 工程工具,如 LangChain、LlamaIndex 和 Guardrails,都源自这个社区。但是,JavaScript 开发者的数量至少与 Python 开发者一样多,因此现在的工具越来越多地迎合这一更广泛的受众,从 LangChain.js 和 Transformers.js 到 Vercel 的新 AI SDK 都在扩展它们的服务范围。这意味着市场的总体机会至少增长了 100%。
-
生成式 AI 与分类器 ML。虽然 “生成式 AI” 7 这个术语渐渐不再流行,转而被诸如 “推理引擎” 这样的词汇所替代,但它在区分现有的 MLOps 工具和 ML 从业者与新兴的、与众不同的大语言模型和文本到图像生成器使用者之间的差异方面,仍然有其独特的表述价值。与之前专注于欺诈风险、推荐系统、异常检测和特征库的 ML 世代不同,如今的 AI 工程师们正忙于开发写作应用、个性化学习工具、自然语言处理的电子表格和类似 Factorio 的可视化编程语言。8
每当出现一个具有独特背景、使用不同语言、创造全新产品集合并采用一套截然不同工具的亚群体时,它们最终都会形成自己独立的群体。
1+2=3: 代码在软件 2.0 向软件 3.0 演化中的关键作用
六年前,Andrej Karpathy 发表了一篇颇具影响力的文章,阐述了软件 2.0的概念。他将传统的手工编码编程语言与新兴的“机器学习”神经网络作了对比。传统语言精确模拟逻辑,而神经网络则通过近似模拟,使软件能解决更多超出人类模型能力的问题。今年,他又进一步指出,现在最受欢迎的新编程语言是英语,填补了他最初文章中留下的一个灰色空白区域。
最新消息:Karpathy 对此发表了看法,但表示了不同意见!
去年,随着人们开始使用 GPT-3 和 Stable Diffusion,Prompt Engineering 成为了一种关于职业变革的流行观点。AI 创业公司被戏称为“OpenAI 包装器”,同时,LLM 应用程序显示出对提示注入和逆向提示工程的脆弱性。这是否意味着它们没有竞争优势?
2023 年的一个显著趋势是重塑人类编写代码的作用,以此来增强和补充大语言模型(LLM)的能力。这一趋势从价值超过 2 亿美元的 Langchain 大型企业到Nvidia 支持的 Voyager都有所体现,凸显了代码生成和复用的重要性。我最近参与了一场与 Harrison 的链条对比 AI 智能体的网络研讨会,在会上我深入讨论了代码核心应用与 LLM 核心应用的主题。
软件架构的主要分歧在于:“建立在智能之上的软件”与“智能化软件”。
虽然 Prompt Engineering 曾被过度宣传,但它仍将持续存在。在软件 3.0 应用中重现的软件 1.0 范式不仅是一个充满机遇和混乱的领域,也为许多初创公司提供了发展空间:
如果你不进行市场定位,那你还算是一名风险投资家吗?
显然,未来的编程不会仅限于人类所写。我最近参与的项目,如 smol-developer、更广泛应用的 gpt-engineer,以及其它代码生成工具,比如 Codium AI、Codegen.ai 和 Morph/Rift,都预示着它们将成为 AI 工程师的标准工具。随着人类工程师逐渐掌握利用 AI 的技巧,AI 在工程设计领域的应用也会日益增多。直到将来的某一天,当我们抬头仰望,我们可能已经分不清楚人类与 AI 的界限了。
汇聚时刻 – AI 工程师峰会
对于需要交流思想和技术的构建者来说,我们在举办了几个月的小型聚会后,现在正式宣布举办首个独立且以构建者为中心的 AI 会议:AI 工程师峰会!
欢迎浏览我们的专属网站 – ai.engineer!
如果你对本文内容感同身受,我们期待将顶尖的 AI 工程师、创始人和投资者汇集一堂,共同探索最新技术、参与或指导工作坊。在这里,你可能找到从实用新工具到下一位新同事或合作伙伴的一切。
这是一个关键的会议,我们将讨论过去一年在这个通讯和我们的播客中涵盖的所有内容,以及更多:
-
AI 用户体验
-
AI 开发工具
-
AI 基础设施
-
AI 智能体
-
新的大语言模型工具,包括 Langchain、向量数据库等
-
开源模型(训练、微调、推理、评估)
我在运营社区方面拥有丰富的经验,但这是我第一次组织一个 500 人规模的会议。为此,我与Reactathon的Ben Dunphy合作,我们将在旧金山(及在线 – 他上一次的会议吸引了超过 20,000 名远程参与者)举办这场最佳的 AI 工程师会议。
期待你的加入 ai.engineer!
我们正在同时招募演讲嘉宾和赞助商(欢迎与我们取得联系!)。
我们是建造者
关注行业动态的人可能已经发现,我们逐步调整了 Latent Space 播客和简报,以更好地服务于 AI 工程师这一群体。对我来说,最令人振奋的是能够针对这些对技术充满乐观并富有实践精神的听众服务。Marc Andreesen 最近指出,大部分公众关于 AI 的讨论充斥着极端的恐惧和偏执。他批评了那些专门从事“AI 安全专家”、“AI 伦理学家”、“AI 风险研究员”等职业的人,他们似乎总是传递悲观情绪。与此同时,还有一些不太严肃的加速主义者和令人难以忍受的 foomer threadbois,他们在 Twitter 上整天谈论遥不可及的乌托邦未来,却鲜少行动。
AI 工程师将会驾驭并运用 Shoggoth。
我们要让这成为可能。
更多讨论可以在 Hacker News 和 Twitter 上找到。
*作者的话: 我特别感激我的联合主持人 Alessio Fanelli 来自 Decibel,以及 Sarah Guo 和 Pranav Reddy 来自 Conviction,他们对这篇文章的草稿提出了宝贵的意见和支持。当然,还要感谢 Ben Dunphy 同意与我共同创办 AI 工程师会议 系列活动和社群。非常感谢!*
1 我们考虑过一些职称,比如“基础模型工程师”,“AI API 开发者”,“大语言模型(LLM)工程师”,但这些都不够口语化。相对来说,“提示工程师”听起来简洁,但却没能全面涵盖我们正在见证的 Code Core, LLM Shell 的发展。还有一个称呼是“MLOps 工程师”,不过这个职位通常被认为是一个长期专注于基础层面机器学习问题的著名群体 — 我们会在文章后面对此进行详细讨论。最后,“AI Tinkerer”这个由 Alex Gravely(Copilot 的有争议的?发明者)推广的称呼,听起来颇有趣味性,但似乎不够正式。
2 我在 GitHub 上的 AI 播客、新闻简报和社区资源列表是持续更新的。
3 并且可能还不足以在白板上讲解 Transformer。
4 关于 Stability 和 AWS 在集群上的关系,目前还有很多讨论,因此最好是听听 Emad 本人怎么说。
5 我正在尝试为它们创造一些数字化缩写。g12n?
6 目前,我们面临的主要是 Nvidia 芯片的短缺问题。正因如此,George Hotz 的 Tinycorp 在使流行的开源模型能够在 AMD 显卡上运行方面显得尤为重要。此外,Mosaic 的 LLMFoundry 同样报告了 AMD 显卡的兼容性。
7 值得庆幸的是,现在有了“Gen AI”。
8 当然,如果能够将两个学科完美结合,就能创造出像 Character.ai 这样的杰出成果。它是由 Transformer 论文的合著者创立的,有效地利用了大语言模型 (LLM) 的生成能力。