一、编译模型

参考 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

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐