CLI multimodal de llama.cpp (fork TurboQuant) con soporte cross-platform: Linux, macOS y Windows.
curl -sSL https://github.com/johpaz/hive-cli/releases/latest/download/install.sh | bashDetecta automáticamente tu OS, arquitectura y backend óptimo (CUDA > Vulkan > Metal > CPU).
iwr -Uri https://github.com/johpaz/hive-cli/releases/latest/download/install.ps1 -OutFile install.ps1
.\install.ps1Descarga el binario para tu plataforma desde Releases.
| Asset | Backend | Plataforma |
|---|---|---|
hive-cli-linux-amd64-cpu |
CPU | Linux x86_64 |
hive-cli-linux-amd64-vulkan |
Vulkan | Linux x86_64 |
hive-cli-linux-amd64-cuda |
CUDA | Linux x86_64 (NVIDIA) |
hive-cli-linux-arm64-cpu |
CPU | Linux ARM64 |
hive-cli-darwin-amd64-cpu |
CPU | macOS Intel |
hive-cli-darwin-amd64-metal |
Metal | macOS Intel |
hive-cli-darwin-arm64-cpu |
CPU | macOS Apple Silicon |
hive-cli-darwin-arm64-metal |
Metal | macOS Apple Silicon |
hive-cli-windows-amd64-cpu.exe |
CPU | Windows x86_64 |
hive-cli-windows-amd64-vulkan.exe |
Vulkan | Windows x86_64 |
hive-cli-windows-amd64-cuda.exe |
CUDA | Windows x86_64 (NVIDIA) |
- CPU/cpu: cualquier sistema
- Vulkan: drivers Vulkan funcionales
- CUDA: GPU NVIDIA con drivers CUDA
- Metal: macOS 10.14+ (Intel) o macOS 11+ (Apple Silicon)
- ~71 MB libres para el binario + espacio para modelos (~4-8 GB por modelo)
.
├── bin/
│ ├── hive-cli ← Ejecutable principal
│ └── llama-bench ← Herramienta de benchmark
├── models/
│ ├── gemma-4-E4B-it-UD-IQ3_XXS.gguf ← Texto + Imagen (rápido)
│ ├── gemma-4-E4B-it-UD-Q8_K_XL.gguf ← Texto + Imagen (calidad)
│ ├── gemma-4-E2B-it-UD-IQ3_XXS.gguf ← Texto + Audio (más rápido)
│ ├── gemma-4-E2B-it-UD-Q8_K_XL.gguf ← Texto + Audio (calidad)
│ └── mmproj-BF16.gguf ← Proyector multimodal
├── run.sh ← Script interactivo (5 modos)
├── run-texto.sh ← Modo texto directo
├── run-imagen.sh ← Modo imagen directo
├── run-audio.sh ← Modo audio directo
├── run-all.sh ← Modo completo: texto + imagen + audio
├── benchmark.sh ← Script de benchmark
├── README.md ← Este archivo
└── results/
└── benchmark_summary.md ← Resultados de rendimiento
chmod +x run.sh
./run.shEl script mostrará un menú para elegir entre:
- Texto - E2B, máxima velocidad (~55 t/s)
- Imagen - E4B, visión multimodal (~30 t/s)
- Audio - E2B, audio multimodal (~55 t/s)
- Texto+Imagen - E4B, ambos modos
- Texto+Audio - E2B, ambos modos
./run-texto.sh
# o manualmente:
./bin/hive-cli -m models/gemma-4-E2B-it-UD-IQ3_XXS.gguf -ngl 999 -fa -p "Tu prompt"./run-imagen.sh
# o manualmente:
./bin/hive-cli -m models/gemma-4-E4B-it-UD-IQ3_XXS.gguf \
--mmproj models/mmproj-BF16.gguf \
--image foto.jpg -p "Describe esta imagen"./run-audio.sh
# o manualmente:
./bin/hive-cli -m models/gemma-4-E2B-it-UD-IQ3_XXS.gguf \
--mmproj models/mmproj-BF16.gguf \
--audio audio.wav -p "Transcribe este audio"./run-all.shEste modo interactivo permite combinar las 3 modalidades simultáneamente:
- Pregunta por modelo base (E4B para imagen, E2B para audio)
- Solicita ruta de imagen (opcional)
- Solicita ruta de audio (opcional)
- Solicita prompt de texto
- Pasa todos los inputs al modelo multimodal
| Modelo | Cuantización | Prompt 512 | Generación 128 | Uso |
|---|---|---|---|---|
| E2B | IQ3_XXS | 452 t/s | 55.7 t/s | Texto rápido |
| E2B | Q8_K_XL | 697 t/s | 27.9 t/s | Texto calidad |
| E4B | IQ3_XXS | 193 t/s | 30.8 t/s | Texto + Imagen |
| E4B | Q8_K_XL | 341 t/s | 13.7 t/s | Texto + Imagen (calidad) |
Nota: TurboQuant (turbo3/turbo4) NO acelera en Ryzen 680M porque esta iGPU no tiene Tensor/MMA Cores. Solo sirve para ahorrar VRAM en GPUs dedicadas.
| Flag | Descripción |
|---|---|
-ngl 999 |
Offload máximo de capas a GPU |
-fa / --flash-attn on |
Flash Attention (menor uso de memoria + más rápido) |
--cache-type-k f16 |
KV cache K en f16 (máxima velocidad en 680M) |
--cache-type-v f16 |
KV cache V en f16 |
-t $(nproc) |
Usa todos los hilos CPU |
./benchmark.shLos releases se generan automáticamente via GitHub Actions. Ejecutar manualmente desde el repo:
cd llama-cpp-turboquant
# CPU only
cmake -B build -DCMAKE_BUILD_TYPE=Release -DGGML_NATIVE=OFF
cmake --build build --config Release -j$(nproc)
# Con backend específico
cmake -B build -DCMAKE_BUILD_TYPE=Release -DGGML_VULKAN=ON # o CUDA/Metal
cmake --build build --config Release -j$(nproc)El binario se genera como build/bin/hive-cli.
Para crear un release con todas las plataformas, ve a Actions → Release y ejecuta el workflow con el número de versión deseado.
Ver licencias originales en el repositorio fuente de llama.cpp.