> [!NOTE] > 本文档由 WeHub 基于上游 README 翻译整理,属于社区翻译,非官方中文文档。 > [English](./README.en.md) · [原始项目](https://github.com/apache/tvm) · [上游 README](https://github.com/apache/tvm/blob/HEAD/README.md) > 原作者、版权与许可证归属以原始项目及本仓库 LICENSE 文件为准。 开放机器学习编译器框架 ============================================== [文档](https://tvm.apache.org/docs) | [贡献者](CONTRIBUTORS.md) | [社区](https://tvm.apache.org/community) | [发布说明](NEWS.md) Apache TVM 是一个开放的机器学习编译框架, 遵循以下原则: - 以 Python 为先(Python-first)的开发方式,可快速定制机器学习编译器流水线。 - 通用部署(Universal deployment),将模型交付为最小可部署模块。 许可证 ------- TVM 根据 [Apache-2.0](LICENSE) 许可证授权。 入门 --------------- 请访问 [TVM 文档](https://tvm.apache.org/docs/) 网站,获取安装说明、教程、示例等更多信息。 [TVM 入门](https://tvm.apache.org/docs/get_started/overview.html) 教程是很好的 起点。 为 TVM 做贡献 ----------------- TVM 采用 Apache 提交者(committer)模式。我们的目标是创建一个由社区维护和拥有的开源项目。 请参阅 [贡献者指南](https://tvm.apache.org/docs/contribute/). 历史与致谢 --------------------------- TVM 最初是作为深度学习编译的研究项目启动的。 该项目的第一版从以下项目中受益匪浅: - [Halide](https://github.com/halide/Halide): TVM 的 TIR 与算术化简模块的部分 源自 Halide。我们也借鉴并改编了 Halide 降级流水线的部分内容。 - [Loopy](https://github.com/inducer/loopy): 对整数集分析及其循环变换原语的使用。 - [Theano](https://github.com/Theano/Theano): 循环符号扫描算子(symbolic scan operator)的设计灵感。 此后,该项目经历了多轮重新设计。 当前设计与初始设计也截然不同,顺应了 ML 编译器社区的发展趋势。 最新版本聚焦于跨层级设计:以 TensorIR 作为张量级表示, 以 Relax 作为图级表示,并支持 Python 优先的变换。 项目当前的设计目标是,通过让大多数变换可在 Python 中定制, 并提供可联合优化计算图、张量程序和库的跨层级表示,使 ML 编译器更易用。 该项目也是为特定领域构建 Python 优先垂直编译器的基础 基础设施,例如 LLM。