查看: 2|回复: 0

继吴恩达Andrew NG上篇AI工程技能(http://t.cn/AXpi6mKu),又补充了构建和部署 AI 应用需要的技能。

[复制链接]

20

主题

0

回帖

66

积分

注册会员

积分
66
发表于 2 小时前 | 显示全部楼层 |阅读模式
继吴恩达Andrew NG上篇AI工程技能(http://t.cn/AXpi6mKu),又补充了构建和部署 AI 应用需要的技能。

我之前写过一篇关于"AI 工程技能地图"的文章,最高层级的四项技能分别是:(一)构建和部署 AI 应用,(二)软件工程基础,(三)使用编程智能体(coding agents),(四)塑造构建方向。这封信里,我会详细展开第一项。

要精通构建和部署 AI 应用,需要掌握:
- LLM 基础知识
- 用数据为模型提供依据(Grounding)
- 构建智能体系统(Agentic Systems)
- 评估驱动的开发
- 生产环境运维
- 机器学习基础
这份技能地图是通过分析大量招聘信息、结构化专家访谈和调查问卷得出的。

AI 应用和非 AI 软件的关键区别在于:前者的输出更难预测。你无法提前知道 LLM 会输出什么,也无法预知一个监督学习算法会做出什么预测。正因为这种不确定性,构建 AI 系统是一个比构建传统软件更加迭代的过程——很难提前规划好整个流程。熟练的 AI 工程师会反复地构建一小段软件、检查它、再决定下一步要尝试什么,这一系列步骤高度依赖于中间结果。能够熟练地判断下一步该做什么,才能让你基于不可靠的 AI 组件构建出可靠的软件系统。这需要掌握:

1. LLM 基础知识

理解大语言模型如何对输入进行分词(tokenize)并生成输出,能让你明白什么时候可以信赖它们、什么时候可能会出错。这也能帮你理解什么时候该用多模态模型,如何在上下文窗口里做取舍权衡,以及如何推理缓存命中、知识截止时间、推理强度(reasoning effort level)、采样参数,以及何时该用工具调用(tool calling)等特殊功能。理解这些基础知识能帮你选对模型或模型组合,并在需要时运用微调(fine-tuning)或自托管模型等专门技术。

2. 用数据为模型提供依据(Grounding models with data)

LLM 需要好的输入上下文才能产生有用的输出。基于向量搜索的 RAG 是早期为 LLM 提供相关上下文的尝试,但如今为模型"打地基"的技术集合已经大大扩展。举例来说,你需要决定什么内容该放进 prompt、什么该让 LLM 通过工具按需检索;还要判断哪种表示形式最适合你的数据和查询:是向量索引、知识图谱,还是构建在结构化数据(比如客户记录)之上的语义层。你还需要把各种文档(文本、PDF、HTML、图片)转化为 LLM 可用的输入,并设计流水线来保持数据的干净和新鲜。理解了获取数据的这套技术菜单后,你才能更好地给 LLM 提供相关上下文。

3. 构建智能体系统(Building agentic systems)

智能体系统的范围很广,从执行预定义 LLM 调用序列的工作流,到基于 agent harness 让 LLM 自主反复决定下一步该做什么的系统,都包含在内。你需要选择架构——哪些步骤该串联、哪些该并行、什么时候用代码、什么时候用 LLM——并设计带有兜底方案(fallback)的工作流或 harness。在设计智能体循环时,你还要决定模型可以调用哪些工具(包括 MCP、命令行和沙盒执行环境)、用什么记忆架构、如何在长会话中管理上下文,以及什么任务需要多智能体编排而非单智能体架构。你还需要把有潜力的原型,打磨成可靠、安全的生产级智能体;这需要理解护栏机制(guardrails)、对抗性输入,以及识别和规避关键风险(比如数据泄露)和治理问题。

智能体工作流正在快速演进,了解与你的应用领域相关的前沿技术也会让你受益,比如语音智能体、计算机操作智能体(computer-use agents),或生成式 UI。

4. 评估驱动的开发(Evaluation-driven development)

依我的经验,区分"擅长构建 AI 系统的人"和其他人的最重要特质,就是能否驱动一套严谨的评估/错误分析循环来推动开发。这能让你反复把精力集中在更可能有成效的方向上。我发现这是一项很难精通的技能,因为最佳方法因项目而异,甚至会随项目所处阶段的不同而变化。

构建好的评估体系是一项深厚的技术能力。你可能需要查看系统的运行轨迹(traces)和输出、做探索性数据分析,并结合产品和业务洞察来决定该测量什么。你还应该理解各种评估选项的菜单——什么时候用确定性(基于代码)的评估,什么时候用"LLM 当裁判"(LLM-as-a-judge),什么时候需要人工介入(human in the loop),以及如何评估你的评估方法本身,以便不断改进它们。这些评估结果会反过来推动一个迭代过程,让后续开发更加系统化,而不是随机摸索。

5. 生产环境运维(Operating in production)

运维 AI 软件和运维传统软件不同,因为它存在不可预测性、成本和延迟等问题。首先,你要懂得如何建立可观测性机制,来理解系统在真实使用场景下的表现。你需要追踪性能表现、检测漂移(drift),并对模型故障和安全事件(比如对抗性提示注入)快速做出响应。建立回归测试和 CI/CD 流程,比传统软件需要更多的统计评估手段,测试投入的力度也应当与犯错的风险相匹配。此外,了解如何选择合适的技术组合——比如模型选型优化、蒸馏(distillation)和微调、以及智能体工作流的简化——来优化成本和延迟也很重要,尤其是当你的应用要服务大量用户时。

6. 机器学习基础(Machine learning foundations)

现代 LLM 是用机器学习技术构建的,包括监督学习和强化学习。我认识的每一位擅长用 LLM 构建系统的工程师,都对机器学习和深度学习有一定深度的理解。此外,许多应用仍然需要你懂得如何使用机器学习模型——无论是别人训练好的模型,还是你自己训练的模型。这需要了解主流的机器学习和深度学习模型,以及在准确率、训练速度、推理速度等方面的权衡取舍,并懂得如何为训练和评估这些模型设计所需的数据。机器学习中"偏差/方差(bias/variance)"、错误分析、数据工程这些概念——都是应对输出不确定系统的核心思维框架——对于 AI 系统开发中的一系列决策依然至关重要。

要精通构建和部署 AI 系统,有很多东西要学。这是一个技术深度很高的领域。但你学到的每一点,都会让你在 AI 工程上做得更好,构建出更精彩的应用。与这些技能相辅相成的,是软件工程能力。我会在下一封信里详细讲讲这个话题。

#how i ai##程序员#


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注公众号

相关侵权、举报、投诉及建议等,请发 E-mail:2776601884@qq.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.|青ICP备2025004122号-1

在本版发帖
关注公众号
返回顶部