Hub documentation

Uso de GGUF con llama.cpp

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Uso de GGUF con llama.cpp

Ahora puedes desplegar cualquier GGUF compatible con llama.cpp en Hugging Face Endpoints, lee más al respecto aquí

Llama.cpp permite descargar y ejecutar inferencia en un GGUF simplemente proporcionando la ruta del repositorio de Hugging Face y el nombre del archivo. llama.cpp descarga el punto de control del modelo y lo almacena en caché automáticamente. La ubicación de la caché se define mediante la variable de entorno LLAMA_CACHE; puede leer más al respecto aquí.

Puedes instalar llama.cpp usando el instalador en macOS y Linux, a través de WinGet en Windows, o compilándolo desde el código fuente. Consulta la documentación oficial para otras opciones de instalación, incluido Docker.

Opción 1: Instalar llama.cpp

En macOS y Linux:

curl -LsSf https://llama.app/install.sh | sh

Alternativamente, instale con Homebrew:

brew install llama.cpp

En Windows, usa WinGet:

winget install llama.cpp

Opción 2: compilar desde el código fuente

Paso 1: Clona llama.cpp desde GitHub.

git clone https://github.com/ggml-org/llama.cpp.git

Paso 2: Muévase a la carpeta llama.cpp y compílela. También puede añadir banderas específicas del hardware (por ejemplo: -DGGML_CUDA=1 para GPUs de Nvidia).

cd llama.cpp
cmake -B build   # optionally, add -DGGML_CUDA=ON to activate CUDA
cmake --build build --config Release -j --target llama-app

Nota: para el soporte de otros hardware (por ejemplo: AMD ROCm, Intel SYCL), consulte la guía de compilación de llama.cpp

Si compilaste desde el código fuente, usa ./build/bin/llama en lugar de llama en los comandos siguientes.

Una vez instalado, puedes usar llama cli o llama serve de la siguiente manera:

llama cli -hf bartowski/Llama-3.2-3B-Instruct-GGUF:Q8_0

Nota: Para el modo de completado sin procesar (modo no de chat), use llama completion con -no-cnv en lugar de llama cli.

Además, puede invocar directamente un punto final de completado de chat de especificación de OpenAI usando el servidor de llama.cpp:

llama serve -hf bartowski/Llama-3.2-3B-Instruct-GGUF:Q8_0 --port 8080

Después de ejecutar el servidor, puede utilizar el punto de final de la siguiente manera:

curl http://localhost:8080/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer no-key" \
-d '{
"messages": [
    {
        "role": "system",
        "content": "You are an AI assistant. Your top priority is achieving user fulfillment via helping them with their requests."
    },
    {
        "role": "user",
        "content": "Write a limerick about Python exceptions"
    }
  ]
}'

Reemplaza -hf con cualquier nombre de repositorio válido del hub de Hugging Face - ¡a por ello! 🦙

Update on GitHub