跳到主要内容

Bloom 大语言模型

功能介绍

本章节介如何在 RDK 平台体验端侧 Large Language Model (LLM)。

代码仓库: (https://github.com/D-Robotics/hobot_llm.git)

支持平台

平台运行方式示例功能
RDK X3, RDK X3 Module (4GB 内存)Ubuntu 20.04 (Foxy), Ubuntu 22.04 (Humble)端侧大语言模型体验

注意:仅支持 RDK X3,RDK X3 Module 4GB 内存版本。

算法信息

模型参数量平台prefill eval time(ms/token)eval time(ms/token)
Bloom1.4BX3305.34364.78

准备工作

RDK 平台

  1. RDK 为 4GB 内存版本
  2. RDK 已烧录好 Ubuntu 系统镜像。
  3. RDK 已成功安装 TogetheROS.Bot。
  4. 安装 transformers,命令为 pip3 install transformers -i https://pypi.tuna.tsinghua.edu.cn/simple

使用方式

RDK 平台

运行程序前,需要下载模型文件并解压,命令如下:

# 配置tros.b环境
source /opt/tros/setup.bash
# 下载模型文件
wget http://archive.d-robotics.cc/llm-model/llm_model.tar.gz

# 解压
sudo tar -xf llm_model.tar.gz -C /opt/tros/${TROS_DISTRO}/lib/hobot_llm/

使用命令 srpi-config 修改 ION memory 大小为 1.9GB,设置方法参考 RDK 用户手册配置工具 srpi-config 使用指南Performance Options章节。

重启后设置 CPU 最高频率为 1.5GHz,以及调度模式为 performance ,命令如下:

sudo bash -c 'echo 1 > /sys/devices/system/cpu/cpufreq/boost'
sudo bash -c 'echo performance > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor'

目前提供两种体验方式,一种直接终端输入文本聊天体验,一种订阅文本消息,然后将结果以文本方式发布出去。

终端交互体验

# 配置tros.b环境
source /opt/tros/setup.bash
ros2 run hobot_llm hobot_llm_chat

程序启动后,可直接在当前终端和机器人聊天。

订阅发布体验

  1. 启动 hobot_llm

    # 配置tros.b环境
    source /opt/tros/setup.bash
    ros2 run hobot_llm hobot_llm
  2. 新开一个终端订阅输出结果 topic

    # 配置tros.b环境
    source /opt/tros/setup.bash
    ros2 topic echo /text_result
  3. 新开一个终端发布消息

    # 配置tros.b环境
    source /opt/tros/setup.bash
    ros2 topic pub --once /text_query std_msgs/msg/String "{data: ""中国的首都是哪里""}"

消息发送后,可以在订阅输出结果终端查看输出结果。

注意事项

确认开发板内存为 4GB,同时修改 ION memory 大小为 1.9GB,否则会导致模型加载失败。