Files

1.8 KiB
Raw Permalink Blame History

2026-07-01

发布 minicpm crates 到 Gitea Cargo Registry

  • 修改了三个 crate 的 Cargo.toml:添加 publish = ["gitea"],并为 minicpm-convertminicpm-inferenceminicpm-core 依赖添加 version = "0.1.0", registry = "gitea"
  • Gitea registry: sparse+http://macrocc.com:3000/api/packages/macrocc/cargo/registry 名称为 gitea
  • minicpm-core@0.1.0 已存在于 registry,跳过发布
  • minicpm-convert@0.1.0 发布成功
  • minicpm-inference@0.1.0 发布成功

burn 最小依赖 + 重发布 (0.1.1)

  • burn 改为 default-features = false, features = ["std"],移除 wgpuwgpu 交给下游 binary 选择)
  • 三个 crate 版本升级到 0.1.1convert/inference 的 minicpm-core 依赖也更新到 0.1.1
  • 发布顺序:cargo publish --allow-dirty --registry gitea -p minicpm-coreminicpm-convertminicpm-inference
  • 全部发布成功

添加流式输出

  • minicpm-inference/src/lib.rs: 新增 generate_stream 函数和 MiniCPM::generate_stream 方法,每 token 通过回调 impl FnMut(&str) 输出解码文本
  • examples/minimal-inference/src/main.rs: 改为流式调用,print! + flush 实时输出

升级 0.1.2 重新发布(含流式功能)

  • minicpm-core, minicpm-convert, minicpm-inference 全部升级到 0.1.2
  • 发布全部成功

Q8 量化导出和加载

  • minicpm-convert: 新增 export_model_q82D 权重 per-tensor INT8 量化(scale = max(|f|)/127),1D norm 权重存 F16;输出 model.q8.json + model.q8.bin
  • minicpm-inference: 新增 MiniCPM::load_q8,加载 Q8 模型并在内存中反量化为 f32 推理;新增依赖 memmap2serdeserde_json
  • examples/convert: 支持 Q8 导出
  • examples/minimal-inference: 支持 --full|--half|--q8 三种模式
  • 量化方式:q = clamp(round(f / scale), -127, 127)f' = q * scale