Skip to main content
Ctrl+K
👋欢迎进入编程视界!👋
TVM 开发指南 - Home
  • 知乎
  • 简书
  • B站
  • 博客园
  • 领英
  • TVM 准备
  • TVM 入门参考
    • TVM 环境配置
      • TVM 基础环境配置指南
      • PyTorch 环境配置指南
      • TensorFlow 环境配置指南
      • ONNX 环境配置指南
      • Caffe 环境配置指南
      • Docker 环境配置
    • TVM 样例
    • IRModule
    • 端到端模型优化样例
    • 自定义优化
    • 优化大语言模型
    • 交叉编译与RPC
    • TensorIR
      • TensorIR 构建
      • 元张量函数变换
    • Relax
      • Relax 构建
      • 变换
  • Apache TVM 文档
    • 概述
    • 安装 TVM
      • 从源代码安装
      • Docker Images
    • 开发指南
      • Python Target 参数化
      • 设置 RPC 系统
      • 处理 TVM 错误
    • 设计和架构
      • TVM运行时系统
      • 模型序列化简介
      • Device/Target 交互
      • Pass 基础设施
      • Device/Target 交互
    • TensorIR
      • 张量程序抽象
      • 理解 TensorIR 抽象
    • Relax
      • ML 模型的计算图抽象
      • 理解 Relax 抽象
    • Python API
      • tvm.error
      • tvm.ir
      • tvm.instrument
      • tvm.transform
      • tvm.target
      • tvm.driver
      • tvm.runtime
      • tvm.runtime.vm
      • tvm.runtime.disco
      • tvm.runtime.profiling
      • tvm.relax
      • tvm.relax.analysis
      • tvm.relax.block_builder
      • tvm.relax.frontend
      • tvm.relax.op
      • tvm.relax.transform
      • tvm.tir
      • tvm.tir.analysis
      • tvm.tir.schedule
      • tvm.tir.stmt_functor
      • tvm.tir.transform
      • tvm.te
      • tvm.topi
      • tvm.meta_schedule
      • tvm.dlight
      • tvm.rpc
      • tvm.contrib
    • Other APIs
    • Contributor Guide
      • TVM Community Guidelines
      • Submit a Pull Request
      • Code Reviews
      • Committer Guide
      • Documentation
      • Code Guide and Tips
      • Git Usage Tips
      • Using TVM's CI
      • Release Process
      • Error Handling Guide
    • 出版物
    • 安全指南
    • Index
  • 旧版文档
    • 教程
      • 张量表达式
        • 张量计算
        • 张量
        • tvm.te.tag.tag_scope()
      • 现代化 FFI 系统
        • FFI 简介
        • FFI 容器
        • FFI 设备
        • FFI 数据类型
        • FFI 错误处理
        • FFI 函数
        • FFI 张量
        • FFI 字符串
        • FFI DLPack 接口
      • VirtualMachine
        • tvm.compile()
        • 测试 profiler
        • VM execbuilder 和估值
        • 测试回调函数
      • 注册机制
        • BYODT 框架
      • TVM 算子
        • LayerNorm
          • LayerNorm 前端支持
          • 量化 LayerNorm
        • CrossEntropy
      • 三方库
        • ccache
      • 代码生成
        • VM 代码生成
        • TIR VM 代码生成
        • extern
        • C host
      • target
        • VirtualDevice
      • TVM 运行时
        • module 导出
        • module load
        • TVM 运行时(C++)
          • TVM Runtime api
          • Object
      • Relax 数据流模式语言
        • DPL 模式匹配
        • DPL 模式重写
        • DPL 模式上下文
        • 测试无琐碎绑定的重写
        • 测试相同形状模式
        • 迭代重写
        • 测试匹配结构信息
        • 回溯
      • TVM 变换
        • 变换概述
        • AnnotateTIROpPattern
        • TVM FuseOps 变换
        • FoldConstant
        • FoldBatchnormToConv2D
        • 融合算子
          • 融合 Conv2dReLU
          • BranchTupleOutput
          • 循环依赖
          • 复合路径
          • 匹配子图
        • 融合 Transpose 和 Matmul
        • 合并复合函数
        • AttachExternModules
        • RunCodegen
      • Instrument
        • 测试 PrintAfterAll 和 PrintBeforeAll
        • PassTimingInstrument
        • pass_instrument()
        • VM instrument
      • 量化
        • 量化精度调试
      • 自动量化
        • 仿真量化测试
        • Conv2D 测试
        • mul 重写
      • MSC
        • MSC 量化器
      • 训练
        • 损失函数
        • AppendLoss
        • optimizer
        • 测试优化器
        • SetupTrainer
        • 数值训练器
        • 使用 Relax 训练 API 训练模型
      • 深度学习
        • 深度学习简介(待更新)
      • 计算机视觉
        • 线性回归
    • 模型压缩
      • 深度神经网络模型压缩综述
      • 量化
        • 深度神经网络模型量化方法综述
    • AI 系统
      • 计算之比特位宽
      • LLVM
        • LLVM IR 基本概念
    • 专题
      • TensorRT-LLM
        • TensorRT-LLM 简介
        • TensorRT-LLM 快速入门指南
      • Cookbook
      • TVM 长廊
        • Daobook xgrammar
        • Daobook mlc-llm
          • mlc-llm 简介
          • 使用 TVM nn.module 工作流在 MLC-LLM 中添加新模型架构
      • MLC
        • mlc-python
        • mlc.cc.jit_load()
      • 工具
      • FAQs
        • Docker FAQs
        • VSCode
          • VSCode Remote 开发 FAQ
        • GitHub FAQs
        • conda 配置
      • 外部资源
        • 垃圾站
    • 前端
      • ONNX
        • ONNX 概述
        • ONNX 格式转换
        • ONNX Script
          • ONNX Script 简介
          • ONNX Script 教程
          • ONNX Script GELU
          • ONNX Script chunk
          • 扩展 ONNX 注册表
          • ONNX Script 生成 FunctionProto
          • 生成 ModelProto
          • ONNX 序列化
          • 生成 LibProto
          • ONNX Script 急切模式评估
          • ONNX ModelProto 属性
          • ONNX Script 模型本地函数
        • ONNX Script 模式匹配
          • 基于模式的使用规则进行重写
          • ONNX Script 模式重写进阶
        • ONNX Script 模型优化
          • ONNX Script optimizer
        • ONNX IR
          • 开始使用 ONNX IR
          • 在 ONNX IR 中的张量表示
        • ONNX 工具
          • ONNX 模型文件转换为 Python脚本
          • 优化 ONNX 模型的实用工具
      • Relax
        • FNormalize
        • 规范化处理
        • 布局变换
        • 优化布局变换
        • RemoveWeightLayoutRewriteBlock
        • Relax Python 模块设计
          • Relax Python 模块设计概述
          • BasePyModule
          • PyTorch 和 TVM 之间的 DLPack 集成
          • PyTorch 与 TVM Relax 的集成
          • TVMScript @I.pyfunc 装饰器
          • 直方图
          • 测试
        • 构建块
          • Relax 构建块核心
        • 算子注册
          • 注册算子属性
          • 注册算子
        • tvm.relax.testing
          • tvm.relax.testing.nn
        • tvm.relax.frontend.nn
          • 张量
          • 基础算子
          • 算子
          • packing
          • subroutines
          • debug
          • exporter
          • Mutator
          • jit
        • Relax ONNX 前端
          • 上手 Relax ONNX 前端
            • ONNX 实用工具
            • 测试 ONNX Relax
          • ONNX Relax 测试
        • PyTorch ONNX Relax
          • PyTorch resnet18 Relax
        • Caffe Relax 前端 (TODO)
          • 最小化 caffe protobuf 库
          • Caffe 解析
            • Caffe 输入层
            • 统一 Caffe 网络结构
          • Caffe Input 层
          • Caffe Concat
          • caffe BatchNorm
        • Relax 量化/反量化算子模块
        • 测试自定义算子合法化变换功能
        • 合法化 qdq
        • 量化神经网络
        • 测试 LambdaLift
        • Relax VM 中带有内存作用域(scope)的朴素内存分配器
    • 插件
      • 测试
    • 实例
      • mm-relu 示例
      • 后处理
        • YOLO 后处理之坐标变换
    • TVM v0.19.0 文档
      • 自定义 Relay 算子
        • 注册算子
      • TVM FFI
        • tvm._ffi.libinfo
        • TVM 常用数据结构
        • register_func() 注册全局函数
        • tvm._ffi 查找/移除全局函数
        • _init_api()
        • register_object
      • TVM 插件
        • Python 调用 C++
          • 拓展 TVM C++ 功能
          • Python 端加载 C++ 端动态库
          • 使用 tvm._ffi._init_api() 管理 TVM 插件
          • 其他 C++ 打包函数的例子
        • C++ 调用 Python
        • TVM 模块插件
        • 创建 TVM 的 NDArray 的子类
        • 注册插件
      • TVM v0.19.0 代码生成
        • 外部代码生成
        • 注解 Target
        • 目标钩子
        • Relay ext 测试
        • module 导出
      • PyTorch 翻译为 ONNX
        • ONNX 模型精简
          • ONNX GatherND
          • onnx L2 范数
          • torch2onnx:Scatter
          • ScatterElements
          • onnx ScatterND
          • torch2onnx SequenceConstruct
          • torch转ONNX:Unsqueeze
          • torch转ONNX:Upsample
          • BN+conv
          • onnx conv+reshape
          • torch.Tensor.expand() 转换
          • onnx flatten
          • ONNX HardSwish
          • torch 索引转换
          • torch.Tensor.repeat() 转换
          • Resize
          • torch 切片转换
          • torch转ONNX:split
      • relay 前端
        • PyTorch Relay 前端
          • PyTorch 算子
            • PixelShuffle
          • PyTorch resnet18 Relay
          • PyTorch Relay 前端测试
        • ONNX Relay 前端
          • 算子列表
            • reshape
          • HardSigmoid
          • 测试 ONNX relay 模型
        • TensorFlow Relay 前端
          • Graph
          • Tensorflow1 前端
          • Tensorflow(pb) 转 ONNX
          • Tensorflow 前端之 TF-slim
            • TensorFlow1 推理
            • 升级 TF1 为 TF2
            • TensorFlow1 pb 推理
            • TensorFlow2 推理
            • TensorFlow2 Keras 推理
          • tf2onnx 概述
        • Caffe Relay 前端
          • caffe 环境
          • caffe relay 网络
          • Caffe Relay 算子测试
      • MSC
        • MSC 简介
        • MSC 计算图
          • MSCGraph 简介
          • Codegen 模块
        • MSC 运行器
          • TorchRunner
          • TVMRunner
          • TensorflowRunner
        • MSC 管道
          • MSC 编译流程
          • MSCManager
          • TorchDynamic
        • MSC 工具
          • MSCTools 设计特点
          • 剪枝
          • 量化
          • 追踪
          • MSC 工具测试
        • 插件
          • MSC Plugin
        • 测试
          • MSC 基础 pass
          • 前端模型转换
          • 翻译 relax 代码
          • 翻译 Relay 代码
          • 翻译 tensorflow 代码
          • 翻译 tensorrt 代码
          • 翻译 PyTorch 代码
        • MSC demo
      • 解读 tvm.relay.quantize()
        • 量化配置
        • 预热阶段
        • 量化 QPartitionExpr
        • 量化分区
        • 量化注解
        • SimulatedQuantize
        • TVM 自动量化校准 C++ 代码解读
        • TVM Relay 自动量化校准
        • 自动量化实现
          • 自动量化实现常用函数和类
          • GetFixedPointMultiplierShift
          • MulAndDiv
          • UnifyDTypeScale
          • CastDtypeInputRealize
        • partition_conversions
        • topi.qnn
        • relay.qnn.quantize
        • relay.qnn.dequantize
        • relay.qnn.requantize
        • 测试 relay.qnn.simulated_quantize
        • 测试 relay.qnn.simulated_dequantize
      • 编译器
        • 合并编译器区域
        • MergeComposite
        • 计算图分区
        • 混合精度
      • TVM 解读(临时)
        • 项目配置
        • Relax
          • Relax RemoveRedundantReshape: 消除冗余的 reshape
        • Relay 前端
          • common
            • AttrCvt
            • Span 设置
            • PyTorch 前端常见问题
          • ONNX 前端接口
            • OnnxOpConverter
            • BatchNorm
            • 解析 ONNX GraphProto
            • from_onnx()
          • PyTorch 前端接口
            • PyTorch Span
            • PyTorch pass
            • Torch unsqueeze & unsqueeze_
        • tvm.arith 解读
          • tvm.arith.analyzer 解读
            • 解读 StructuralEqual
            • 解读 ExprDeepEqual
            • canonical_simplify()
            • tvm.arith.analyzer.ConstIntBound
            • simplify()
            • rewrite_simplify()
        • 解读 tvm.target
          • 解读 GenericFunc
          • generic_func()
          • 解读 override_native_generic_func()
        • 解读 tvm.ir
          • 解读 EnvFunc
          • 源代码映射
            • SourceName 解读
            • 解读 Span
            • 解读 Source
            • 解读 SourceMap
          • 中间表示中的类型节点
          • 解读 tvm.ir.structural_hash
        • 解读 tvm/script
          • 解读 tvm/script/parser/core
            • 解读 tvm/script/parser/core/diagnostics.py
            • 解读 tvm.script.parser.evaluator
        • 运行时(C++)
          • TVM Runtime base
          • tvm::runtime::Object
          • tvm::runtime::ObjectPtr
          • tvm::runtime::ObjectRef
          • 内存机制
          • 解读 packed_func
          • make_node()
          • TVM 宏
          • env_func
          • repr
          • node functor
          • 数据类型
        • 解读 tvm.topi
          • saturate (有 bug)
          • 浮点数到定点的转换(TOPI)
        • tvm.tir 解读
          • tvm.tir.expr
            • Ramp
          • 补码
          • 解读 q_multiply_shift()
            • Q 表示法
            • 定点数示例
            • 定点表示法的乘法示例
            • 浮点数转定点数(C++)
            • 浮点转定点
          • tvm.tir.analysis
            • 计算分配内存
          • StorageRewrite
          • 解读 tvm.tir.transform.LowerDeviceStorageAccessInfo
        • TVM op
          • op IR
          • 为算子添加类型关系
          • nn.pad
        • 数据布局
          • InferCorrectLayoutOutput
        • 属性
          • 对象属性辅助函数
        • TVM 表达式
          • 解读类型推断
          • 表达式
          • 添加 relay 算子
          • 解读 ExprFunctor
        • TVM 节点反射
        • TVM Relay 变换
          • TVM Relay Pass
          • TVM Pass Instrument
          • 简化推理
          • 解读 FoldScaleAxis
          • 定制 Pass
          • fold-explicit-padding
          • AnnotateSpans
          • 解读 TVM 变换
            • 解读 InferTypeLocal()
            • DefuseOps
            • 除法转乘法
            • Relay 模块级 Pass
            • Relay 函数级 Pass
            • Relay Sequential pass
            • Relay PrintIR
            • Relay Pass Instrument
            • 测试 Pass
            • 算子融合测试
        • 源码映射机制
          • 源码映射
          • 构建源信息
          • relay.Span 示例
        • NameSupply
        • 内存计划
        • UMA 开发
          • UMAPartitioner
          • 快速入门 UMA
        • Relay
          • Relay BYODT 框架
          • Relay legalize
          • LowerTE
          • ADT
          • check_basic_block_normal_form
          • 测试分析提取伪量化算子
          • 分析提取融合函数
          • 分析提取中间表达式
          • 分析提取算子
          • 注解区域
          • call graph
          • simplify_fc_transpose()
          • 测试折叠比例轴
          • 解读 DFPatternCallback
          • 类型推断
          • ToMixedPrecision 解读
          • 解读 _test_type_solver
          • FForwardRewrite
          • tvm::relay::transformForwardRewrite
          • tvm::relay::RewriteAnnotatedOps()
          • Relay 后端
            • Relay 后端解释器
            • aot-executor-codegen
          • 构建 Relay 模型
          • graph executor
          • cpp-build-module
          • analysis-get-calibration_data
          • memory-passes
          • AnnotateUsedMemory
            • AnnotateUsedMemory C++ 源码
            • python 端 AnnotateUsedMemory
          • OutlineCompilerFunctionsWithExistingGlobalSymbols 和 MarkCompilerFunctionsAsExtern 外部代码生成
        • QNN
          • FTVMQnnCanonicalize
          • FTVMQnnLegalize()
          • tvm.relay.qnn.op.softmax()
        • 测试模块
          • 运行时错误
        • 解读代码生成
          • C-host 代码生成简介
          • 代码生成:静态初始化
          • 代码生成:VM 基础
          • 代码生成:extern
        • tvm.contrib
          • Verilator 集成
            • Verilator 代码生成测试
        • Relay 临时表达式
      • VTA:开源、模块化的深度学习加速器栈
        • VTA 环境配置
        • VTA 介绍
        • VTA 指令
        • VTA 教程
          • VTA 入门
          • 简单的矩阵乘法
          • 编译深度学习模型
            • 在 VTA 上部署预训练的视觉模型
            • 在 VTA 上部署预训练的 Darknet 视觉检测模型
          • 优化 Tensor 算子
            • 分块矩阵乘法
            • 2D 卷积优化
          • 自动调优
            • 自动调优 VTA 上的 ALU fused op
            • 在 VTA 上调优卷积神经网络
        • 基准测试
          • GEMM 算子
          • dense
          • conv2d
          • group conv2d
          • conv2d_transpose
      • 其他专题
        • YOLO
          • YOLO Relay 推理
          • YOLO11 Relax 推理
          • YOLO11 Relax 优化
          • 裁剪 YOLOv8n 以探索计算图分割
  • TVM 手册
  • 参考文献
  • Repository
  • Show source
  • Suggest edit
  • Open issue
  • .md

Daobook mlc-llm

Daobook mlc-llm#

  • mlc-llm 简介
  • 使用 TVM nn.module 工作流在 MLC-LLM 中添加新模型架构
    • 定义 GPT-2 模型
      • 在 gpt2_model.py 中定义配置类
      • 在 gpt2_model.py 中定义模型架构
      • 使用 nn.spec 定义模型规范
      • 在 gpt2_loader.py 中定义加载器
    • 将模型添加到支持的预构建模型工作流
    • 编译 GPT-2 模型库和权重
    • 使用 DebugChat 调试编译的 MLC 模型

上一页

Daobook xgrammar

下一页

mlc-llm 简介

作者: xinetzone

© Copyright 2022, xinetzone.

最后更新于 2025-12-06, 02:19:10.