编程 从 Prompt Engineering 到 AI Engineering:构建可靠 AI 功能的工程范式

2026-09-06 06:18:23

从 Prompt Engineering 到 AI Engineering:构建可靠 AI 功能的工程范式

一位开发者在 Dev.to 上发表文章,探讨了 AI 应用开发正在经历的范式转变:从单纯的 Prompt Engineering(提示词工程)转向 AI Engineering(AI 工程)。文章指出,几年前构建一个 AI 功能看起来很简单——写一个提示词,发给模型,看看回复,改进提示词,重复。但当 AI 功能进入生产环境,一系列工程问题浮现出来,这些问题不是提示词能解决的。

背景:提示词工程的局限

提示词工程能做什么

提示词工程在以下场景中仍然有效:

  • 简单任务:文本摘要、翻译、分类等简单任务
  • 低风险场景:后果不严重、有人工审核的场景
  • 人类负责最终结果:AI 生成内容后由人类确认和修改
  • 原型验证:快速验证一个想法是否可行

在这些场景中,写好提示词、迭代优化,确实可以得到足够好的结果。

生产环境的工程问题

但当 AI 功能进入生产环境,问题变得复杂:

  • 上下文管理:模型应该接收什么上下文?哪些数据可以访问?
  • 工具使用:模型可以使用哪些工具?选错工具怎么办?
  • 变更验证:如何知道模型或提示词的变更没有让系统变差?
  • 故障调试:如何调试只发生过一次的失败?
  • 输出验证:模型生成了格式正确的 JSON,但包含了错误的业务决策,怎么办?
  • 自主权边界:对于一个行为是概率性的系统,应该给它多大的自主权?

这些都不是提示词工程问题,而是工程问题。

什么是 AI Engineering

定义

AI Engineering 不是一个全新的学科,而是多个已有领域的组合:

  • 软件工程:系统设计、代码质量、测试、部署
  • MLOps / LLMOps:模型管理、数据管道、实验跟踪
  • 分布式系统:并发、容错、可扩展性
  • 安全:访问控制、数据隐私、注入防护
  • 测试:单元测试、集成测试、评估框架
  • 平台工程:开发者体验、自助服务、黄金路径

变化的是组合方式:模型已经成为一种新的软件组件——一个能够解释自然语言、进行推理、调用工具,但行为是概率性的组件。

与传统软件工程的区别

维度传统软件工程AI Engineering
行为确定性确定性,相同输入产生相同输出概率性,相同输入可能产生不同输出
测试方式断言输出等于期望值评估输出的质量分布、边界情况
调试方式断点、日志、堆栈跟踪追踪、评估、回放、提示词版本
变更管理代码审查、CI/CD模型版本、提示词版本、评估集
错误处理异常捕获、重试、降级输出验证、人工审核、回退策略
性能指标延迟、吞吐量、错误率准确率、相关性、一致性、幻觉率

AI Engineering 的核心实践

1. 上下文工程(Context Engineering)

上下文比提示词更重要。模型的输出质量很大程度上取决于它接收到的上下文:

  • 上下文选择:哪些信息应该放入上下文?哪些应该排除?
  • 上下文排序:信息的排列顺序影响模型的注意力("中间迷失"问题)
  • 上下文压缩:长上下文需要摘要、检索、分层管理
  • 上下文更新:对话过程中如何动态更新上下文?
  • 上下文安全:防止提示词注入、数据泄露
传统方式:提示词 + 用户输入 → 模型

AI Engineering:系统提示词 + 检索到的相关文档 + 对话历史摘要 +
工具结果 + 用户输入 + 输出格式约束 → 模型 → 输出验证 → 后处理

2. 评估框架(Evaluation)

没有评估就没有工程。AI 系统需要多层评估:

  • 单元评估:单个提示词、单个工具调用的输出质量
  • 集成评估:多步骤流程的端到端质量
  • 回归评估:变更前后的对比,确保没有退化
  • 在线评估:生产环境中的 A/B 测试、用户反馈
  • 对抗评估:边界情况、恶意输入、失败模式

评估集的构建是关键:需要覆盖典型场景、边界情况、已知失败模式,并且持续更新。

3. 可观测性(Observability)

AI 系统的可观测性比传统系统更复杂:

  • 追踪(Tracing):记录每次模型调用的输入、输出、延迟、token 用量
  • 评估(Evaluation):自动评估每次输出的质量
  • 回放(Replay):能够回放历史调用,复现问题
  • 提示词版本管理:记录使用的提示词版本,支持回滚
  • 模型版本管理:记录使用的模型版本,跟踪模型变更的影响

4. 输出验证(Output Validation)

模型的输出不能直接信任,需要验证:

  • 格式验证:JSON 结构、字段类型、枚举值
  • 业务规则验证:输出是否符合业务逻辑和约束?
  • 安全验证:是否包含注入攻击、敏感信息泄露?
  • 质量评估:输出的相关性、准确性、一致性如何?
  • 人工审核:高风险操作需要人工确认

5. 容错与降级(Resilience)

AI 系统需要设计容错机制:

  • 重试策略:模型调用失败时的重试(指数退避、抖动)
  • 回退模型:主模型失败时切换到备用模型
  • 回退逻辑:AI 路径失败时回退到传统规则逻辑
  • 超时控制:防止模型调用阻塞整个系统
  • 限流保护:防止模型 API 被过度调用

6. 安全与治理(Security & Governance)

  • 访问控制:模型可以访问哪些数据和工具?
  • 数据隐私:用户数据是否被发送到第三方模型?
  • 提示词注入防护:防止用户输入操纵系统行为
  • 内容安全:防止生成有害、违规内容
  • 审计日志:记录所有模型调用,支持审计和合规

架构模式

1. RAG(检索增强生成)

RAG 是 AI Engineering 中最常见的架构模式:

  • 检索层:从向量数据库、搜索引擎、知识库中检索相关信息
  • 排序层:对检索结果进行相关性排序和去重
  • 上下文构建:将检索到的信息组织成模型可用的上下文
  • 生成层:模型基于上下文生成回答
  • 验证层:验证回答是否基于检索到的信息(防止幻觉)

2. Agent 架构

更复杂的 AI 系统采用 Agent 架构:

  • 规划器(Planner):将任务分解为子任务,制定执行计划
  • 工具集(Tools):模型可以调用的外部工具(搜索、计算、API 调用)
  • 执行器(Executor):执行计划中的每个步骤,调用工具
  • 记忆(Memory):短期记忆(对话历史)和长期记忆(知识库)
  • 反思(Reflection):评估执行结果,调整计划

3. 流水线架构

对于结构化的 AI 工作流,流水线架构更可靠:

  • 固定步骤:流程是预定义的,每一步有明确的输入输出
  • 每步验证:每一步的输出都经过验证,错误不会传播
  • 人工检查点:关键步骤设置人工审核
  • 可回滚:任何一步失败都可以回滚到之前的状态

团队与组织

角色变化

AI Engineering 需要新的角色和技能组合:

  • AI 工程师:兼具软件工程和 AI/ML 知识,负责 AI 系统的设计和实现
  • 提示词工程师:专注于提示词设计和优化,但需要理解工程约束
  • 评估工程师:负责构建评估框架、评估集、质量指标
  • AI 产品经理:理解 AI 能力和局限,定义产品需求和成功标准
  • AI 安全工程师:负责 AI 系统的安全、隐私、合规

协作模式

  • 跨职能团队:软件工程师、AI 工程师、产品经理、领域专家紧密协作
  • 评估驱动开发:先定义评估标准和评估集,再开发功能
  • 持续评估:每次变更都运行评估集,确保质量不退化
  • 知识共享:提示词、评估集、最佳实践在团队内共享和复用

实践建议

对于刚开始的团队

  1. 从简单开始:先用提示词工程验证想法,再逐步引入工程实践
  2. 建立评估集:尽早建立评估集,即使很小,也要有
  3. 添加追踪:记录每次模型调用的输入输出,便于调试
  4. 输出验证:至少验证输出格式,防止格式错误导致系统崩溃
  5. 人工审核:高风险操作保留人工审核

对于已经有 AI 功能的团队

  1. 建立评估框架:系统化的评估流程,覆盖单元、集成、回归
  2. 完善可观测性:追踪、评估、回放、版本管理
  3. 引入容错机制:重试、回退、降级、超时、限流
  4. 安全审计:定期进行安全审计,检查注入防护、数据隐私
  5. 成本优化:监控 token 用量,优化上下文大小,选择合适的模型

常见陷阱

  • 过度依赖提示词:试图用提示词解决所有问题,忽视工程实践
  • 缺乏评估:没有评估集,无法判断变更的影响
  • 直接信任输出:不验证模型输出,直接用于生产
  • 忽视可观测性:出了问题无法复现和调试
  • 给模型过多自主权:在高风险场景中让模型自主决策,没有人工审核
  • 忽视成本:不监控 token 用量,导致成本失控

未来展望

AI Engineering 正在快速发展,未来的方向包括:

  1. 更成熟的工具链:专门的 AI 开发框架、评估平台、可观测性工具
  2. 标准化实践:行业标准和最佳实践的形成
  3. 自动化评估:AI 辅助的评估集构建和质量评估
  4. 自治系统:更高级的 Agent 能够自主完成复杂任务,但需要更严格的安全和治理
  5. AI 原生开发:从一开始就以 AI 为核心设计系统,而不是在传统系统上添加 AI 功能

总结

从 Prompt Engineering 到 AI Engineering 的转变,反映了 AI 应用从原型到生产的成熟过程。

核心要点:

  1. 提示词工程的局限:在简单、低风险、有人工审核的场景中有效,但生产环境需要更多
  2. AI Engineering 的定义:软件工程、MLOps、分布式系统、安全、测试、平台工程的组合
  3. 核心实践:上下文工程、评估框架、可观测性、输出验证、容错与降级、安全与治理
  4. 架构模式:RAG、Agent 架构、流水线架构
  5. 团队与组织:新角色(AI 工程师、评估工程师)、跨职能协作、评估驱动开发
  6. 实践建议:从简单开始、建立评估集、添加追踪、输出验证、人工审核
  7. 常见陷阱:过度依赖提示词、缺乏评估、直接信任输出、忽视可观测性

对于正在构建 AI 功能的团队来说,理解这个转变至关重要。写好提示词只是开始,构建可靠、可维护、可观测的 AI 系统才是真正的挑战。AI Engineering 不是要取代提示词工程,而是在其基础上构建完整的工程体系,让 AI 功能能够在生产环境中稳定、安全、高效地运行。

正如文章所暗示的,模型已经成为一种新的软件组件。就像我们不会在没有测试、没有监控、没有错误处理的情况下部署传统软件一样,我们也不应该在没有工程保障的情况下部署 AI 功能。

原文链接:https://dev.to/ikilic/from-prompt-engineering-to-ai-engineering-3onh

推荐文章

程序员茄子在线接单