当前位置: 首页 > article >正文

不到 2 个月,OpenAI 火速用 Rust 重写 AI 编程工具。尤雨溪也觉得 Rust 香!

一、OpenAI 用 Rust 重写 Codex CLI

OpenAI 已用 Rust 语言重写了其  AI 命令行编程工具 Codex CLI,理由是此举能提升性能和安全性,同时避免对 Node.js 的依赖。他们认为 Node.js “可能让部分用户感到沮丧或成为使用障碍”。

Codex 是一款实验性编程代理工具,可在 ChatGPT 的网页浏览器环境中运行,也能通过 Codex CLI 在本地运行。它具备基于聊天的用户界面,CLI 既可交互式运行,也可在非交互式的静默模式下运行。

2025 年 4 月 17 日,Codex CLI 正式在 GitHub 上开源,可通过 WSL(Windows 子系统)在 macOS、Linux 或 Windows 系统上运行。

Codex CLI 其源代码主要为 TypeScript,需基于 Node.js 运行,但团队现已用 Rust 完成重写。

维护者 Fouad Matin 表示,至少在 Rust 版本达到“体验和功能对等”之前,仍会为 TypeScript 版本合并错误修复。

二、为何选择用 Rust 重写?

前几天 Matin 在 GitHub 项目中发了一则公告。

他表示,尽管当前基于 React 和 TypeScript 的版本“易于快速启动和迭代”,但 Rust 带来的改进主要有 4 个关键原因:

其一,零依赖安装。当前工具要求 Node.js 22 及以上版本,这可能成为部分用户的使用门槛。

其二,沙盒化需求。在 macOS 系统上,Codex CLI 的命令由 Apple Seatbelt(通过 sandbox-exec 命令在可配置的沙盒环境中运行进程)封装;在 Linux 系统上,Codex CLI 默认不启用沙盒,OpenAI 建议在容器中运行。目前 OpenAI 已实现 Rust 命令的沙盒化方案:macOS 仍使用 sandbox-exec,Linux 则采用 Landlock(内核空间 API 沙盒机制)。

其三,性能优化。Rust 无运行时垃圾回收机制,内存需求更低。

其四,可复用现有 Rust 版 MCP(模型上下文协议)实现。Codex CLI 将同时具备 MCP 客户端和服务器功能。

截至 6 月 6 日发文时,Rust 在 Codex 项目中的占比 46.7%,排第一。(TS 44.7%,暂居第二)

不过,基于 Rust 的 Codex CLI 仍可通过 JS 和 Python 等其他语言的代码扩展,具体细节尚未公布。

三、尤雨溪也说 Rust 香

认为 Rust 的效率高的并非只有 OpenAI。

5 月 30 日,Vue 的创作者尤雨溪曾发文介绍推出 Rolldown-Vite。这是 Vite 本地开发服务器和构建工具的新版本。

Vite 目前底层使用名为 Rollup.js 的打包工具,而采用基于 Rust 的 Rolldown 替代后,尤雨溪表示 “生产构建时间缩短 3 到 16 倍,构建过程中的内存使用量最多减少 100 倍”。

- EOF -

推荐阅读  点击标题可跳转

1、Redis 之父亲证:人类程序员仍力压 LLM!

2、Java 之父怒斥:AI 是场骗局,无法取代程序员

3、好家伙!AI 一次调用新增 3000+行代码,代码美到窒息…

http://www.lryc.cn/news/2405020.html

相关文章:

  • 人工智能:网络安全的“智能守护者”
  • Python60日基础学习打卡Day46
  • 综述论文解读:Editing Large Language Models: Problems, Methods, and Opportunities
  • WEB3全栈开发——面试专业技能点P1Node.js / Web3.js / Ethers.js
  • Vscode下Go语言环境配置
  • Java八股文——MySQL篇
  • Oracle数据库学习笔记 - 创建、备份和恢复
  • Go语言--语法基础5--基本数据类型--输入输出(1)
  • 永磁同步电机无速度算法--自适应龙贝格观测器
  • LangChain工具集成实战:构建智能问答系统完整指南
  • 【razor】x264 在 的intra-refresh和IDR插帧
  • 分库分表的取舍
  • 随机算法一文深度全解
  • 在 Conda 环境下配置 Jupyter Notebook 环境和工作目录
  • MS39531N 是一款正弦驱动的三相无感直流电机驱动器,具有最小振动和高效率的特点
  • web3-基于贝尔曼福特算法(Bellman-Ford )与 SMT 的 Web3 DeFi 套利策略研究
  • 分析 java 的 Map<String,Map<String, List<Map<String,Integer>>>>
  • ChatterBox - 轻巧快速的语音克隆与文本转语音模型,支持情感控制 支持50系显卡 一键整合包下载
  • 前端开发面试题总结-HTML篇
  • 嵌入式学习--江协stm32day4
  • 【Matlab】连接SQL Server 全过程
  • MS8551/MS8552/MS8554 单电源、轨到轨输入输出、高精度运放,可替代AD8551/AD8552/AD8554
  • 什么是 Ansible 主机和组变量
  • F#语言的区块链
  • 9.RV1126-OPENCV 视频的膨胀和腐蚀
  • 查找 Vue 项目中未使用的依赖
  • 华为OD机考-内存冷热标记-多条件排序
  • UDP 与 TCP 调用接口的差异:面试高频问题解析与实战总结
  • AI时代:学习永不嫌晚,语言多元共存
  • 『React』Fragment的用法及简写形式