← 返回

🚀Jittor 生态发展战略:基于 PyPI 下游包工作量分析

最后更新 2026/04/05 08:20:03 Jittor深度学习框架生态分析PyTorchSE4AI

Jittor 生态发展战略:基于 PyPI 下游包工作量分析

数据基础:对 PyTorch 下游 13,475 个 GitHub 仓库进行了系统评估,采集了代码规模(SLOC)、Git 提交数、贡献者数、PyPI 被依赖数、GitHub Stars 等多维指标,综合计算工作量评分。

目标:为 Jittor 框架的生态发展提供数据驱动的优先级建议。


一、方法论

1.1 工作量评估

通过 GitHub API 对 13,475 个 PyTorch 下游包采集了以下指标:

指标说明权重
估算 SLOCGitHub 语言字节占比 → 估算代码行数30%
Commit 数Git 提交次数,反映迭代投入25%
贡献者数独立贡献者数量20%
最近活跃度90 天内是否有推送15%
项目成熟度项目存在时间10%

综合得分为 0-100+ 分,分数越高工作量越大。

1.2 影响力评估

使用 PyPI package_dependents(PyPI 上声明 requires: 该包 的包数量)作为真实影响力的指标。

⚠️ 注意:GitHub 的 repository_dependents 通常被大量 fork 和教程项目污染(如 ultralytics/thop 的 GitHub 依赖数因 YOLO 生态膨胀至 10K+,但真实 PyPI 依赖数仅 43)。本报告全部使用 PyPI 依赖数。


二、PyTorch 生态全景

2.1 分类统计

将 13,475 个包按功能分类:

分类仓库数总 Stars总 PyPI 依赖平均工作量
NLP/LLM138528K879K21.2
计算机视觉162291K202K22.6
训练效率33134K198K30.7
MLOps9396K190K21.7
模型服务96148K169K21.8
音频/语音127302K20K20.7
图神经网络2941K16K23.7
数据加载558K14K19.8
评估/基准203103K9K22.3
模型分析127K1K17.9
边缘/端侧2926K34225.9

2.2 工作量分布

区间数量占比说明
70+(顶级)400.3%transformers, langchain, vllm 等
50-702682.1%中型框架/工具
30-502,08616.3%小型库
10-3010,36681.2%微型包/工具

81% 的 PyTorch 生态包工作量很小(10-30 分),这意味着 Jittor 不需要投入大量人力就能复刻大部分基础设施。


三、Jittor 现状分析

3.1 基本信息

指标数值
GitHub Stars3,219
核心贡献者~5 人
版本1.3.10.0
依赖numpy, tqdm, pillow, astunparse(极简)
已有模块nn, optim, sparse, distributions, linalg, attention

3.2 核心优势

  • JIT 编译:运行时编译优化,对不规则计算(图、稀疏矩阵)有天然优势
  • Meta-operator:算子融合,减少内存拷贝
  • 轻量依赖:不依赖 PyTorch 的庞大 C++ 栈
  • 统一前端:同一套 Python 代码可以跑在 CUDA/CPU/不同后端

3.3 生态短板

对比 PyTorch,Jittor 缺少:

  • 模型分析工具(thop, torchstat 等)
  • 评估基准库(FID, torchmetrics 等)
  • 图神经网络高层 API(PyG 等)
  • 端侧部署工具链
  • 音频/语音处理库

四、战略建议:五步走

第一步:1 周内上马「模型分析三件套」

目标:消除用户使用 Jittor 的第一道门槛——「我想看模型有多少参数/FLOPs,但 thop 不支持 Jittor」。

包名原版 SLOCPyPI 依赖复刻成本优先级
thop (FLOPs 计算)1,70643半天🔴 P0
torchstat (模型统计)1,0304半天🔴 P0
torchsummaryX (层级摘要)325112 小时🔴 P0

为什么先做这些

  • 代码量极小(300-1700 行),纯 Python
  • 只读取网络结构(model.named_parameters()),不涉及核心算子
  • 每个训练者都需要,是最基础的工具
  • 可以作为 Jittor 生态的「入门贡献」示例

实现方式:改写原版的 torch.xxx 调用为 jt.xxx,核心逻辑不变。

第二步:2 周内做「评估指标工具」

目标:SE4AI 方向的刚需——用户不需要为了评估模型再装 PyTorch。

包名原版 SLOCPyPI 依赖复刻成本优先级
pytorch-fid (FID 分数)975221 天🟡 P1
clean-fid (改进 FID)2,479142 天🟡 P1
torchmetrics Top 10 指标~5K(精简版)241 周🟡 P1

为什么重要

  • 今天 rant radar 有人因为 label leakage 浪费 3 天训练,说明「训练前验证 + 训练中评估」是真实痛点
  • Jittor 如果自带评估工具,形成完整训练闭环
  • FID/SSIM/PSNR 等指标实现简单(调用预训练网络提取特征 + 统计计算)

第三步:4 周内攻克「图神经网络 + 神经 ODE」

目标:这是 Jittor 的天然主场,用性能优势建立差异化。

包名原版 SLOCPyPI 依赖复刻成本优先级
torchdiffeq (神经 ODE)5,2181451 周🟢 P2
torchsde (随机微分方程)8,207501-2 周🟢 P2
PyG 精简版 (GCN/GAT/GraphSAGE)~10K(精简)15K+2-4 周🟢 P2

为什么是天然主场

  • Jittor 的 JIT 编译对不规则计算(图、稀疏矩阵)有天然优势
  • torchdiffeq 核心是 RK4/Dopri5 数值积分 + autograd,Jittor 直接支持
  • PyG 在 PyTorch 上跑图网络有 Python 开销瓶颈,Jittor 如果 benchmark 快 2-3 倍,这就是差异化竞争力
  • 学术界对 GNN + 神经 ODE 的需求持续增长

第四步:跟进「音频/语音」赛道

目标:语音 agent 是 2026 年热点(PyTorch ExecuTorch 就在做这个)。

包名原版 SLOCPyPI 依赖复刻成本优先级
vocos (vocoder)3,140333 天🔵 P3
torch-audiomentations8,404291 周🔵 P3
faster-whisper (ASR 加速)4,8463681-2 周🔵 P3
whisper-timestamped6,505221 周🔵 P3

为什么

  • 语音 pipeline(ASR + 增强 + 合成)是完整的垂直场景
  • Jittor 的 JIT 编译可以替代 CTranslate2 做 Whisper 加速
  • 如果有完整的语音 pipeline,就能吸引做语音的团队

第五步:定位「端侧部署」

目标:长期差异化,PyTorch 有 ExecuTorch 但很重。

  • 开发 jittor2onnx 导出工具
  • 利用 JIT 编译器直接生成高效推理代码
  • 针对 ARM/RISC-V 等异构平台优化

五、优先级总览

                高影响力

   ┌───────────────┼───────────────┐
   │               │               │
   │  第一步 P0    │   第三步 P2   │
   │  模型分析     │   GNN/ODE     │
   │  (1周,3人天)  │   (4周,3人月) │
   │               │               │
───┼───────────────┼───────────────┼─── 工作量
   │               │               │
   │  第二步 P1    │   第四步 P3   │
   │  评估工具     │   音频/语音   │
   │  (2周,2人周)  │   (4周,2人月) │
   │               │               │
   └───────────────┼───────────────┘

                低影响力

放弃的包(工作量太大,跟框架绑定太深)

包名原版 SLOC放弃理由
DeepSpeed278K重度依赖 PyTorch C++ 扩展和 CUDA kernel
bitsandbytes31K自定义 CUDA 量化 kernel,跟 PyTorch 绑死
Megatron-LM348KNVIDIA 专属优化,复刻成本等同重写框架
LangChain/LLM Index380K-1M应用层框架,不是基础设施

六、量化预期收益

如果按计划完成前四步:

阶段新增包新增 PyPI 覆盖累计工作量时间
第一步后3~1,100 个包的基础设施需求~3 人天1 周
第二步后+3~40 个评估场景~2 人周2 周
第三步后+3~16K 个 GNN/ODE 场景~3 人月4 周
第四步后+4~400 个音频场景~2 人月4 周

总投入:约 4 个月,2-3 人团队。 预期效果:覆盖 PyTorch 生态中 ~17,500 个包的底层依赖需求,建立 Jittor 在 GNN/ODE/端侧的差异化竞争力。


七、结论

Jittor 不需要复刻 PyTorch 的全部生态。正确的策略是:

  1. 先做 5 分钟能复刻的工具包(thop/fid/stat)—— 消除入门门槛
  2. 再做自己有技术优势的领域(GNN/ODE)—— 建立差异化
  3. 最后切入增量市场(语音/端侧)—— 抢占新赛道
  4. 放弃重 C++ 扩展的包(DeepSpeed/bitsandbytes)—— 不值得

核心原则:低垂果实先摘,差异化领地深耕,框架绑定太深的放弃。


本报告基于 2026 年 3 月对 13,475 个 PyTorch 下游包的系统评估,数据覆盖 GitHub API(代码规模、提交历史、贡献者)和 PyPI API(依赖关系、包元数据)。