VLM / Qwen3.5
Qwen3.5 4B
Esta imagen VLM publicada combina el modelo de lenguaje Qwen3.5 4B con su codificador de visión RKNN y una API multimodal compatible con OpenAI.
Elige el dispositivo que estás usando. La guía de configuración y la documentación se actualizarán en consecuencia.
Primeros pasos
sudo docker run --rm -d \
--name recomputer-rk-vlm \
--privileged \
-p 8001:8001 \
-v /dev:/dev \
-e MODEL_KIND=vlm \
-e LOG_LEVEL=warning \
ghcr.io/seeed-projects/recomputer-rk-llm/vlm/qwen3.5-4b:rk3576-w4a16-g128Detalles del modelo
Implementación de VLM en reComputer RK
Esta guía compartida se aplica a todos los VLM incluidos en el catálogo, incluido Qwen3.5. Cada imagen de VLM publicada contiene un modelo de lenguaje RKLLM y un codificador de visión RKNN compatibles con la placa y la cuantización seleccionadas.
Formato de la imagen publicada
ghcr.io/seeed-projects/recomputer-rk-llm/vlm/<model-id>:<platform>-<quantization>Por lo general, las imágenes W4A16-G128 solo son compatibles con RK3576. Los registros de VLM para RK3588 utilizan W8A8.
Requisitos
- reComputer RK3576 o RK3588 con una imagen de Linux de 64 bits
- Docker y Docker Buildx instalados
- Acceso a NPU a través de
/dev - Puerto 8001 disponible en la placa
Las imágenes de VLM utilizan la API compatible con OpenAI y no proporcionan un chat interactivo en la terminal.
Ejecutar un VLM publicado
Sustituya <model-id> y <quantization> por los valores del registro seleccionado en el catálogo.
RK3576
sudo docker run --rm -d \
--name recomputer-rk-vlm \
--privileged \
-p 8001:8001 \
-v /dev:/dev \
-e MODEL_KIND=vlm \
-e LOG_LEVEL=warning \
ghcr.io/seeed-projects/recomputer-rk-llm/vlm/<model-id>:rk3576-<quantization>RK3588
sudo docker run --rm -d \
--name recomputer-rk-vlm \
--privileged \
-p 8001:8001 \
-v /dev:/dev \
-e MODEL_KIND=vlm \
-e LOG_LEVEL=warning \
ghcr.io/seeed-projects/recomputer-rk-llm/vlm/<model-id>:rk3588-w8a8Documentación de estado y API
curl http://localhost:8001/health
curl http://localhost:8001/docs
curl http://localhost:8001/redocSolicitud multimodal compatible con OpenAI
El servidor acepta una imagen por solicitud. Utilice una URL HTTP(S) pública o una URL de datos en base64.
curl -X POST http://localhost:8001/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "rkllm-vision",
"messages": [{
"role": "user",
"content": [
{"type": "text", "text": "Describe this image in detail."},
{"type": "image_url", "image_url": {"url": "https://example.com/your-image.jpg"}}
]
}],
"stream": false
}'Para una imagen local, coloque una URL de datos en image_url.url:
data:image/jpeg;base64,<base64-encoded-image>Solicitud multimodal en streaming
curl -N -X POST http://localhost:8001/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "rkllm-vision",
"messages": [{
"role": "user",
"content": [
{"type": "text", "text": "List the objects visible in this image."},
{"type": "image_url", "image_url": {"url": "https://example.com/your-image.jpg"}}
]
}],
"stream": true
}'Cliente de Python:
from openai import OpenAI
client = OpenAI(base_url="http://localhost:8001/v1", api_key="dummy-key")
response = client.chat.completions.create(
model="rkllm-vision",
messages=[{
"role": "user",
"content": [
{"type": "text", "text": "Describe this image."},
{"type": "image_url", "image_url": {"url": "https://example.com/your-image.jpg"}},
],
}],
max_tokens=128,
)
print(response.choices[0].message.content)Cherry Studio
Configure un proveedor personalizado compatible con OpenAI:
- Host de la API:
http://<board-ip>:8001/v1 - Clave de API: cualquier valor, como
rkllm-local - Modelo:
rkllm-vision
Adjunte una imagen después de seleccionar el proveedor.
Solución de problemas
- No mezcle artefactos del modelo de lenguaje y del codificador de visión de distintas placas o etiquetas.
- Si el servidor informa de que falta el modelo de visión, confirme
MODEL_KIND=vlmy la etiqueta de la imagen publicada. - Inspeccione la salida de inicio con
sudo docker logs recomputer-rk-vlm.
Entradas y salidas
Entrada: una imagen y un prompt de texto. Salida: texto generado a partir de la imagen mediante una API compatible con OpenAI.