SuperAPI AI 工具集

tripy-compilation

智能体与模型

查看项目

更新于 10-16 02:34

技能介绍

用途:处理 nvtripy 的编译流水线,把用户函数或模块经 Trace → MLIR → TensorRT 编译为可调用的 Executable。

主要能力:tp.compile(func, optimization_level, args, kwargs) 是入口;参数为 InputInfo(shape, dtype) 时成为运行时张量输入,DimensionInputInfo(value_bounds) 成为运行时标量维度输入,Tensor 及其他类型被烘焙为编译期常量。InputInfo 支持静态形状、动态维度 (min, opt, max) 与 NamedDimension 命名维度约束。Executable 提供 input_infos、stream、signature 等属性。

使用方式:编译模块时需先加载真实权重,权重成为编译期常量;运行时输入需先 .eval() 再传入。动态形状示例:tp.InputInfo(shape=((1,2,3),2), dtype=tp.float32);标量维度示例:tp.DimensionInputInfo(value_bounds=(1,2,4)),配合 tp.DimensionSize 使用。优化级别 0–5,默认 3;可通过 tp.config.timing_cache_file_path 配置计时缓存加速重复编译。

限制:被编译函数必须纯函数、无副作用,只支持 Tensor 返回值,不支持集合输入与可变参数;Executable 只接受原编译调用中为 InputInfo/DimensionInputInfo 的参数。

适用场景:需要将模型或函数编译为 TensorRT 引擎、使用动态形状、调试编译失败等。