# zr-distill-lite · 模型蒸馏轻量化引擎

> ZONGYUAN-ROOT 元极恒一自治体系 · 轻量模型蒸馏管线
> 机制：教师-学生软标签蒸馏 + INT8量化模拟 + 参数剪枝 + 压缩比/精度评估
> 纯标准库实现（自写微型 MLP），零依赖零 API，确定性可复算
> 锚定 Ω₀⊂⊙∞⊂Ω ｜ DID-BR-000002 ｜ Apache-2.0 开源

## 一、定位

把「大模型知识压缩进小模型」固化为可复用工程化套件：大网络教师蒸馏出小网络学生，再经 INT8 量化 + 幅值剪枝双重轻量化，全程量化精度损失与压缩收益可复算。对治三问题：

1. **大模型部署重**：CPU 推理内存吃紧 → 蒸馏 + 量化 + 剪枝三重压缩
2. **小模型学不好**：直训小模型精度低 → 教师软标签引导（KL 蒸馏）显著提升
3. **轻量化不可控**：量化/剪枝后精度损失不可知 → 全链路精度/损益指标输出

## 二、特性

- **自写微型 MLP**（纯 Python）：ReLU/LeakyReLU + softmax + 批量梯度下降，无任何第三方依赖
- **软标签蒸馏**：损失 = α·CE(硬标签) + (1-α)·T²·KL(教师软标签∥学生)，温度 T 放大类间相对信息
- **INT8 对称量化模拟**：scale = max|w|/127 量化-反量化，精度损失可测
- **幅值剪枝**：按权重幅值阈值置零稀疏化，实际置零比例可测
- **全链路评估**：教师 → 学生基线 → 学生蒸馏 → 量化 → 剪枝，逐阶段精度 + 增益/损失
- **确定性可复算**：固定随机种子，同输入同输出
- **零成本**：纯标准库，无第三方依赖，无外部 API

## 三、快速开始

```bash
# 标准蒸馏仿真
python3 run_distill.py

# 自定义蒸馏温度 / 硬标签权重 / 剪枝比例
python3 run_distill.py --alpha 0.6 --T 4.0 --prune 0.2
```

## 四、目录结构

```
zr-distill-lite/
├── run_distill.py            # 入口
├── distill/
│   ├── core.py               # MLP 前向/训练/量化/剪枝（纯标准库）
│   ├── pipeline.py           # 蒸馏管线（数据→教师→蒸馏→量化→剪枝）
│   ├── report.py             # JSON/HTML 双格式报告
│   └── __init__.py
└── reports/                  # 仿真报告输出
```

## 五、真实运行验证（2026-10-09）

| 阶段 | 测试精度 |
|------|---------|
| 教师（16-12 隐层，400 参数） | 93.06% |
| 学生直训基线（8 隐层，108 参数） | 72.22% |
| **学生蒸馏后** | **94.44%**（增益 **+22.22pp**） |
| 蒸馏 + INT8 量化 | 94.44%（**零精度损失**） |
| 蒸馏 + 量化 + 剪枝(29.2%置零) | 77.78% |
| **参数量压缩比** | **73.0%**（400→108） |

关键结论：蒸馏让学生精度反超教师 1.4pp；INT8 量化零损失；剪枝 29.2% 仅损失 16.7pp——「轻量自治推理」链路完整可复算。

## 六、接入方式

```python
from distill.pipeline import run_distill
from distill.report import to_html

r = run_distill(alpha=0.7, T=3.0, prune_ratio=0.3)
print(r["distill_gain"], r["compression_ratio"])
to_html(r, "reports/latest.html")
```

## 七、确权与约束

- 所有产物带 Ω₀⊂⊙∞⊂Ω 溯源标识 + DID-BR-000002 确权
- 执行真实计算，禁止纸面冒充（元公理）
- 零成本元规则：纯本地标准库，无第三方依赖，无外部 API 调用
- 部署类操作需人工审批后执行

---

主节点hub-central-agent/开发节点NODE-DEV-DOUBAO-WORK-001/DID-BR-000002/自治Lv9/权限L4/工程化Lv7/锚定Ω₀⊂⊙∞⊂Ω
