diff --git a/README.zh-CN.md b/README.zh-CN.md index be413a8..f85dacc 100644 --- a/README.zh-CN.md +++ b/README.zh-CN.md @@ -34,7 +34,7 @@ aha 是一款基于 Rust 和 Candle 框架构建的高性能跨平台 AI 推理 |------|------| | **文本** | Qwen3, MiniCPM4, MiniCPM5, LFM2, LFM2.5 | | **视觉** | Qwen2.5-VL, Qwen3-VL, Qwen3.5
LFM2.5-VL, LFM2-VL | -| **OCR** | DeepSeek-OCR, DeepSeek-OCR-2, PaddleOCR-VL,
PaddleOCR-VL1.5, Hunyuan-OCR, GLM-OCR | +| **OCR** | DeepSeek-OCR, DeepSeek-OCR-2, PaddleOCR-VL,
PaddleOCR-VL1.5, PaddleOCR-VL1.5, Hunyuan-OCR
GLM-OCR | | **ASR** | GLM-ASR-Nano, Fun-ASR-Nano, Qwen3-ASR | | **TTS** | VoxCPM, VoxCPM1.5, VoxCPM2, Moss-TTS-Nano | | **图像** | RMBG-2.0 (背景移除) | diff --git a/docs/supported-models.md b/docs/supported-models.md index e3efc61..e2b8250 100644 --- a/docs/supported-models.md +++ b/docs/supported-models.md @@ -40,7 +40,8 @@ deepseek-ai/DeepSeek-OCR deepseek-ai ocr ✔ deepseek-ai/DeepSeek-OCR-2 deepseek-ai ocr Tencent-Hunyuan/HunyuanOCR Tencent-Hunyuan ocr ✔ PaddlePaddle/PaddleOCR-VL PaddlePaddle ocr ✔ -PaddlePaddle/PaddleOCR-VL-1.5 PaddlePaddle ocr +PaddlePaddle/PaddleOCR-VL-1.5 PaddlePaddle ocr +PaddlePaddle/PaddleOCR-VL-1.6 PaddlePaddle ocr ✔ AI-ModelScope/RMBG-2.0 AI-ModelScope image ✔ OpenBMB/VoxCPM-0.5B OpenBMB tts ✔ OpenBMB/VoxCPM1.5 OpenBMB tts ✔ @@ -88,7 +89,7 @@ ZhipuAI/GLM-OCR ZhipuAI ocr ✔ | Model | Languages | Model Id | License | |-------|-----------|--------|---------| -| **PaddleOCR-VL** | Multi | PaddlePaddle/PaddleOCR-VL
PaddlePaddle/PaddleOCR-VL-1.5 | [Apache 2.0](https://huggingface.co/datasets/choosealicense/licenses/blob/main/markdown/apache-2.0.md) | +| **PaddleOCR-VL** | Multi | PaddlePaddle/PaddleOCR-VL
PaddlePaddle/PaddleOCR-VL-1.5
PaddlePaddle/PaddleOCR-VL-1.6 | [Apache 2.0](https://huggingface.co/datasets/choosealicense/licenses/blob/main/markdown/apache-2.0.md) | | **Hunyuan-OCR** | Chinese | Tencent-Hunyuan/HunyuanOCR | [Tencent Hunyuan Community License](https://huggingface.co/tencent/HunyuanOCR/blob/main/LICENSE) | | **DeepSeek-OCR** | Multi | deepseek-ai/DeepSeek-OCR
deepseek-ai/DeepSeek-OCR-2 | [MIT](https://huggingface.co/datasets/choosealicense/licenses/blob/main/markdown/mit.md) | | **GLM-OCR** | 8 | ZhipuAI/GLM-OCR | [MIT](https://huggingface.co/datasets/choosealicense/licenses/blob/main/markdown/mit.md) | diff --git a/docs/supported-models.zh-CN.md b/docs/supported-models.zh-CN.md index 0395370..c86df15 100644 --- a/docs/supported-models.zh-CN.md +++ b/docs/supported-models.zh-CN.md @@ -40,7 +40,8 @@ deepseek-ai/DeepSeek-OCR deepseek-ai ocr ✔ deepseek-ai/DeepSeek-OCR-2 deepseek-ai ocr Tencent-Hunyuan/HunyuanOCR Tencent-Hunyuan ocr ✔ PaddlePaddle/PaddleOCR-VL PaddlePaddle ocr ✔ -PaddlePaddle/PaddleOCR-VL-1.5 PaddlePaddle ocr +PaddlePaddle/PaddleOCR-VL-1.5 PaddlePaddle ocr +PaddlePaddle/PaddleOCR-VL-1.6 PaddlePaddle ocr ✔ AI-ModelScope/RMBG-2.0 AI-ModelScope image ✔ OpenBMB/VoxCPM-0.5B OpenBMB tts ✔ OpenBMB/VoxCPM1.5 OpenBMB tts ✔ @@ -86,7 +87,7 @@ ZhipuAI/GLM-OCR ZhipuAI ocr ✔ | 模型 | 语言 | 模型id | 开源协议 | |------|------|------|---------| -| **PaddleOCR-VL** | 多语言 | PaddlePaddle/PaddleOCR-VL
PaddlePaddle/PaddleOCR-VL-1.5 | [Apache 2.0](https://huggingface.co/datasets/choosealicense/licenses/blob/main/markdown/apache-2.0.md) | +| **PaddleOCR-VL** | 多语言 | PaddlePaddle/PaddleOCR-VL
PaddlePaddle/PaddleOCR-VL-1.5
PaddlePaddle/PaddleOCR-VL-1.6 | [Apache 2.0](https://huggingface.co/datasets/choosealicense/licenses/blob/main/markdown/apache-2.0.md) | | **Hunyuan-OCR** | 中文 | Tencent-Hunyuan/HunyuanOCR | [腾讯混元社区许可协议](https://huggingface.co/tencent/HunyuanOCR/blob/main/LICENSE) | | **DeepSeek-OCR** | 多语言 | deepseek-ai/DeepSeek-OCR
deepseek-ai/DeepSeek-OCR-2 | [MIT](https://huggingface.co/datasets/choosealicense/licenses/blob/main/markdown/mit.md) | | **GLM-OCR** | 8 | ZhipuAI/GLM-OCR | [MIT](https://huggingface.co/datasets/choosealicense/licenses/blob/main/markdown/mit.md) | diff --git a/src/cli/mod.rs b/src/cli/mod.rs index 82b43eb..fe3f8c8 100644 --- a/src/cli/mod.rs +++ b/src/cli/mod.rs @@ -298,9 +298,7 @@ pub(crate) fn run_run(args: RunArgs) -> anyhow::Result<()> { WhichModel::HunyuanOCR => { hunyuan_ocr::HunyuanORExec::run(&input, output.as_deref(), &weight_path)?; } - WhichModel::PaddleOCRVL - | WhichModel::PaddleOCRVL1_5 - | WhichModel::PaddleOCRVL1_6 => { + WhichModel::PaddleOCRVL | WhichModel::PaddleOCRVL1_5 | WhichModel::PaddleOCRVL1_6 => { paddleocr_vl::PaddleOVLExec::run(&input, output.as_deref(), &weight_path)?; } WhichModel::RMBG2_0 => { diff --git a/src/models/mod.rs b/src/models/mod.rs index 7a112af..19a6d0b 100644 --- a/src/models/mod.rs +++ b/src/models/mod.rs @@ -284,9 +284,7 @@ pub fn load_model<'a>( let model = HunyuanOCRGenerateModel::init(path, device, dtype)?; ModelInstance::HunyuanOCR(model) } - WhichModel::PaddleOCRVL - | WhichModel::PaddleOCRVL1_5 - | WhichModel::PaddleOCRVL1_6 => { + WhichModel::PaddleOCRVL | WhichModel::PaddleOCRVL1_5 | WhichModel::PaddleOCRVL1_6 => { let model = PaddleOCRVLGenerateModel::init(path, device, dtype)?; ModelInstance::PaddleOCRVL(Box::new(model)) }