用 Copilot 将 GitHub Copilot 运行时迁移到 Rust
这件事讲了什么
GitHub 把 Copilot 的“代理运行时”(驱动 Copilot CLI、App、SDK 等产品的核心引擎,原本用 TypeScript 和 Node.js 写成)整体重写成了 80 多万行生产级 Rust 代码。原本的问题是,这个运行时被嵌进命令行工具里,其他程序要用它,就得另外启动一个 Node 进程通过进程间通信来调用,启动慢、内存占用高(每个客户端至少多出约 100MB),还容易因 Node 崩溃把整个会话带崩。这次借 Copilot App 和 Copilot CLI,让 AI 代理写了大部分代码,分 128 个 PR 增量发布到主分支,边迁移边修问题,而不是最后一次性切换。结果是性能提升了好几个数量级,原本一个团队要花一两年的事情,主要由一名开发者在几个月内完成。
可以使用的工具
文中可用工具
- GitHub Copilot CLI在终端里使用的 Copilot 代理命令行工具,也是本次重写所用的工具之一
- GitHub Copilot appCopilot 的应用程序,本次重写所用的工具之一
- GitHub Copilot SDK让其他程序接入 Copilot 代理运行时的开发包,文中称它是运行时的入口点
- Rust把原来的 TypeScript 运行时重写为 80 多万行生产级 Rust 代码
- TypeScript运行时原本使用的编程语言
- Node.js运行时原本依赖的 JavaScript 运行框架
- V8Node.js 背后的 JavaScript 执行引擎,原先带来较高内存开销
- VS Code文中提到已用 GitHub Copilot SDK 替换自研代理循环的产品之一
- Visual Studio同上,改用共享的 Copilot 代理运行时
- Copilot Code Review (CCR)GitHub 的代码审查产品,也基于同一运行时
- Copilot Studio微软的 Copilot 相关产品,也接入同一运行时
讨论 0
登录后参与讨论,阅读资讯无需注册。
还没有评论,来分享第一个看法。