跳到主要内容

3 篇博文 含有标签「software-architecture」

查看所有标签

“LLM 即编译器” 是一个你的代码库无法承受的隐喻

· 阅读需 11 分钟
Tian Pan
Software Engineer

这个说法非常诱人:用英语描述行为,模型生成代码,然后交付。提示词(Prompts)变成了源码,产物变成了目标,而 LLM 就像是一个前端界面更友好的 gcc 坐镇其中。如果这个框架成立,那么软件工程的其余部分——评审、重构、架构——都将成为提示词质量的下游产物。但事实并非如此。那些基于这种假设构建的代码库,正以一种现在看来极其乏味的模式走向失败:在大约第六个月,没人能解释为什么某个特定函数长成那样,而且每一次增量变更都会引发一波重复代码。

编译器隐喻才是根本原因,而不是“氛围感编程”(vibe coding)、模型质量或提示词技巧。这是一个范畴错误,它悄无声息地让团队逃避了那些能保持代码库长年连贯性的工作。当你认为模型是编译器时,生成的代码就变成了实现细节,就像汇编语言是 C 程序的实现细节一样。而当你实际在带领一个由非确定性、上下文受限的协作成员组成的团队时,生成的代码才是资产——而提示词比起源码,更像是 Slack 消息。

后框架时代:用 API 客户端和 While 循环构建智能体

· 阅读需 8 分钟
Tian Pan
Software Engineer

当今生产环境中最有效的 AI 智能体看起来与框架演示完全不同。它们不是拥有十七种节点类型的有向无环图,也不是通过消息总线协调的多智能体集群。它们是一个提示词、一个工具列表和一个 while 循环——它们比框架重型的对手交付更快、故障更少、维护成本更低。

这不是为了标新立异。这是一个又一个团队在花费数周时间进行框架迁移、抽象调试和 DSL 考古之后得出的结论。这种模式如此一致,值得给它一个名字:后框架时代。

棕地 AI:如何在不重写的情况下将 LLM 功能集成到遗留代码库

· 阅读需 12 分钟
Tian Pan
Software Engineer

每个 AI 演示都从绿地起步:一个干净的代码仓库、一个全新的 API key,不到一小时就能跑通流式聊天响应。然后有人问:"我们能把这个加到真正的产品里吗?"——那个运行在十年老单体系统上、存有无数未记录存储过程的产品,那个部署流程需要三个团队外加一个变更顾问委员会的产品,那个数据模型比 JSON 还古老的产品。

大多数 AI 集成工作都死在这里。不是因为 LLM 不好用,而是因为周围的系统根本不肯配合。超过 75% 的企业 AI 项目都卡在集成边界上——无法将 AI 能力与真正持有所需数据的系统连接起来。

本能反应是计划重写。别这样做。那些真正将 LLM 功能推进生产遗留系统的团队,都是以渐进的方式完成的——通过将现有代码库视为具有已知接口的黑盒的适配器模式。以下是具体做法。