平时摸鱼我总喜欢刷微软的技术博客,前几天刷到一条新闻直接看乐了:GitHub团队居然拿Copilot Agent,把Copilot自己的运行时,从TypeScript迁移到Rust。
先划个重点,不是大模型换成Rust,大模型的语言仍然是python,只是负责会话调度、工具调用、文件读写的Agent运行时底座,模型推理依旧跑云端。原来43万行TS代码,AI生成出80万行Rust生产代码,整个项目14.5周,人工只投入了一个工程师大约3周的审核时间,光AI Token就烧掉12万美元,一共提交128个PR,增量分批上线,没有一刀切大换血。
性能提升相当炸裂。旧版Node.js版本每秒只能处理7.55次会话,Rust版本直接冲到120次,速度提升接近16倍;内存更是从1383MB砍到126MB,内存占用下降90%。
我特别注意到AI几乎已每天1个pr的稳定速度完成开发,3个月总的完成才花了128个pr,如果换成一个团队的话,这样的开发量至少要往半年以上来计算了
但别被AI重写代码的神话忽悠住。就算Rust代码全部编译通过,上线之后依然冒出几十个业务逻辑回归bug。编译器只能保证语法没问题,业务的时序、隐性异常,AI很难完整理解,人工测试审核一步都省不掉。
聊完热闹,看看官方权衡思考,这才是最值得琢磨的部分。
选择Rust的优势很明确:第一,可以进程内直接嵌入运行时,不用额外拉起Node子进程,减少进程通信开销;第二,内存占用低,服务器单机可以扛更多并发,直接降低云服务成本;第三,内存安全,对多工具、多会话的Agent场景更友好,还能对外提供稳定C ABI,方便多语言SDK调用。
据说这次的AI开发,微软花费了12万美元的token来完成,换成人民币也接近100万了。说实话这么高的成本,可能也只有微软这些大厂玩得起。但是对于微软来说因为使用了rust反而节约了更多的服务器成本和人力成本,带来的收益仍然是很可观的。
但微软并没有鼓吹大家把所有TS项目全部重写成Rust。官方明确表态:TypeScript开发迭代速度快,业务快速扩张阶段它依然是绝佳选择。只有当组件要大规模嵌入多产品、高并发部署,内存和启动延迟成为瓶颈的时候,Rust重构才划算。重写不是银弹,要权衡迁移成本、人力、业务收益,不能看见Rust性能好就盲目跟风重构老项目。
这件事也抛出一个现实问题:以后大型项目语言迁移,AI到底是主力还是辅助的问题已经不言而喻。