边缘视觉语言: RK3576 运行 Qwen2.5-VL - 1

边缘视觉语言: RK3576 运行 Qwen2.5-VL

在 reComputer RK3576 上本地运行 Qwen2.5-VL 视觉语言模型,通过 OpenAI 兼容 API 同时理解图片和文本。

入门15min人工智能
rk3576vlmqwenmultimodaledge-ainpu

它能帮你做什么

把 reComputer RK3576 变成一个同时理解图片和文字的多模态 AI。Qwen2.5-VL 能描述照片、回答关于图片的问题、处理视觉信息——全部在本地设备上运行。

核心价值

  • 看图说话 — 发送一张图片,用自然语言提问即可获得回答
  • 隐私优先 — 所有视觉处理都在本地完成,数据不出网络
  • 标准 API — OpenAI 兼容视觉 API,可直接使用现有工具和库
  • NPU 加速 — 瑞芯微 NPU 在低功耗硬件上完成多模态推理

适用场景

场景说明
图片描述自动为照片生成文字描述,用于无障碍访问或内容分类
视觉问答对监控画面或产品图片提问并获取回答
文档理解从扫描文档或表单中提取信息
场景描述将摄像头画面生成文字描述用于日志记录

使用须知

  • 需要 8GB+ 设备内存才能稳定运行
  • 支持通过 URL 或 Base64 编码传入图片
  • 首次启动需要 60-120 秒加载模型
  • /docs 路径提供交互式 API 文档

集成接口

http

OpenAI 兼容的视觉对话 API(接受文本 + 图片输入)

/v1/chat/completions · Port: 8002 · Method: POST
{"model":"rkllm-vision","messages":[{"role":"user","content":[{"type":"text","text":"Describe this image"},{"type":"image_url","image_url":{"url":"https://example.com/photo.jpg"}}]}],"stream":false}
http

列出可用模型

/v1/models · Port: 8002 · Method: GET
http

交互式 API 文档 (Swagger UI)

/docs · Port: 8002 · Method: GET

使用说明

network

拉取 Docker 镜像需要网络连接

部署方案

下载与安装

预设: RK3576 视觉语言模型 {#rk3576_vlm}

一键将 Qwen2.5-VL 视觉语言模型部署到 reComputer RK3576。

设备用途
reComputer RK3576使用 NPU 加速运行 Qwen2.5-VL

部署后你将获得:

  • 同时理解图片和文本的多模态 AI
  • 本地运行的 OpenAI 兼容视觉 API
  • 图片描述、视觉问答等功能,全部在设备端完成
  • /docs 路径提供交互式 API 文档

前提条件: RK3576 设备(8GB+ 内存)可通过 SSH 访问 + 已安装 Docker

步骤 1: 部署 Qwen2.5-VL {#deploy_vlm type=docker_deploy required=true config=devices/rk3576.yaml}

将视觉语言模型容器部署到 RK3576 设备。

部署目标: 远程部署 {#rk3576_remote type=remote config=devices/rk3576.yaml default=true}

通过 SSH 一键部署到 RK3576。

接线

  1. 将 RK3576 连接到与电脑相同的网络
  2. 填写设备 IP、SSH 用户名和密码
  3. 点击 部署

部署完成

  1. VLM 容器已在 RK3576 上运行
  2. 视觉对话 API:http://<设备IP>:8002/v1/chat/completions
  3. API 文档:http://<设备IP>:8002/docs

故障排查

问题解决方案
SSH 连接失败检查 IP 地址、用户名、密码
未检测到 NPU确认设备为 RK3576 且已加载 RKNPU 内核模块
内存不足VLM 需要 8GB+ 内存,请关闭其他服务释放内存
镜像拉取缓慢检查网络连接,镜像约 3GB

步骤 2: 试试视觉对话 {#verify_vlm type=image_text_chat}

发送图片或文字测试 VLM。

模式: 图片理解 {#vision_mode config=devices/vlm_chat.yaml default=true}

上传一张图片并提问。

故障排查

问题解决方案
连接被拒绝等待 60-120 秒让模型加载
超时VLM 模型较大,首次加载需要时间

模式: 文本对话 {#text_mode config=devices/vlm_text.yaml}

仅用文本与模型对话。

故障排查

问题解决方案
空响应查看容器日志:docker logs ai_lab_vlm

部署完成

Qwen2.5-VL 已在你的 RK3576 设备上运行。

文本对话示例

curl -X POST http://<设备IP>:8002/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{"model": "rkllm-vision", "messages": [{"role": "user", "content": "你好!"}], "max_tokens": 256}'

图片理解示例

curl -X POST http://<设备IP>:8002/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "rkllm-vision",
    "messages": [{
      "role": "user",
      "content": [
        {"type": "text", "text": "这张图片里有什么?"},
        {"type": "image_url", "image_url": {"url": "https://example.com/photo.jpg"}}
      ]
    }],
    "max_tokens": 256
  }'

Python 示例

import openai
client = openai.OpenAI(base_url="http://<设备IP>:8002/v1", api_key="dummy")
response = client.chat.completions.create(
    model="rkllm-vision",
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "描述这张图片"},
            {"type": "image_url", "image_url": {"url": "https://example.com/photo.jpg"}}
        ]
    }],
    max_tokens=256
)
print(response.choices[0].message.content)
联系我们
获取方案参考设计与产品选型支持。
您是否使用过我们的产品?