简易开发

本章节中,我们将为您介绍D-Robotics-LLM的基本使用流程,便于您实现快速上手。这里我们以DeepSeek-R1-Distill-Qwen-1.5B模型为例,为您进行使用说明。

模型及部署包准备

  • 下载我们提供的D-Robotics_LLM_{version}.tar.gz部署包并解压。

  • 下载我们提供的DeepSeek_R1_Distill_Qwen_1.5B_1024.hbm模型。

提示

关于hbm模型的下载链接,请参见oellm_runtimemodel文件夹的resolve_model.txt文件。

当部署包以及模型准备完毕后,我们将模型(*.hbm)和部署包中的oellm_runtime SDK整合到一起,参考目录结构如下:

llm └── D-Robotics_LLM_{version} └── oellm_runtime ├── model │ ├── resolve_model.txt │ ├── DeepSeek_R1_Distill_Qwen_1.5B_1024.hbm │ ├── DeepSeek_R1_Distill_Qwen_1.5B_1024_q4.hbm │ ├── DeepSeek_R1_Distill_Qwen_1.5B_4096.hbm │ ├── DeepSeek_R1_Distill_Qwen_1.5B_4096_q4.hbm │ └── DeepSeek_R1_Distill_Qwen_7B_1024.hbm ├── config │ ├── DeepSeek_R1_Distill_Qwen_1.5B_config │ └── DeepSeek_R1_Distill_Qwen_7B_config ├── example │ ├── oellm_run │ ├── oellm_multichat │ └── oellm_ppl ├── include ├── lib └── set_performance_mode.sh

板端运行准备

在板端创建工作目录,参考命令如下:

# 创建工作目录 mkdir -p /home/root/llm cd /home/root/llm

将开发机中整合的文件夹拷贝至此板端目录下,参考命令如下:

scp -r llm/* root@{board_ip}:/home/root/llm

最后,在/home/root/llm/D-Robotics_LLM_{version}/oellm_runtime路径下,对LD_LIBRARY_PATH进行配置,参考命令如下:

# 修改硬件寄存器的值使设备调整为性能模式 sh set_performance_mode.sh # 设置环境变量 lib=/home/root/llm/D-Robotics_LLM_{version}/oellm_runtime/lib export LD_LIBRARY_PATH=${lib}:${LD_LIBRARY_PATH}

板端运行

模型板端运行参考指令如下:

cd ./example/oellm_run ./oellm_run --hbm_path ../../model/DeepSeek_R1_Distill_Qwen_1.5B_4096.hbm \ --tokenizer_dir ../../config/DeepSeek_R1_Distill_Qwen_1.5B_config/ \ --template_path ../../config/DeepSeek_R1_Distill_Qwen_1.5B_config/DeepSeek_R1_Distill_Qwen_1.5B.jinja \ --model_type 1

其中,运行参数如下:

参数参数说明是否可选
-h, --help显示帮助信息。/
--hbm_path用于指定量化后的模型文件(*.hbm)路径。必填
--tokenizer_dir用于指定分词器配置路径。必填
--template_path用于指定对话模板路径。必填
--model_type用于指定运行的模型类型,当前DeepSeek模型类型为1。必填

运行结果

简单对话测试参考如下:

[User] <<< 简单描述人工智能的发展 [Assistant] >>> <|begin▁of▁sentence|> 人工智能(AI)的发展可以分为几个主要阶段: 1. **早期AI**: - **人工智能**:最初用于特定任务,如游戏和客服。 - **机器学习**:1950年代,计算机开始学习,如自动识别和语音识别。 - **专家系统**:1970年代,如“维基”系统,模拟人类专家。 2. **计算机视觉**: - **图像识别**:1980年代,计算机识别简单的图像,如手写数字。 - **自然语言处理**:1990年代,如维基百科的自动搜索和编辑。 3. **深度学习**: - **神经网络**:1980年代,神经网络用于处理复杂数据。 - **卷积神经网络(CNN)**:1990年代,用于图像识别,如自动驾驶汽车。 - **深度学习**:2010年代,如GPT和BERT,用于自然语言处理。 4. **强化学习**: - **机器人控制**:1980年代,机器人学习动作。 - **自动驾驶**:2010年代,如自动驾驶汽车。 5. **深度学习和神经网络**: - **图像识别**:如分类、分割和生成。 - **自然语言处理**:如文本生成、翻译和对话。 - **语音识别**:如转录和语音合成。 6. **AI应用**: - **医疗**:如诊断和药物研发。 - **交通**:如自动驾驶和交通管理系统。 - **教育**:如智能学习系统。 - **金融**:如自动交易和风险管理。 7. **伦理和挑战**: - **隐私问题**:数据泄露和隐私侵犯。 - **伦理争议**:如算法偏见和隐私问题。 8. **未来展望**: - **AI芯片**:用于训练和推理。 - **边缘AI**:在设备上运行,减少数据传输。 - **多模态AI**:结合视觉、听觉等多模态数据。 - **人类助手**:如聊天机器人和生命支持系统。 AI将继续在多个领域发展,推动技术进步和社会变革。 Performance prefill: 2348.62tokens/s decode: 27.08tokens/s