> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zylon.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Opciones de Configuración

> Configura capacidades mejoradas, configuraciones multi-GPU y memoria compartida para un rendimiento óptimo

## Capacidades Mejoradas

Zylon admite capacidades adicionales que se pueden combinar con cualquier preset base o alternativo. Estas capacidades extienden la funcionalidad pero **no están habilitadas por defecto**.

### Capacidades Disponibles

| Capacidad | Descripción | Casos de Uso de Ejemplo | Modelos |
| - | - | - | - |
| `multilingual` | Soporte mejorado para idiomas más allá del inglés | Documentos internacionales, procesamiento de contenido no inglés | intfloat/multilingual-e5-large |

### Agregar Capacidades

Las capacidades se agregan a los presets usando un formato separado por comas: `<base_preset>,<capability1>,<capability2>`

**Ejemplos:**

```yaml theme={null}
# Preset base con capacidad multilingüe
ai:
  preset: "baseline-48g,capabilities.multilingual"

# Preset alternativo con capacidad multilingüe
ai:
  preset: "alternatives.baseline-48g-context,capabilities.multilingual"

# Múltiples capacidades (si más están disponibles)
ai:
  preset: "baseline-48g,capabilities.multilingual,capabilities.feature2"
```

<Tip>
  Las capacidades se pueden apilar con cualquier tipo de preset incluyendo presets base, alternativos y experimentales.
</Tip>

## Configuración Multi-GPU

Si tu sistema tiene múltiples GPUs, puedes combinar su capacidad de memoria para usar presets de nivel superior. Selecciona el preset basado en **VRAM total combinado** en todas las GPUs.

### Pasos de Configuración

1. **Calcula el VRAM total**: Suma la memoria de todas las GPUs
2. **Selecciona el preset apropiado**: Elige el preset para la memoria total
3. **Configura el conteo de GPU**: Establece el parámetro `numGPUs`

**Ejemplo de Configuración:**

```yaml theme={null}
ai:
  preset: "baseline-48g"
  numGPUs: 2  # Usando 2 GPUs con 24GB cada una (48GB total)
```

### Ejemplos de Configuración Multi-GPU

| Configuración de Hardware | Memoria GPU Individual | VRAM Total | Preset Recomendado | Configuración |
| - | - | - | - | - |
| 2x RTX 4090 | 24GB cada una | 48GB | `baseline-48g` | `numGPUs: 2` |
| 2x L4 | 24GB cada una | 48GB | `baseline-48g` | `numGPUs: 2` |
| 4x RTX 4090 | 24GB cada una | 96GB | `baseline-96g` | `numGPUs: 4` |
| 2x RTX A6000 | 48GB cada una | 96GB | `baseline-96g` | `numGPUs: 2` |

### Mejores Prácticas Multi-GPU

* Asegúrate de que todas las GPUs sean del mismo modelo para un rendimiento óptimo
* Verifica un ancho de banda PCIe adecuado entre las GPUs
* Monitorea la utilización de GPU para asegurar una carga equilibrada
* Considera conexiones NVLink para mejor comunicación entre GPUs cuando esté disponible

**Ejemplo Completo Multi-GPU:**

```yaml theme={null}
ai:
  preset: "baseline-96g,capabilities.multilingual"
  numGPUs: 4  # 4x RTX 4090 (24GB cada una = 96GB total)
```

## Configuración de Memoria Compartida

El Servidor de Inferencia Triton usa memoria compartida para habilitar transferencia de datos sin copia entre los servicios de Zylon y el motor de inferencia. Esto elimina la sobrecarga de serialización y mejora significativamente el rendimiento de inferencia y reduce la latencia para cargas de trabajo de alto volumen.

### Asignación por Defecto

Por defecto, el servidor de inferencia asigna **2GB de RAM** para memoria compartida. Esto es suficiente para la mayoría de las cargas de trabajo de inferencia basadas en texto.

### Cuándo Aumentar la Memoria Compartida

Puedes encontrar errores de `Shared memory allocation failed` en estos escenarios:

* **Colas de solicitudes grandes**: Procesar grandes volúmenes de solicitudes concurrentes donde la entrada en cola excede la memoria compartida disponible
* **Modelos basados en imágenes**: Cargas de trabajo de visión que requieren múltiples megabytes por imagen donde lotes de imágenes de alta resolución agotan rápidamente la asignación por defecto
* **Procesamiento de documentos grandes**: Manejar documentos muy grandes o múltiples documentos simultáneamente

### Configuración

Para aumentar el límite de memoria compartida, actualiza tu archivo de configuración de Zylon:

```yaml theme={null}
triton:
  sharedMemory:
    limit: "4Gi"  # Aumentar desde el defecto 2Gi
```

### Memoria Compartida Recomendada por Caso de Uso

| Caso de Uso | Límite Recomendado | Razón |
| - | - | - |
| Inferencia solo texto | 2Gi (defecto) | Suficiente para la mayoría de cargas de trabajo de texto |
| Tareas de visión de bajo volumen | 4Gi | Maneja procesamiento ocasional de imágenes |
| Tareas de visión de alto volumen | 8Gi | Soporta procesamiento por lotes de imágenes |
| Cargas de trabajo mixtas pesadas | 8-16Gi | Acomoda texto y visión concurrentes |

<Warning>
  **Consideraciones importantes al aumentar la memoria compartida:**

  * Asignar memoria compartida excesiva puede causar que los pods sean OOMKilled
  * Sé conservador con los aumentos—comienza con incrementos pequeños (ej., 2Gi → 4Gi)
  * Monitorea el uso real con métricas de Kubernetes antes de aumentos adicionales
  * La memoria compartida se reserva de la RAM del sistema, reduciendo la memoria disponible para otros procesos
</Warning>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.