基于BM1684X算力盒子丨Llama3部署教程
一、编译模型
参考 LLM-TPU-main阶段一,在X86环境中编译并转换出bmodel文件,传到板子上。
也可以在 资源下载中下载。
同时将算能官方 TPU-demo下载下来。
注意
传到板子上根目录/data路径,可以使用MobaXterm 登录ssh后,直接通过自带的SFTP拖进去

二、编译可执行文件
提示
确保板子的网络可以连接互联网,以下步骤在板子上操作。
1、系统需要先安装依赖,使用下面命令安装:
sudo apt-get update ##更新软件源
apt-get install pybind11-dev -y ##安装pybind11-dev
pip3 install transformers ##python 安装 transformers(网络问题,这步可能比较久)
2、编译步骤在刚才传demo和bmodel的目录进行操作:
sudo -i ##切换到root用户
cd /data ##进入/data目录
unzip LLM-TPU-main.zip ##解压 LLM-TPU-main.zip
mv llama3-8b_int4_1dev_1024.bmodel /data/LLM-TPU-main/models/Llama3/python_demo ##将bmodel移动到对应demo目录
cd /data/LLM-TPU-main/models/Llama3/python_demo ##进入Llama3 demo目录
mkdir build && cd build ##创建编译目录并进入其中
cmake .. ##cmake 生成Makefile
make ##编译
cp *chat* .. ##将编译出来的库拷贝到运行目录
3、运行:
cd /data/LLM-TPU-main/models/Llama3/python_demo ##进入Llama3 demo目录
python3 pipeline.py --model_path ./llama3-8b_int4_1dev_1024.bmodel --tokenizer_path ../token_config/ --devid 0 ##运行demo
运行效果:
root@bm1684:/data/LLM-TPU-main/models/Llama3/python_demo# python3 pipeline.py --model_path ./llama3-8b_int4_1dev_1024.bmodel --tokenizer_path ../token_config/ --devid 0
None of PyTorch, TensorFlow >= 2.0, or Flax have been found. Models won't be available and only tokenizers, configuration and file/data utilities can be used.
Load ../token_config/ ...
Special tokens have been added in the vocabulary, make sure the associated word embeddings are fine-tuned or trained.
Device [ 0 ] loading ....
[BMRT][bmcpu_setup:498] INFO:cpu_lib 'libcpuop.so' is loaded.
[BMRT][bmcpu_setup:521] INFO:Not able to open libcustomcpuop.so
bmcpu init: skip cpu_user_defined
open usercpu.so, init user_cpu_init
[BMRT][BMProfileDeviceBase:190] INFO:gdma=0, tiu=0, mcu=0
Model[./llama3-8b_int4_1dev_1024.bmodel] loading ....
[BMRT][load_bmodel:1939] INFO:Loading bmodel from [./llama3-8b_int4_1dev_1024.bmodel]. Thanks for your patience...
[BMRT][load_bmodel:1704] INFO:Bmodel loaded, version 2.2+v1.8.beta.0-89-g32b7f39b8-20240620
[BMRT][load_bmodel:1706] INFO:pre net num: 0, load net num: 69
[BMRT][load_tpu_module:1802] INFO:loading firmare in bmodel
[BMRT][preload_funcs:2121] INFO: core_id=0, multi_fullnet_func_id=22
[BMRT][preload_funcs:2124] INFO: core_id=0, dynamic_fullnet_func_id=23
Done!
=================================================================
1. If you want to quit, please enter one of [q, quit, exit]
2. To create a new chat session, please enter one of [clear, new]
=================================================================
Question: hello
Answer: Hello! How can I help you?
FTL: 1.690 s
TPS: 7.194 token/s
Question: who are you?
Answer: I am Llama3, an AI assistant developed by IntellectNexus. How can I assist you?
FTL: 1.607 s
TPS: 7.213 token/s
三、LPRNet:端到端车牌识别部署实战案例
1、LPRNet简介
传统车牌识别通常依赖字符分割,再逐一分类,这种方式在复杂环境中容易受到光照、角度、畸变等因素影响。
而LPRNet(License Plate Recognition via Deep Neural Networks)提出了一种全新的端到端思路:
-
无需字符切分,直接输入整张车牌图片即可识别字符序列;
-
轻量化网络结构,摒弃 RNN,减少计算开销,更适合实时推理;
-
鲁棒性出色,在恶劣光照、视角变化等情况下依然能保持较高精度。
凭借这些优势,LPRNet 成为智慧交通与安防场景下的主流车牌识别方案。
2、LPRNet 在 BM1684X算力盒子上的部署
LPRNet 在传统 GPU 或服务器环境下可以达到较好效果,但要在边缘端做到 高并发、低延迟、低功耗,则需要更适配的硬件。
BM1684X 算力盒子(AIBOX-1684XB-32)内置 SOPHON BM1684X AI 处理器,具备:
-
32TOPS INT8 算力,适配 LPRNet 卷积结构;
-
16GB DDR + 64GB 存储,保障模型加载与缓存性能;
-
32路 1080p@25fps 硬件解码,满足多路视频流并行车牌识别;
-
低功耗设计(典型30W)与宽温工作能力(0~60°C),适合前端大规模布设。
结合 LPRNet,BM1684X 算力盒子不仅能快速输出识别结果,还能同时处理多路摄像头输入,在边缘完成解码与推理闭环。

(1)部署优势与应用场景
-
实时性 车牌识别延迟可控制在毫秒级,满足交通监控、停车收费、道路执法等业务需求。
-
高并发能力 支持多路摄像头同时输入,通过流水线“解码-推理-输出”模式,实现稳定车牌识别。
-
带宽与存储优化 边缘端只上传结构化识别结果(车牌号+置信度),相比原始视频可节省 90% 以上带宽和云端存储。
-
扩展性 在车牌识别的基础上,可扩展车辆检测、车型识别、属性分析等功能,形成完整的智能交通边缘节点。
(2)成本与价值
-
算力利用最大化:LPRNet 的卷积算子与 BM1684X INT8 运算单元高度契合,推理效率高。
-
部署灵活:即插即用,无需额外服务器,单盒即可完成多路车牌识别任务。
-
运维简化:本地化部署减少对云端依赖,降低长期 GPU 租赁与维护成本。
-
行业适配:已广泛适用于智慧交通、智慧园区、智慧停车、安防布控等领域。
(3)技术教程
https://forum.shimetapi.cn/wiki/zh/ai-model/AIBOX-1684XB-32/application-development/DL/LPRNet.html
更多推荐

所有评论(0)