顶尖科技公司诸如OpenAI、微软以及谷歌等有可能会独占稀缺的机器学习研究人才和高性能计算设备(如GPU)等资源,并通过开源和开放API的方式释放出“基础模型”的能力。市场对于人工智能技术的需求孕育了AI工程师这一新兴职业。相较于机器学习工程师,AI工程师无需深入理解机器学习技术,也无需进行模型训练。其主要任务是掌握各种“基础模型”的应用方法,以及如何充分发挥这些能力来构建用户所需的产品。虽然LLMs(基于深度学习的自然语言处理模型)能够生成代码,但是手工编写代码依然有其独特的价值。目前,智能应用主要可分为两种架构模式:
- 其一,以LLM作为核心,代码作为外层,如自动机器翻译(AutoGPT),俗称"Software atop intelligence";
- 其二,代码作为核心,LLM作为外层,如自动驾驶系统(Copilot),也称“Intelligent Software"。
随着人类对人工智能的进一步深入运用,人工智能在工程领域中的参与度将逐渐提高,两者最终将互相融合,难以分辨彼此。
我们正见证的是一次由基础模型的新兴能力和开源/API推动的AI技术从研究到应用的巨大变革。
在 2013 需要 5 年和一个研究团队才能完成的各种 AI 任务,现在只需要API 文档和一个空闲的下午。
![](https://www.agisurge.com/wp-content/uploads/2023/03/a81555af-0b76-4a61-9b53-595e3d47580a_1005x317.1636b22d.png)
上图中的API 线是可渗透的,AI 工程师可以向左做模型调整/托管,研究工程师也可以向右在 API 之上构建应用,但他们的相对优势和侧重方向是明确的。
然而,细节是魔鬼,评估、应用和产品化人工智能会面临无尽的挑战:
模型:从评估最大的GPT-4和Claude模型,到最小的开源Huggingface,LLaMA和其他模型。
工具:从最流行的链、检索和向量搜索工具,如LangChain、LlamaIndex和Pinecone,到新兴的自主Agent领域,如Auto-GPT和BabyAGI。
新闻:除此之外,每天发表的论文、模型和技术的数量呈指数增长,而且随着兴趣和资金的增加,这种增长趋势更加明显。因此,要跟上这一切几乎需要全职工作。
严肃的讲,我认为这就是一份全职工作。软件工程即将产生一新兴的次级学科,专门致力于研究人工智能应用及如何高效地运用新兴技术架构,犹如“站点可靠性工程师”、“DevOps工程师”、“数据工程师”和“分析工程师”等角色。
这个新兴的次级学科的专业人士似乎便是AI工程师。
据我所知,每家创新型企业皆设有类似#discuss-ai的Slack频道。这些频道由非正式小组逐渐转变为正规团队,例如Amplitude, Replit 和 Concept等企业。成千上万的软件工程师在致力于开发AI APIs以及开源软件模型,不论在正常工作时间亦或是夜间及周末,在企业Slack或独立Discords中进行,此等工作将逐渐专业化并融入AI工程师的职责之内。这无疑是未来十年内需求最为强劲的工程岗位。
AI工程师无处不在,从微软和谷歌等大型科技企业,至Vercel(如Hassan El Mghari的病毒式RoomGPT)和Notion(如Ivan Zhao和 Simon Last的Notion AI)等引领行业的初创企业,再到[Simon Willison](Simon Willison)、Pieter Levels(Photo AI / Interior AI)以及Riley Goodside(当前任职于Scale AI)等独立开发者。他们在Anthropic进行 Pompt工程便可获得年薪30万美元,在OpenAI研发软件则可赚取高达90万美元。他们在AGI House度过轻松愉快的周末时光,探讨各类创新理念并在此之后在Reddit的 /r/LocalLLaMA 平台上进行分享。他们的共同点在于将人工智能技术的进步转化为在短时间内被数以百万计的使用者广泛使用的实际产品。
在实现人工智能产品交付的过程中,所需的并非研究人员,而是工程师。
AI工程师将反超机器学习工程师
在Indeed上,机器学习工程师职位的数量是人工智能工程师职位的10倍,但“人工智能”的增长率更高,我预测这个比例将在5年内反转。
![](https://www.agisurge.com/wp-content/uploads/2023/03/28975621-0539-4b0b-9b3c-186d240513e2_600x400.933a2722-1024x683.png)
我们都知道AI和ML工程概念上似乎存在争议,也很清楚普通的“软件工程师”角色完全能够构建AI软件。然而,最近的一个Ask HN问题“如何进入AI工程”说明了市场上存在的一种基本看法:
![](https://www.agisurge.com/wp-content/uploads/2023/03/fdceef7d-fac9-4660-8bf4-fb5944ff17ab_806x992.b1cfb3a9.png)
大部分人依然认为AI工程仅仅是机器学习或者数据工程的一种表达方式,因此他们建议采用同样的先决条件。然而,我能够确保所提的“高效AI工程师”群体里面,没有一个人曾从事过吴恩达Coursera课程中所对应的相关工作,也并不了解PyTorch,甚至对数据湖与数据仓库之间的差异也一无所知。
展望未来,我们无法想象会有人建议以阅读《Attention is All You Need》来启动AI工程,如同你不会通过研究福特T型车的构造图来开始驾驶汽车一样。当然,了解基本概念和历史背景总是有其价值所在,并且的确能助你发掘新颖的思维方式并提升效率或能力。然而,有时候挑选出优质的产品并通过实践经验来了解其特性不失为一个良策。
对于这样的改变,我并不期待能在短时间内实现。人类天生就喜欢打造精彩的简历,完善行业图景,并通过引用深奥的话题以及依赖具有权威性的方式来树立自身的形象。换言之,在未来相当长的一段时间里,对于具备良好的数据科学/机器学习背景的工程师而言,他们将会倾向于选择Prompt工程和AI工程,因为上述两类工种相对来说更具挑战性和深度。然而,我相信市场供求关系终将发挥主导作用。
为什么 AI 工程师正在崛起?
基础模型定位为“少量示例学习者”,其展现出的语境学习及乃至零样本迁移(Zero Shot Transfer)的能力超越了模型设计者的预期。换言之,模型的构建者并未完全明确它们可实现哪些功能。然而,非LLM研究人员可通过投入更多的时间研究模型,发掘并运用其潜在能力,并将其应用于先前被研究低估的领域(如专注于文本处理领域的Jasper等)。
微软、谷歌、Meta以及大型基础模型实验室已在有限的科研人才资源中取得了主导地位,他们提供了“人工智能研发即服务”的API接口。尽管无法直接雇佣他们,但若在应用端有工程师了解如何有效利用这些API,便可租用他们。全球大约存在着五千名LLM研究人员,但却拥有约五千万名软件工程师。此种供需关系决定了将出现一批“介于两者之间”的AI工程师来满足市场需求。
GPU资源的积累。诚然,OpenAI和微软处于领先地位,但Stability AI通过强调其4000台GPU集群,已然开始了初创公司间对GPU资源的激烈竞争。自此以后,诸如Inflection(130万美元)、Mistral(1.13亿美元)、Reka(5800万美元)、Poolside(2600万美元)以及Concontext(2000万美元)等初创公司为了获得硬件自主权而筹集巨额种子轮融资已然成为常态。另外,Dan Gross和Nat Friedman甚至宣布了Andromeda计划,这是一个价值高达一亿美元,设计用于支持他们所投资的初创公司的超大规模GPU集群。全球芯片缺口的连锁反应使得GPU供给趋紧,进一步加剧了这一形势。因此,API生产线的另一端更具能力的AI工程师不仅将能更便捷地运用模型,而且无需过多干预模型的训练过程。
行动,准备,校准。如今,产品经理和软件工程师已无需耗费大量时间和精力进行繁琐的数据收集和整理,以便训练出特定领域的模型。在使用特定数据进行微调之前,他们可通过Prompt与LLM进行交互,进而构建并验证产品的创意。
![](https://www.agisurge.com/wp-content/uploads/2023/03/6035ddd2-418d-421d-aebd-6893c32bb6dd_1579x266.92c01abc-1024x172.png)
假设后者相较前者增加了100至1000倍,采用Prompt工程构建原型的“先行动,后策划,最后精准狙击”的工作流程能使运行速度快于传统的机器学习10至100倍。因此,AI工程师将能以低廉的价格验证AI产品1,000至10,000倍。若以瀑布式开发与敏捷开发进行对比,AI工程更接近于敏捷开发。
从Python到JavaScript。在数据及人工智能领域,Python乃对此最为主流的开发语言,例如LangChain、LlamaIndex以及Guardrails这一批AI工程工具源自Python社群。然而,JavaScript开发人员的人数并不亚于Python开发人员,因此许多其他工具也正在致力于满足对于该广阔受众的需求,从LangChain.js和Transformers到Vercel的全新AI SDK.js。对于AI工程师来说,这代表着更大的市场规模与更多的机遇。
生成性AI与分类器机器学习。“生成性AI”这一术语的热度逐渐消退,取而代之的是其他新颖概念,如“推理引擎”。尽管如此,它在简洁明了地表达现有MLOps工具以及ML从业人员与擅长使用LLMs及文生图生成器的崭新者之间的显著差异上仍具实用性。
当前的机器学习或主要聚焦于欺诈风险检测、推荐系统、异常检测及特征存储,AI工程师正在开发的则为写作应用程序、个性化学习工具、自然语言电子表格和类似Factorio的可视化编程语言。
每当一个由完全不同背景、使用不同语言、生产不同产品并使用各异工具的子群体出现时,他们最终将分化并形成一个独立的社群。
1+2=3:代码在从软件2.0到软件3.0的演变中的作用
六年前,Andrej Karpathy发表了一篇极具影响力的论文,详细阐述了软件2.0,将人工编码的精准逻辑所代表的“古典范例”和机器学习神经网络的近似的逻辑所象征的新型开发模式进行了对比。这一新的开发模式使得软件得以解决人类甚至无法进行建模的问题。今年,他进一步指出,广受欢迎的新编程语言是英语,最终填补了他在原作中未曾标明的灰度范畴。
![](https://www.agisurge.com/wp-content/uploads/2023/03/094e6082-1e2d-46de-ba73-f555341bcd34_895x519.75b2d0ce.png)
去年,Prompt Engineering成为了热门议题。有人轻蔑地嘲讽AI初创企业实则为“OpenAI的翻版”,而且担心语言模型应用易遭受提示注入及反向提示工程(prompt injection and reverse prompt engineering)的干扰。这些因素不禁让人产生疑惑:此类企业是否能能建立自己的护城河?
然而,2023年最突出的主题之一便是重新定义人工编写的代码在编程组合与替代L Language Model (LLM)功能方面的地位,无论是价值2亿美元的大型项目Langchain到Nvidia支持的Voyager,无不印证了代码生成与复用的至高价值。
![](https://www.agisurge.com/wp-content/uploads/2023/03/55d13fad-b282-4d9c-9258-d63a507ee002_2736x1494.6ee607b8-1024x559.png)
架构鸿沟:“智能之上的软件”与“智能软件”
的确,Prompt Engineering的价值被过分夸大了,但它还会继续存在。 软件1.0范式在软件3.0应用中的复兴是一个充满大量机会和混乱的领域,为众多新兴企业提供了广阔的舞台。
当然,我们并不认为所有代码都必须由人类编写。我最近深入研究的smol-developer、gpt-engineer以及其他代码生成Agent,例如Codium AI、Codegen.ai和Morph/Rift,将会逐步成为人工智能工程师工具包的重要组成部分。随着人类工程师熟练掌握对AI的运用,AI亦将日益广泛地渗透至工程领域,直至遥远的未来,二者利益高度融合,难以区分。