- 2025.04.29:🚀 Qwen最新推理模型Qwen3,BM1684X/1688已支持,详情见Qwen3 Demo。
- 2025.03.07:🚀 Qwen最新推理模型QWQ-32B和DeepSeek-R1-Distill-Qwen-32B,1684x多芯demo已适配,详情见LLM Template。
- 2025.02.05:🚀 DeepSeek时刻!!我们适配了DeepSeek-R1-Distill-Qwen系列模型,包括1.5B、7B和14B版本,详情见LLM Template。
本项目实现算能BM1684X、BM1688(CV186X)芯片部署各类开源生成式AI模型,其中以LLM为主。通过TPU-MLIR编译器将模型转换成bmodel,再基于tpu-runtime的推理引擎接口,采用c++代码将其部署到PCIE环境或者SoC环境。在知乎上写了一篇解读,以ChatGLM2-6B为例,方便大家理解源码:ChatGLM2流程解析与TPU-MLIR部署
我们已部署过的LLM模型如下(按照首字母顺序排列):
| Model | BM1684X | BM1688 | Huggingface Link |
|---|---|---|---|
| Baichuan2-7B | ✅ | LINK | |
| ChatGLM3-6B | ✅ | ✅ | LINK |
| ChatGLM4-9B | ✅ | LINK | |
| CodeFuse-7B | ✅ | LINK | |
| DeepSeek-6.7B | ✅ | LINK | |
| DeepSeek-R1-Distill-Qwen-1.5B | ✅ | LINK | |
| DeepSeek-R1-Distill-Qwen-7B | ✅ | LINK | |
| DeepSeek-R1-Distill-Qwen-14B | ✅ | LINK | |
| DeepSeek-R1-Distill-Qwen-32B | ✅ | LINK | |
| Falcon-40B | ✅ | LINK | |
| Gemma-2B | ✅ | ✅ | LINK |
| Gemma2-2B | ✅ | ✅ | LINK |
| Llama2-7B | ✅ | ✅ | LINK |
| Llama2-13B | ✅ | LINK | |
| Llama3-8B | ✅ | LINK | |
| Llama3.2-3B | ✅ | ✅ | LINK |
| LWM-Text-Chat | ✅ | LINK | |
| MiniCPM-2B | ✅ | ✅ | LINK |
| MiniCPM3-4B | ✅ | LINK | |
| MiniCPM4-0.5B | ✅ | ✅ | LINK |
| MiniCPM4-8B | ✅ | LINK | |
| Mistral-7B-Instruct | ✅ | LINK | |
| Phi-3-mini-4k | ✅ | ✅ | LINK |
| Qwen-7B | ✅ | LINK | |
| Qwen-14B | ✅ | LINK | |
| Qwen-72B | ✅ | LINK | |
| Qwen1.5-0.5B | ✅ | ✅ | LINK |
| Qwen1.5-1.8B | ✅ | ✅ | LINK |
| Qwen1.5-7B | ✅ | LINK | |
| Qwen2-1.5B | ✅ | ✅ | LINK |
| Qwen2-7B | ✅ | LINK | |
| Qwen2.5-1.5B | ✅ | ✅ | LINK |
| Qwen2.5-7B | ✅ | LINK | |
| QWQ-32B | ✅ | LINK | |
| Qwen3-4B | ✅ | ✅ | LINK |
| WizardCoder-15B | ✅ | LINK | |
| Yi-6B-chat | ✅ | LINK | |
| Yi-34B-chat | ✅ | LINK |
此外,还有一些多模态模型如下:
| Model | BM1684X | BM1688 | Huggingface Link |
|---|---|---|---|
| Qwen-VL | ✅ | LINK | |
| Qwen2-VL | ✅ | LINK | |
| Qwen2.5-VL | ✅ | ✅ | LINK |
| InternVL2-4B | ✅ | ✅ | LINK |
| InternVL2-2B | ✅ | ✅ | LINK |
| InternVL3 | ✅ | ✅ | LINK |
| Stable Diffusion | ✅ | LINK | |
| Stable Diffusion XL | ✅ | LINK | |
| MiniCPM-V-2_6 | ✅ | ✅ | LINK |
| Llama3.2-Vision-11B | ✅ | LINK | |
| Molmo-7B-D-0924 | ✅ | ✅ | LINK |
| OpenClip | ✅ | ✅ | LINK |
| DeepSeek-Janus-Pro | ✅ | LINK | |
| NVILA-8B | ✅ | LINK |
如果您想要知道转换细节和源码,可以到本项目models子目录查看各类模型部署细节。
如果您对我们的芯片感兴趣,也可以通过官网SOPHGO联系我们。
克隆LLM-TPU项目,并执行run.sh脚本
git clone https://github.com/sophgo/LLM-TPU.git
./run.sh --model llama2-7b详细请参考Quick Start
跑通后效果如下图所示
目前用于演示的模型,全部命令如下表所示
| Model | SoC | PCIE |
|---|---|---|
| ChatGLM3-6B | ./run.sh --model chatglm3-6b --arch soc | ./run.sh --model chatglm3-6b --arch pcie |
| Llama2-7B | ./run.sh --model llama2-7b --arch soc | ./run.sh --model llama2-7b --arch pcie |
| Qwen-7B | ./run.sh --model qwen-7b --arch soc | ./run.sh --model qwen-7b --arch pcie |
| Qwen1.5-1.8B | ./run.sh --model qwen1.5-1.8b --arch soc | ./run.sh --model qwen1.5-1.8b --arch pcie |
| Qwen2.5-7B | \ | ./run.sh --model qwen2.5-7b --arch pcie |
| LWM-Text-Chat | ./run.sh --model lwm-text-chat --arch soc | ./run.sh --model lwm-text-chat --arch pcie |
| WizardCoder-15B | ./run.sh --model wizardcoder-15b --arch soc | ./run.sh --model wizardcoder-15b --arch pcie |
| InternVL2-4B | ./run.sh --model internvl2-4b --arch soc | ./run.sh --model internvl2-4b --arch pcie |
| MiniCPM-V-2_6 | ./run.sh --model minicpmv2_6 --arch soc | ./run.sh --model minicpmv2_6 --arch pcie |
| Molmo-7B-D-0924 | \ | ./run.sh --model molmo-7b --arch pcie |
进阶功能说明:
| 功能 | 目录 | 功能说明 |
|---|---|---|
| 多芯 | ChatGLM3/parallel_demo | 支持ChatGLM3 2芯 |
| Llama2/demo_parallel | 支持Llama2 4/6/8芯 | |
| Qwen/demo_parallel | 支持Qwen 4/6/8芯 | |
| Qwen1_5/demo_parallel | 支持Qwen1_5 4/6/8芯 | |
| 投机采样 | Qwen/jacobi_demo | LookaheadDecoding |
| Qwen1_5/speculative_sample_demo | 投机采样 | |
| prefill复用 | Qwen/prompt_cache_demo | 公共序列prefill复用 |
| Qwen/share_cache_demo | 公共序列prefill复用 | |
| Qwen1_5/share_cache_demo | 公共序列prefill复用 | |
| 模型加密 | Qwen/share_cache_demo | 模型加密 |
| Qwen1_5/share_cache_demo | 模型加密 |

