Skip to content

Capítulo 7: Configuración Avanzada

Este capítulo cubre casos de uso avanzados y configuraciones especiales.

Opciones de Línea de Comandos

Lista Completa de Opciones

bash
python main.py --help
usage: main.py [-h] [--list-models] [--model MODEL] [--params-b PARAMS_B]
               [--context CONTEXT] [--quantization {fp16,int8,int4}]
               [--format {fp16,gguf,exl2,gptq,awq}] [--mode {development,production}]
               [--gpu GPU] [--only-runs] [--optimize-config] [--cpu-offload]
               [--system-ram SYSTEM_RAM] [--pcie-gen {3.0,4.0,5.0}]
               [--multi-gpu] [--multi-gpu-mode {tensor,pipeline}]
               [--gpu-config GPU_CONFIG] [--gguf-file GGUF_FILE]
               [--output {json,csv}]

Casos de Uso Avanzados

1. Planificación de Compra de GPU

bash
# ¿Qué GPU necesito para 70B con contexto 8K?
python main.py --model 70 --context 8192 --only-runs

# Output muestra todas las GPUs compatibles

Útil para:

  • Decidir qué GPU comprar
  • Comparar costos-beneficios
  • Planificar upgrade

2. Optimización de Recursos Existentes

bash
# Encontrar la mejor configuración posible
python main.py --model 70 --context 8192 --gpu "RTX 4090"

# Probar diferentes cuantizaciones
python main.py --model 70 --context 8192 -q fp16  # FP16
python main.py --model 70 --context 8192 -q int8   # INT8
python main.py --model 70 --context 8192 -q int4   # INT4

3. Uso como Librería

python
from calculator import VRAMCalculator
from models import get_model
from gpus import get_gpu_by_name

# Calcular VRAM
model = get_model("llama-7b")
gpu = get_gpu_by_name("RTX 4090")

calculator = VRAMCalculator()
result = calculator.calculate(model, gpu, context=8192)

print(f"VRAM requerida: {result.total_vram_gb} GB")

4. Exportar Resultados

bash
# JSON
python main.py --model 70 --context 8192 --output json > resultado.json

# CSV
python main.py --model 70 --context 8192 --output csv > resultado.csv

Modos de Operación

Development

bash
python main.py --model 7 --context 8192 --mode development
  • Menor footprint de VRAM
  • Optimizado para iteración rápida
  • Batch size menor

Production

bash
python main.py --model 7 --context 8192 --mode production
  • Mayor throughput
  • Más VRAM para buffer
  • Mejor para inference continua

Entorno Google Colab

bash
# Verificar GPUs disponibles en Colab
python main.py --list-models

# Colab typical GPUs:
# - T4 (15GB)
# - V100 (16GB)
# - A100 (40GB)

Comandos útiles en Colab:

bash
# Verificar GPU
!nvidia-smi

#VRAM libre
!free -h

Variables de Entorno

bash
# Personalizar comportamiento
LIC_BATCH_SIZE=4 python main.py --model 7
LIC_DEFAULT_FORMAT=gguf python main.py --model 7

Workflows Comunes

Workflow 1: Evaluación Inicial

bash
# 1. Ver qué modelos caben en mi GPU
python main.py --only-runs

# 2. Ver requisitos específicos
python main.py --model 7 --context 8192
python main.py --model 13 --context 4096

# 3. Optimizar si es necesario
python main.py --model 70 --optimize-config -q int4

Workflow 2: Planificación de Proyecto

bash
# 1. Definir requisitos
# - Modelo: 70B
# - Contexto: 16K
# - Uso: chat

# 2. Calcular recursos
python main.py --model 70 --context 16384

# 3. Si no cabe: iterar
# - Reducir contexto
# - Usar mayor cuantización
# - Considerar multi-GPU

Workflow 3: Setup de Servidor

bash
# 1. Ver hardware disponible
python main.py --gpu "A100 (80GB)"

# 2. Calcular capacidad
python main.py --model 70 --context 4096

# 3. Configurar servicios
# - Docker container
# - llama.cpp server
# - API endpoint

Integración con Herramientas

llama.cpp

bash
# Después de calcular config
python main.py --model 70 --optimize-config -q int4

# Usar parámetros sugeridos:
./main -m model.bin --gpu-layers 20 -n 4096

Ollama

bash
# Ver modelos disponibles en Ollama
python main.py --list-models | grep -i ollama

Text Generation WebUI

bash
# Calcular para webui
python main.py --model 7 --format exl2

# Configurar en webui:
# --model_dir
# --extensions api

Tips y Trucos

Optimizar el Contexto

bash
# No pedir más contexto del necesario
python main.py --model 7 --context 2048  # Más rápido
python main.py --model 7 --context 8192  # Más VRAM

Balance Calidad-VRAM

Monitoreo

bash
# Monitorear VRAM durante inference
nvidia-smi -l 1

# Ver uso de memoria
python main.py --model 7 -c 8192 --verbose

Conclusión

Local Inference Calculator es una herramienta poderosa para:

  • ✅ Planificar infraestructura de inference
  • ✅ Optimizar uso de recursos
  • ✅ Tomar decisiones de compra
  • ✅ Configurar despliegues

Explora todas las opciones y encuentra la mejor configuración para tu caso de uso específico.


repositorio Original

🔗 Ver en GitHub


Fin del libro - Generado automáticamente