llama.cpp
Pi admite el servidor enrutador llama.cpp. El enrutador descubre múltiples modelos GGUF y los carga o descarga según demanda.
Utilice una compilación llama.cpp actual con soporte para enrutador. Siga el build instructions o instale un prebuilt release para su plataforma.
Inicie el enrutador
Comience llama-server sin --model o -m. Al pasar un modelo se inicia el modo de modelo único en lugar del modo de enrutador.
llama-server \
--models-dir ~/models \
--no-models-autoload \
--jinja \
--host 127.0.0.1 \
--port 8080 \
-ngl 999 \
-c 32768Opciones importantes:
--models-dir ~/modelsdescubre archivos GGUF locales.--no-models-autoloadsigue cargándose de forma explícita hasta/llama.--jinjahabilita plantillas de chat compatibles y llamadas de herramientas.-ngl 999descarga tantas capas como sea posible a la GPU.-c 32768establece la ventana de contexto para cada modelo cargado. Omítalo para utilizar el contexto nativo del modelo, que puede requerir mucha más memoria.
Un modelo de un solo archivo puede ubicarse directamente en el directorio del modelo. Coloque los modelos multimodales y de múltiples fragmentos en subdirectorios separados:
~/models/
├── llama-3.2-1b-Q4_K_M.gguf
├── gemma-3-4b-it-Q4_K_M/
│ ├── gemma-3-4b-it-Q4_K_M.gguf
│ └── mmproj-F16.gguf
└── large-model-Q4_K_M/
├── large-model-Q4_K_M-00001-of-00003.gguf
├── large-model-Q4_K_M-00002-of-00003.gguf
└── large-model-Q4_K_M-00003-of-00003.ggufReinicie el enrutador después de agregar archivos manualmente. Para tamaños de contexto por modelo y otras opciones, utilice llama.cpp model presets.
Configurar Pi
Inicie Pi y configure el proveedor:
/login llama.cppIngrese la URL del enrutador y opcional API key. La URL predeterminada es http://127.0.0.1:8080.
Las variables de entorno pueden configurar los mismos valores sin /login:
export LLAMA_BASE_URL=http://127.0.0.1:8080
export LLAMA_API_KEY=optional-secret
piSi el servidor usa un API key, comience llama-server con el valor --api-key correspondiente. Mantenga --host 127.0.0.1 para acceso solo local.
Administrar modelos
Correr:
/llama- Seleccione un modelo descargado para cargarlo.
- Seleccione un modelo cargado para descargarlo.
- Seleccione Descargar modelo…, busque Hugging Face, luego elija un repositorio y una cuantificación. Los valores exactos de
owner/repository[:quant]también funcionan. - Presione Escape durante una carga o descarga para confirmar la cancelación.
La búsqueda Hugging Face usa HF_TOKEN cuando está configurada, luego verifica $HF_TOKEN_PATH, $HF_HOME/token, $XDG_CACHE_HOME/huggingface/token y ~/.cache/huggingface/token. La búsqueda también funciona sin autenticación, sujeta a límites de tarifas más bajos. Pi advierte antes de descargar repositorios privados y enlaces a su página de acceso. El servidor llama.cpp realiza la descarga, por lo que su proceso también debe tener HF_TOKEN cuando el repositorio seleccionado requiera acceso.
Si se cargan otros modelos, Pi pregunta si desea descargarlos primero o mantenerlos cargados. Pi no descarga modelos silenciosamente y nunca elimina archivos de modelos. El enrutador se puede compartir con otros clientes, por lo que /llama siempre muestra el estado actual del enrutador.
Solo los modelos cargados aparecen en /model. Después de cargar un modelo, ejecute /model para seleccionarlo para la sesión Pi actual.
Si el enrutador se desconecta, /llama muestra Reintentar y Cerrar. Reintentar reconecta y actualiza el estado del modelo sin reproducir la operación interrumpida.
Solución de problemas
Verifique que el enrutador sea accesible:
curl http://127.0.0.1:8080/health
curl http://127.0.0.1:8080/models- No hay modelos en
/llama: Verifique--models-dir, el diseño del directorio, y reinicie el enrutador. - Falta el modelo de
/model: Cárgalo con/llamaprimero. - La carga falla o usa demasiada memoria: Baje
-co descargue otro modelo. - El servidor no está en modo enrutador: Inícielo sin
--model,-mo-hf.