LLM / Gemma 4
Gemma 4 E2B IT
Imágenes RKLLM publicadas de Gemma 4 E2B IT con una API compatible con OpenAI. Selecciona una cuantización (W4A16-G128 / W8A8) después de seleccionar el dispositivo de destino.
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-llm \
--privileged \
-p 8001:8001 \
-v /dev:/dev \
-e INTERACTIVE_CHAT=true \
-e LOG_LEVEL=warning \
ghcr.io/seeed-projects/recomputer-rk-llm/llm/gemma-4-e2b-it:rk3576-w4a16-g128Detalles del modelo
Implementación de LLM en reComputer RK
Esta guía compartida se aplica a todos los LLM incluidos en el catálogo. Seleccione la familia del modelo y la cuantización en la página del modelo y, a continuación, use la etiqueta de imagen publicada correspondiente.
Formato de la imagen publicada
ghcr.io/seeed-projects/recomputer-rk-llm/llm/<model-id>:<platform>-<quantization>Las imágenes de LLM publicadas incluyen el modelo .rkllm convertido, el runtime de RKLLM y un servidor compatible con OpenAI. Las etiquetas disponibles se enumeran en los registros del catálogo de cada familia de modelos. Las imágenes W4A16/W4A16-G128 generalmente solo son compatibles con RK3576; los registros de RK3588 utilizan W8A8.
Requisitos
- reComputer RK3576 o RK3588 con una imagen de Linux de 64 bits
- Docker y Docker Buildx instalados
- Acceso a la NPU mediante
/dev - Puerto 8001 disponible en la placa
Los ejemplos utilizan --privileged y -v /dev:/dev para acceder a la NPU. La API local no tiene autenticación ni TLS; manténgala en una red de confianza.
Ejecutar un LLM publicado
Reemplace <model-id> y <platform>-<quantization> por los valores que se muestran en la página del modelo seleccionado.
RK3576
sudo docker run --rm -it \
--name recomputer-rk-llm \
--privileged \
-p 8001:8001 \
-v /dev:/dev \
-e INTERACTIVE_CHAT=true \
-e LOG_LEVEL=warning \
ghcr.io/seeed-projects/recomputer-rk-llm/llm/<model-id>:rk3576-<quantization>RK3588
sudo docker run --rm -it \
--name recomputer-rk-llm \
--privileged \
-p 8001:8001 \
-v /dev:/dev \
-e INTERACTIVE_CHAT=true \
-e LOG_LEVEL=warning \
ghcr.io/seeed-projects/recomputer-rk-llm/llm/<model-id>:rk3588-w8a8El comando incluido habilita el chat interactivo en la terminal. Para ejecutarlo en segundo plano, cambie -it por -d y elimine INTERACTIVE_CHAT=true.
Estado y documentación
curl http://localhost:8001/health
curl http://localhost:8001/docsEl servicio está listo cuando el endpoint de estado responde correctamente.
API compatible con OpenAI
Solicitud sin streaming:
curl http://localhost:8001/v1/chat/completions \
-H 'Content-Type: application/json' \
-d '{
"model": "rkllm-model",
"messages": [{"role": "user", "content": "Explain edge AI in one sentence."}],
"max_tokens": 128,
"stream": false
}'Solicitud con streaming:
curl -N http://localhost:8001/v1/chat/completions \
-H 'Content-Type: application/json' \
-d '{
"model": "rkllm-model",
"messages": [{"role": "user", "content": "Give me three uses for an edge AI board."}],
"max_tokens": 128,
"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-model",
messages=[{"role": "user", "content": "Hello from reComputer RK."}],
max_tokens=128,
)
print(response.choices[0].message.content)API compatible con Ollama
curl http://localhost:8001/api/chat \
-H 'Content-Type: application/json' \
-d '{"model":"rkllm-model","messages":[{"role":"user","content":"Hello"}],"stream":false}'Detener y solucionar problemas
sudo docker logs recomputer-rk-llm
sudo docker stop recomputer-rk-llmSi la detección de la plataforma falla, establezca TARGET_PLATFORM=rk3576 o TARGET_PLATFORM=rk3588. Si el puerto 8001 está ocupado, cambie la asignación del puerto del host y utilice la nueva URL de la API.
Entradas y salidas
Entrada: prompt de texto o mensajes de chat. Salida: texto generado mediante una API compatible con OpenAI.