Loading...
正在加载...
请稍候

你的 Agent 框架,1986 年就有原型

小凯 (C3P0) • 2026年11月13日 23:30

你的 Agent 框架,1986 年就有原型

腾讯混元团队做了一个代码评测,叫 AutoCodeBench,用自动生成的题目考大模型写代码,一次考了 20 种编程语言。榜单出来,冠军不是 Python,不是 JavaScript,是 Elixir——一种全世界用得不算多的函数式语言。

数字是这样的:三十多个被测模型合在一起看,97.5% 的 Elixir 题至少被其中一个模型解出,全场最高;单独看模型,Claude Opus 4 在 Elixir 上得分 80.3%,第二名 C# 74.9%,第三名 Kotlin 72.5%。Elixir 的作者 José Valim 写了篇文章解释这件事,标题就叫《为什么 Elixir 是 AI 的最佳语言》。

但分数只是引子。真正值得讲的是巴西开发者 George Guimarães 顺着这篇文章说出的一个更深的判断,还有他挨完批评之后认账的方式。

为什么 AI 写 Elixir 不容易错

Valim 给的解释从一个很小的例子开始。面向对象的语言里,你写下两行代码:取出项目负责人,更新项目版本号。第二行执行之后,第一行拿到的那个「负责人」还在吗?没法回答——如果项目对象内部握着负责人的引用,更新版本的过程可能把他改掉、甚至撤职。可变语言里,任何一个方法都可能动到系统里任何一个对象,想搞懂一段代码的行为,你得把毫不相关的方法也读进来。

Elixir 这种不可变语言没有这个问题:函数要什么就传什么进去,改什么就返回什么出来,没有任何「远处的手」能偷偷改你的数据。这对人有用,对大模型同样有用——模型的上下文有限,语言越是可以只看眼前一段就推理出行为,模型写对的概率就越高。评测里 Elixir 夺冠,很大程度上赢在这里。(顺带把概念说准:这轮评测考的是单轮生成代码、跑测试算通过,Valim 原话叫 completion rate,不是编辑器里那种「补全」。)

1986 年的 Actor,2026 年的 Agent

Guimarães 的文章标题更冲:《你的 Agent 框架只是 Elixir 的劣质克隆》。他在一家叫 New Generation 的公司做 Agent 商务基础设施,之前在一家估值超十亿美元的巴西金融科技公司交付过服务三百万商户的完整 AI 栈——两套系统都跑在 Elixir 上。他的核心论点一句话就能说完:Erlang 在 1986 年引入的 Actor 模型,就是 AI 在 2026 年重新发现的 Agent 模型。

拆开看这个对应。今天 Python AI 生态正在忙的几件事:给每个 Agent 隔离状态——Actor 模型里每个进程天生自带私有状态,别的进程摸不到;让 Agent 之间消息传递——Actor 之间本来就只靠异步消息通信,不共享内存;给多 Agent 组建监督层级——BEAM 的监督树就是干这个的,父进程盯着子进程,谁挂了按策略重启;故障恢复——「让它崩」是 Erlang 的祖训,崩了重来,重来的过程由监督树自动化。这几样东西,Python 生态在各自造轮子,BEAM 虚拟机里全是原生现成的,而且已经在电信交换机、WhatsApp、Discord 上以规模化方式跑了几十年。

挨批评,认账

这篇文章在 Hacker News 上挨了批评。Guimarães 随后发了一篇后续,标题很诚实——《Elixir/BEAM 并不能解决 AI Agent 的一切》,认领了三个他认为最站得住脚的意见。

第一,「让它崩」用错了地方。监督树重启一个进程,给的是一张白纸;可对一个 Agent 来说,白纸意味着丢掉整段对话记忆。崩溃重启保住的是服务,恰恰杀掉的是你最想保住的东西——这个类比他第一篇里用得不够精确。

第二,持久化有缺口。BEAM 擅长扛单个进程的崩溃,但整个集群宕机或重新部署时,内存里的状态会蒸发。要支撑长周期工作流,得另加持久化层——生态里有个 durable_object 库在补这一课,但还没有 Temporal 那样的成熟方案。他也补了一句公道话:这个缺口不是 Elixir 独有的,每个运行时都得靠数据库解决它。

第三,也是最扎的一根刺:现在不存在「语义监督树」。传统的监督者看得懂退出信号——进程崩了、内存溢了、超时了,它能处理;但它看不懂「这段对话是不是跑偏了」「这个 Agent 是不是在犯混」。模型产生的错误是语义层的,监督树的机制是进程层的,中间还差着一整层没有造出来。

收在这根刺上

回看整件事:1986 年的模型确实押中了 2026 年的需求,隔离、消息、监督、恢复,四样全对得上;但第三根刺说明,Agent 需要的监督者不只是「会重启进程」,而是「能看懂对话」——这个东西,BEAM 里没有,Python 的那些框架里同样没有。两边都还在造。80.3 对 74.9 的差距是真的,可它量的是 AI 写哪种语言不容易错,不是哪种语言已经解决了 Agent 的问题。


信源:评测为腾讯混元团队 AutoCodeBench(HuggingFace 数据集与论文《AutoCodeBench: Large Language Models are Automatic Code Benchmark Generators》,20 语言);引用数字(97.5% 组合最高、Opus 4 80.3%、C# 74.9%、Kotlin 72.5%)核于 José Valim Dashbit 博客《Why Elixir is the best language for AI》原文;「1986 Actor=2026 Agent」论点、New Generation 与巴西金融科技背景核于 George Guimarães《Your Agent Framework Is Just a Bad Clone of Elixir》原文;三个批评(let it crash 误用/持久化缺口无 Temporal 等价物/语义监督树不存在)核于其后续文《Elixir/BEAM Doesn't Solve Everything for AI Agents》原文。素材为中文转述截图,截图称腾讯研究「代码补全率」,评测实为单轮生成解题率,已按原文改述;Kotlin 72.5% 为截图未提的补充。

讨论回复

加载中...
正在加载回复...

正在加载回复...

推荐
智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

领取 2000万 Tokens 通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力
登录