models-cat 是 ModelScope Hub 的非官方 Rust 客户端,设计灵感来自 hf-hub。models-cat 源自一个简单的需求:“编写一个 Rust 桌面端 AI APP ,需要下载模型和数据集,但是没有合适的 Rust 客户端。”
什么时候需要 models-cat 下载模型?主要有三个原因:
顺便说下,ModelScope 托管模型真香,国内下载速度贼快、稳定、免费。
同步下载:
use models_cat::{download_model_with_progress, ProgressBarWrapper};
download_model_with_progress(
"BAAI/bge-small-zh-v1.5",
"model.safetensors",
ProgressBarWrapper::default(),
).unwrap();
异步下载:
use models_cat::asynchronous::{download_model_with_progress, ProgressBarWrapper};
download_model_with_progress(
"BAAI/bge-small-zh-v1.5",
"model.safetensors",
ProgressBarWrapper::default(),
).await.unwrap();
异步下载需开启特性tokio
特性:
models-cat = { version = "*", features = ["tokio"] }
从 ModelScope 的托管仓库 BAAI/bge-small-zh-v1.5 下载模型到本地,默认保存在[HOME_DIR].cache/modelscope/hub/models--BAAI--bge-small-zh-v1.5/
目录下。
使用快捷函数时,可通过环境变量MODELS_CAT_CACHE_DIR
设置本地缓存路径。或者使用ModelsCat
,在初始化时传入本地缓存路径。