Cómo usar Open WebUI con vLLM en la MB16250 Dell Pro Max 16 Plus con tarjeta de inferencia Qualcomm en Linux
Summary: Aprenda a atender un LLM mediante vLLM que se ejecuta en la tarjeta de inferencia AI100 y, a continuación, utilice Open WebUI para chatear con el modelo.
Instructions
Requisitos previos
Complete la configuración única del dispositivo Cómo configurar la Dell Pro Max 16 Plus con tarjeta de inferencia Qualcomm en Linux.
Debe pasar un token de Huffingface (HF_TOKEN) para usar este modelo. Primero, inicie sesión en Huggingface (cree una cuenta gratuita si no tiene una). A continuación, debe aceptar los términos de uso del modelo en el enlace del modelo.
La aprobación de acceso al modelo tarda entre 5 y 10 minutos y recibirá una confirmación por correo electrónico. Una vez que esto se complete, cree un token. De la cara de abrazo.
- Haga clic en el icono de su perfil en la esquina superior derecha del sitio web de Huggingface.
- En el menú desplegable, seleccione Configuración.
- En el panel de navegación del lado izquierdo, haga clic en Access Tokens.
- Haga clic en el botón + Crear nuevo token .
- Proporcione un nombre para el token (por ejemplo, "my-hf-token").
- Seleccione el botón Read (no seleccione los botones Fine grained ni Write).
- Haga clic en el botón Crear token .
- Se muestra el valor del token. Copie este valor inmediatamente y guárdelo en una ubicación segura, ya que no se volverá a mostrar una vez que salga de la página.
Ahora, en una terminal de Ubuntu, use huggingface-cli login para ingresar su token que le permite usar el modelo Llama-3.2-1B-Instruct de Huggingface. Si no tiene huggingface-cli instalado, es posible que deba instalar mediante pip install huggingface-hub. Ejemplo de salida.
Ejemplo de uso del HF_TOKEN my-hf-token
dell@dell:~$ huggingface-cli login
⚠️ Warning: 'huggingface-cli login' is deprecated. Use 'hf auth login' instead.
_| _| _| _| _|_|_| _|_|_| _|_|_| _| _| _|_|_| _|_|_|_| _|_| _|_|_| _|_|_|_|
_| _| _| _| _| _| _| _|_| _| _| _| _| _| _| _|
_|_|_|_| _| _| _| _|_| _| _|_| _| _| _| _| _| _|_| _|_|_| _|_|_|_| _| _|_|_|
_| _| _| _| _| _| _| _| _| _| _|_| _| _| _| _| _| _| _|
_| _| _|_| _|_|_| _|_|_| _|_|_| _| _| _|_|_| _| _| _| _|_|_| _|_|_|_|
A token is already saved on your machine. Run `hf auth whoami` to get more information or `hf auth logout` if you want to log out.
Setting a new token will erase the existing one.
To log in, `huggingface_hub` requires a token generated from https://huggingface.co/settings/tokens .
Enter your token (input will not be visible):
Add token as git credential? (Y/n) y
Token is valid (permission: read).
The token `my-hf-token` has been saved to /home/dell/.cache/huggingface/stored_tokens
Your token has been saved in your configured git credential helpers (store).
Your token has been saved to /home/dell/.cache/huggingface/token
Login successful.
The current active token is: `my-hf-token`
dell@dell:~$ HF_TOKEN=<INSERT YOUR TOKEN HERE>
Descargue el QPC prediseñado Llama 3.2:1B Instruct
En esta guía de estrategias, usaremos el QPC precompilado para el catálogo de modelos precompilados Llama 3.2:1B Instruct-Zentree-Qualcinn para aceleradores de IA en la nube.Advertencia: Este es un enlace no seguro. Úselo bajo su propio riesgo.
Siga los pasos que se indican a continuación para descargar y extraer el QPC del archivo. La tarjeta de inferencia AI100 utiliza hasta dos SoC (sistema en chip), por lo que descargamos esa versión prediseñada específica mediante la dirección del enlace de descarga de Zentree. Si aún no tiene curl instalado, puede instalarlo en el terminal mediante el comando sudo apt install curl.
# Use existing Downloads folder for model downloads
cd ~/Downloads
# Download QPC archive from Zentree as llama3.2-1b-instruct.tar.gz
curl -fSL https://dc00tk1pxen80.cloudfront.net/SDK1.20.4/meta-llama/Llama-3.2-1B-Instruct/Llama-3.2-1B-Instruct_qpc_16cores_128pl_8192cl_1fbs_2devices_mxfp6_mxint8.tar.gz -o llama3.2-1b-instruct.tar.gz
# Extract QPC archive
tar -xzvf llama3.2-1b-instruct.tar.gz
# Rename extracted directory to llama3.2-1b-instruct-qpc
mv $(tar -tzf llama3.2-1b-instruct.tar.gz | head -1 | cut -f1 -d"/") llama3.2-1b-instruct-qpc
Servir al modelo de instrucción Llama 3.2:1B mediante vLLM
Abra Terminal y ejecute el siguiente comando.
-v ~/Downloads/llama3.2-1b-instruct-qpc:/root/qpcLa línea se asigna al directorio de descarga de QPC desde el paso Descargue Llama 3.2:1B Instruir la sección 2 de QPC precompilado: Descargue el QPC precompilado Llama 3.2:1B Instruct.- HF_TOKEN debe establecerse como en el paso Prequesites sección 1 que se va a pasar al contenedor
- El modelo a servir es el siguiente:
meta-llama/Llama-3.2-1B-Instructdel catálogo de modelos precompilados Instruct-Zentree-Qualcinn de Llama 3.2:1B para aceleradoresde IA en la nube.Advertencia: Este es un enlace no seguro. Úselo bajo su propio riesgo.
max-num-seqes un tamaño de lote completo del catálogo de modelos precompilados Llama 3.2:1B Instruct-Zentree-Qualcinn para aceleradores de IA en la nube.Advertencia: Este es un enlace no seguro. Úselo bajo su propio riesgo.
max-model-lenes 8192 de Context Length (CL) en Llama 3.2:1B Catálogo de modelos precompilados Instruct-Zentree-Qualcinn para aceleradores de IA en la nube.Advertencia: Este es un enlace no seguro. Úselo bajo su propio riesgo.
max-seq_len-to-capturees 128 de Fragmentación Longitud del símbolo del sistema de Llama 3.2:1B Catálogo de modelos precompilados Instruct-Zentree-Qualcinn para aceleradoresde IA en la nube.Advertencia: Este es un enlace no seguro. Úselo bajo su propio riesgo.
Si no ha utilizado anteriormente esta versión del contenedor de Docker AI100, obtiene ~14 GB antes de abrir el contenedor de Docker. Asegúrese de haber configurado la HF_TOKEN antes de abrir el contenedor de Docker.
docker run --rm -it \
--name qaic-bench \
--device=/dev/accel/accel1 \
--device=/dev/accel/accel2 \
--network host \
--ulimit nofile=1048576 \
-e OMP_NUM_THREADS=8 \
-e HF_TOKEN=$HF_TOKEN \
-v ~/Downloads/llama3.2-1b-instruct-qpc:/root/qpc \
ghcr.io/quic/cloud_ai_inference_ubuntu24:1.20.6.0 \
/opt/vllm-env/bin/vllm serve meta-llama/Llama-3.2-1B-Instruct \
--max-num-seq 1 \
--max-model-len 8192 \
--max-seq_len-to-capture 128 \
--device qaic \
--device-group 0,1 \
--quantization mxfp6 \
--kv-cache-dtype mxint8 \
--override-qaic-config "qpc_path=/root/qpc/qpc"
El modelo está listo para la inferencia una vez que ve el mensaje "Se completó el inicio de la aplicación".
meta-llama/Llama-3.2-1B-Instruct está restringido. Debe tener acceso a ella y estar autenticado para acceder a ella. Por favor, inicie sesión".
Para detener vLLM (descargar el modelo y cerrar el contenedor), presione Ctrl+C en esta ventana de terminal. Los modelos más grandes pueden tardar hasta 1 minuto en descargarse.
Referencias: Docker: guía del usuario de Qualcomm® Cloud AI SDK y vLLM: Guía del usuario de Qualcomm® Cloud AI SDK
Iniciar contenedor Open WebUI
Abra un terminal nuevo y ejecute el siguiente comando.
docker run -d \
-p 3000:8080 \
-e WEBUI_AUTH=False \
--add-host=host.docker.internal:host-gateway \
-v open-webui:/app/backend/data \
--name open-webui \
ghcr.io/open-webui/open-webui:main-slim
Esto busca un contenedor con Open WebUI si no lo descargó anteriormente. Después de ~20 segundos, Open WebUI está disponible en el navegador web en el siguiente enlace: http://localhost:3000/
http://localhost:3000/
El contenedor continuará ejecutándose en segundo plano hasta que lo detenga. Utilice los siguientes comandos en un terminal para detener, reiniciar o actualizar el contenedor.
Para detener el contenedor: docker rm -f open-webui
Para reiniciar un contenedor existente: docker start open-webui
Para actualizar el contenedor: docker pull ghcr.io/open-webui/open-webui:main-slim
Referencia: Inicio rápido | Abra la interfaz de usuario web
Configurar Open WebUI
Utilice el navegador para acceder al siguiente enlace http://localhost:3000/admin/settings/connections
- Agregar una conexión de API de OpenAI: en la línea Administrar conexiones de API de OpenAI, presione + para el tipo de conexión en el lado derecho.
- Cambie el tipo de conexión a Local.
- Establezca la URL en
http://host.docker.internal:8000/v1 - Presione Guardar.
Referencia: Inicio rápido/Abrir interfaz de usuario web
Usar Open WebUI
Utilice su navegador para conectarse a este enlace http://localhost:3000/ y comience a chatear, Open WebUI detecta automáticamente el modelo. Puede mantener el contenedor activo y cambiar los modelos que se ejecutan mediante vLLM, o detener el contenedor mediante los comandos de la sección 4: Inicie Open WebUI Container.
Referencia: Inicio | Abra la interfaz de usuario web