| --- |
| language: |
| - zh |
| - en |
| license: other |
| license_name: youtu-vl |
| license_link: LICENSE |
| library_name: ncnn |
| pipeline_tag: image-text-to-text |
| base_model: tencent/Youtu-VL-4B-Instruct |
| tags: |
| - ncnn |
| - pnnx |
| - cpp |
| - vision-language |
| - multimodal |
| - image-text-to-text |
| --- |
| |
| # Youtu-VL-4B-Instruct-ncnn |
|
|
| 这是 |
| [`tencent/Youtu-VL-4B-Instruct`](https://huggingface.co/tencent/Youtu-VL-4B-Instruct) |
| 的 pnnx/ncnn 模型资产版本。 |
|
|
| 本仓库只发布转换后的 ncnn 权重和参数文件,不包含 C++ 源码、可执行文件、 |
| CMake 工程或模型转换脚本。模型需要与独立发布的 `Youtu-VL-ncnn` C++ |
| 运行时配套使用,不能直接通过 |
| `AutoModel.from_pretrained()`、Hugging Face Inference API 或标准 |
| Transformers Pipeline 加载。 |
|
|
| ## 项目来源 |
|
|
| | 项目 | 来源 | |
| | --- | --- | |
| | 原始模型 | [tencent/Youtu-VL-4B-Instruct](https://huggingface.co/tencent/Youtu-VL-4B-Instruct) | |
| | 官方代码 | [TencentCloudADP/youtu-vl](https://github.com/TencentCloudADP/youtu-vl) | |
| | 技术总结 | [从 PyTorch 到 ncnn/C++:Youtu-VL-4B 的端侧迁移与 AI 辅助工程方法](https://github.com/Tencent/ncnn/discussions/6871) | |
| | 推理框架 | [Tencent/ncnn](https://github.com/Tencent/ncnn) | |
| | 模型转换工具 | [pnnx](https://github.com/pnnx/pnnx) | |
| | C++ 代码与运行说明 | [everythingfornothing/Youtu-VL-ncnn](https://github.com/everythingfornothing/Youtu-VL-ncnn) | |
|
|
| Youtu-VL 是腾讯优图实验室发布的视觉语言模型,基于 Youtu-LLM,并使用 |
| Vision-Language Unified Autoregressive Supervision。原模型同时覆盖通用 |
| 视觉问答、多模态理解以及目标检测、视觉定位等视觉中心任务。 |
|
|
| 本项目没有重新训练 Youtu-VL,也不改变原模型的所有权。仓库中的资产由 |
| pnnx 转换并按照 ncnn 运行边界拆分,供配套运行时加载。 |
|
|
| ## 转换内容 |
|
|
| ```text |
| 27-layer Vision |
| VLPatchMerger |
| 40-layer LLM Prefill/Decode |
| Final RMSNorm |
| 17 LM-head shards |
| Text embedding and RoPE constants |
| ByteLevel-BPE tokenizer.bin |
| ``` |
|
|
| 模型按照实际运行边界拆分为多个 ncnn 子图。本仓库只负责分发这些转换资产, |
| 运行时实现、构建方法和命令行接口请查看 |
| [`everythingfornothing/Youtu-VL-ncnn`](https://github.com/everythingfornothing/Youtu-VL-ncnn)。 |
|
|
| ## 文件说明 |
|
|
| | 文件 | 说明 | |
| | --- | --- | |
| | `youtu-vl-ncnn-model.tar.gz` | 完整 ncnn 模型压缩包 | |
| | `MODEL_PACKAGE_SHA256.txt` | 压缩包 SHA-256 | |
| | `LICENSE` | Youtu-VL License | |
|
|
| 压缩包解开后生成 `model/`: |
|
|
| ```text |
| model/ |
| ├── artifacts/ |
| │ ├── vision_embedding/ |
| │ ├── vision_layer0_masked_core/ ... vision_layer26_masked_core/ |
| │ ├── vision_post_layernorm/ |
| │ ├── llm_layer0_three_part/ ... llm_layer39_three_part/ |
| │ ├── llm_final_head_ncnn/ |
| │ ├── text_embedding/ |
| │ └── llm_rope_inv_freq.npy |
| ├── models/ |
| │ └── youtu_merger.ncnn.{param,bin} |
| ├── tokenizer/ |
| │ └── tokenizer.bin |
| └── checksums.sha256 |
| ``` |
|
|
| 完整模型包含 339 个运行资产,解压后约 13.43 GiB。 |
|
|
| ## 下载、校验与解压 |
|
|
| 安装 Hugging Face CLI: |
|
|
| ```bash |
| python3 -m pip install -U huggingface_hub |
| ``` |
|
|
| 下载模型包: |
|
|
| ```bash |
| hf download Coderdw/Youtu-VL-4B-Instruct-ncnn \ |
| youtu-vl-ncnn-model.tar.gz MODEL_PACKAGE_SHA256.txt \ |
| --local-dir model-download |
| ``` |
|
|
| 校验并解压: |
|
|
| ```bash |
| cd model-download |
| sha256sum -c MODEL_PACKAGE_SHA256.txt |
| tar -xzf youtu-vl-ncnn-model.tar.gz |
| (cd model && sha256sum -c checksums.sha256) |
| ``` |
|
|
| 下载完成后,请按照 |
| [`everythingfornothing/Youtu-VL-ncnn`](https://github.com/everythingfornothing/Youtu-VL-ncnn) |
| 中的构建与运行说明加载解压后的 `model/` 目录。 |
|
|
| 当前模型包 SHA-256: |
|
|
| ```text |
| BAF79D8507B89AFDDC70EC151605A41A7616F03A9ACA3983B804FBE52302C4AA youtu-vl-ncnn-model.tar.gz |
| ``` |
|
|
| ## 验证结果 |
|
|
| 这些权重曾与配套 `Youtu-VL-ncnn` 运行时联合验证。验证条件为单图片、 |
| 单 Prompt、batch size 1、greedy decode、CPU Release、8 threads 和 |
| Vulkan OFF。 |
|
|
| | 验证范围 | 结果 | |
| | --- | --- | |
| | Linux 32/64/128 token | 最终 token ID 与 PyTorch 参考逐元素一致,文本一致 | |
| | Windows 1/32/64/128 token | 最终 token ID 与 PyTorch 参考逐元素一致,文本一致 | |
| | 英文 VQA、物体检测 | 64-token 用例均通过 | |
| | Persistent 生命周期 | `resident_models=138`,`model_load_count=138` | |
| | 配套 C++ 运行时的 Python/Transformers 依赖 | 无 | |
| | 配套 C++ 运行时的 BLAS/MKL/OpenBLAS/Vulkan 依赖 | 无 | |
|
|
| Linux Persistent 最终版相对重复加载基线,在 32/64/128 token 下的总耗时 |
| 分别获得约 1.64×、1.46× 和 1.36× 加速。 |
|
|
| ## 使用范围与限制 |
|
|
| - 本仓库不能单独执行推理,必须另行获取配套运行时。 |
| - 联合验证范围是单张图片和单个文本 Prompt,batch size 为 1。 |
| - 联合验证以 CPU Release、Vulkan OFF 为验收配置。 |
| - 多图片、视频、批量推理和服务端并发不在当前验证范围内。 |
| - 模型输出可能继承原始模型的知识偏差、幻觉和安全限制。 |
| - 本模型包是部署格式转换,不应被描述为新的训练模型或新的基础模型。 |
|
|
| ## License |
|
|
| 模型、转换权重及使用行为遵循仓库中的 |
| [Youtu-VL License](LICENSE)。使用前请同时阅读原始模型仓库的许可证与 |
| 使用限制。 |
|
|
| 本项目使用 ncnn,并通过 pnnx 完成模型图转换;相关组件分别遵循其自身的 |
| 开源许可证。本仓库与腾讯优图实验室不存在官方隶属或背书关系。 |
|
|
| ## Citation |
|
|
| 使用本模型时,请引用原始 Youtu-VL 工作: |
|
|
| ```bibtex |
| @article{youtu-vl, |
| title={Youtu-VL: Unleashing Visual Potential via Unified Vision-Language Supervision}, |
| author={Tencent Youtu Lab}, |
| year={2026}, |
| eprint={2601.19798}, |
| archivePrefix={arXiv}, |
| primaryClass={cs.CV}, |
| url={https://arxiv.org/abs/2601.19798} |
| } |
| ``` |
|
|