Inicio Rápido

Esta guía te ayudará a comenzar rápidamente con CapibaraGPT-v2, el modelo de lenguaje con JAX nativo, Vector Quantization (VQ), y optimizaciones TPU v4-32 completamente funcionales.

🏆 Estado del Proyecto: 100% FUNCIONAL - SISTEMA COMPLETAMENTE OPERATIVO

Instalación Rápida

# Clonar el repositorio
git clone https://github.com/user/CapibaraGPT-v2.git
cd CapibaraGPT-v2

# Instalar dependencias
pip install -r requirements.txt

# Instalación en modo desarrollo
pip install -e .

Verificación de la Instalación

# Test de importación principal - debe funcionar sin errores
import capibara
print("✅ CapibaraGPT-v2 importado correctamente")

# Verificar módulos principales
from capibara.core import ModularCapibaraModel
from capibara.config import ModularModelConfig
from capibara.vq.vqbit import VQbitLayer
print("✅ Módulos principales funcionales")

Configuración Inicial

CapibaraGPT-v2 utiliza configuración TOML optimizada:

from capibara.config import ModularModelConfig

# Configuración desde archivo TOML (recomendado)
config = ModularModelConfig.from_toml(
    "capibara/config/configs_toml/production/tpu_v4.toml"
)

# Configuración programática personalizada
config = ModularModelConfig(
    model_name="capibara_lite_300m",
    hidden_size=768,
    num_layers=12,
    num_heads=12,
    vocab_size=32000,

    # JAX nativo y optimizaciones
    use_jax_native=True,
    use_tpu_v4_optimizations=True,

    # Vector Quantization
    use_vq=True,
    vq_codes=64,  # 64 para TPU v4, 128 para TPU v6

    # Sparsity y optimizaciones
    use_sparse=True,
    sparsity_ratio=0.65,
    mixed_precision=True
)

Carga del Modelo Principal

from capibara.core import ModularCapibaraModel

# Crear modelo con JAX nativo y optimizaciones TPU
model = ModularCapibaraModel(config)

# Inicializar modelo (configuración automática de hardware)
model.initialize()

print(f"✅ Modelo cargado: {model.config.model_name}")
print(f"🔧 JAX nativo: {model.config.use_jax_native}")
print(f"🎯 VQ codes: {model.config.vq_codes}")
print(f"⚡ TPU v4 optimizations: {model.config.use_tpu_v4_optimizations}")

Generación de Texto Básica

# Generación básica con optimizaciones automáticas
prompt = "Explica Vector Quantization en machine learning:"

response = model.generate(
    prompt,
    max_length=150,
    temperature=0.7,
    use_vq=True,           # Usar Vector Quantization
    use_sparse=True,       # Activar sparsity automática
    tpu_optimized=True     # Usar optimizaciones TPU
)

print("🤖 Respuesta:", response)

Generación Avanzada con VQ

from capibara.vq.vqbit import VQbitLayer

# VQbit Layer para quantización avanzada
vqbit = VQbitLayer(
    codebook_size=64,      # 64 códigos para TPU v4
    embedding_dim=768,
    use_tpu_optimizations=True
)

# Generación con VQ personalizado
vq_response = model.generate_with_vq(
    prompt,
    vqbit_layer=vqbit,
    quantization_strength=0.8,
    adaptive_threshold=0.5
)

print("🎯 Respuesta VQ:", vq_response)

Entrenamiento y Fine-tuning

from capibara.training.unified_trainer import UnifiedTrainer
from capibara.data import CapibaraDataset

# Preparar datos
dataset = CapibaraDataset.from_text_file("datos_entrenamiento.txt")

# Configurar trainer con optimizaciones TPU
trainer = UnifiedTrainer(
    model=model,
    dataset=dataset,
    batch_size=32,
    learning_rate=1e-4,
    use_tpu_v4=True,
    mixed_precision=True
)

# Entrenamiento con consensus distilling automático
trainer.train(
    epochs=3,
    save_checkpoints=True,
    checkpoint_dir="./checkpoints"
)

Agentes Inteligentes

from capibara.agents import CapibaraAgentFactory

# Crear agente especializado
agent = CapibaraAgentFactory.create_agent(
    agent_type="research_assistant",
    model=model,
    personality="analytical",
    specialized_knowledge=["machine learning", "vector quantization"]
)

# Interacción con el agente
response = agent.process_query(
    "¿Cómo funciona la quantización vectorial en transformers?"
)

print("🤖 Agente:", response)

Monitoreo en Tiempo Real

from capibara.monitoring import SystemMonitor

# Monitor de sistema con métricas TPU
monitor = SystemMonitor(model)

# Obtener métricas en tiempo real
metrics = monitor.get_real_time_metrics()

print("📊 Métricas del sistema:")
print(f"   💾 Memoria TPU: {metrics['tpu_memory_usage']:.1f}%")
print(f"   🔥 Temperatura: {metrics['temperature']:.1f}°C")
print(f"   ⚡ TFLOPS: {metrics['tflops']:.1f}")
print(f"   🎯 VQ efficiency: {metrics['vq_efficiency']:.1f}%")
print(f"   💰 Cost/hour: ${metrics['cost_per_hour']:.4f}")

Configuración Multi-Plataforma

TPU v4-32 (Recomendado)

config = ModularModelConfig.from_toml(
    "capibara/config/configs_toml/production/tpu_v4.toml"
)
# 64 códigos VQ, 275 TFLOPS, optimizaciones nativas

ARM Axion (Cost-Effective)

config = ModularModelConfig.from_toml(
    "capibara/config/configs_toml/specialized/arm_axion_inference.toml"
)
# 64 códigos VQ, SVE vectorization, UMA memory

GPU/CPU (Fallback)

config = ModularModelConfig.from_toml(
    "capibara/config/configs_toml/development/development.toml"
)
# Fallback automático, optimizaciones disponibles

Debugging y Troubleshooting

# Verificar estado del sistema
from capibara.utils import SystemDiagnostics

diagnostics = SystemDiagnostics()

# Check completo del sistema
status = diagnostics.run_full_check()

print("🔍 Diagnóstico del sistema:")
for component, status in status.items():
    icon = "✅" if status["healthy"] else "❌"
    print(f"   {icon} {component}: {status['message']}")

# Check específico de imports
import_status = diagnostics.check_imports()
print(f"📦 Imports: {len(import_status['successful'])} OK, {len(import_status['failed'])} errores")

Ejemplos de Uso Avanzado

Generación con Control de Estilo

response = model.generate_with_style(
    prompt="Describe la cuantización vectorial",
    style="academic",           # 'academic', 'casual', 'technical'
    complexity_level=0.8,       # 0.0-1.0
    use_vq=True,
    temperature=0.6
)

Procesamiento por Lotes

prompts = [
    "Explica VQ en términos simples",
    "Ventajas de TPU v4 vs GPU",
    "Diferencias entre sparsity y quantization"
]

responses = model.generate_batch(
    prompts,
    max_length=100,
    use_vq=True,
    batch_size=8
)

Integración con Meta Loop (Elixir/OTP)

from capibara.meta_loop import CapibaraBridge

# Bridge Python-Elixir para capacidades avanzadas
bridge = CapibaraBridge(model)

# RAG con control ético
rag_response = bridge.query_with_rag(
    prompt,
    ethics_check=True,
    knowledge_base="ml_papers",
    confidence_threshold=0.8
)

Guardar y Cargar Modelos

# Guardar modelo con configuración
model.save_pretrained(
    "./mi_modelo_vq",
    save_config=True,
    save_vq_codebooks=True,
    compress=True
)

# Cargar modelo guardado
loaded_model = ModularCapibaraModel.from_pretrained(
    "./mi_modelo_vq",
    config_path="./mi_modelo_vq/config.toml"
)

Optimizaciones de Rendimiento

# Compilación JIT para máximo rendimiento
model.compile_for_inference(
    input_shapes=[(1, 512)],   # Shapes típicos
    optimization_level="aggressive",
    cache_compiled=True
)

# Warmup para TPU
model.warmup_tpu(num_steps=10)

# Configurar cache optimizado
model.setup_optimized_cache(
    cache_size_gb=4.0,
    use_tpu_memory=True
)

Siguientes Pasos

  • Explora la configuración avanzada

  • Revisa los ejemplos específicos

  • Consulta la referencia de API

  • Únete a nuestra comunidad para soporte técnico

  • Contribuye al desarrollo en GitHub

Recursos Adicionales

  • Documentación TPU v4: tpu_v4/optimizations

  • Sistema VQ: layers/vq_layers

  • JAX Nativo: jax/native_implementation

  • Testing: testing/comprehensive_testing