Capítulo 2: Técnicas de Combinación de Modelos
Combinando modelos para mejores resultados
La combinación de modelos une varios modelos ajustados por fine-tuning en uno solo.
Métodos de combinación
| Método | Descripción | Mejor para |
|---|---|---|
| Lineal | Promedio de pesos | Combinación simple |
| SLERP | Interpolación esférica | Mezcla suave |
| TIES | Resolución de conflictos | Múltiples expertos |
| DARE | Eliminación y reescalado | Modelos diversos |
Combinación LoRA
# Merge LoRA into base model
from peft import PeftModel
model = PeftModel.from_pretrained(base_model, "adapter_path")
merged_model = model.merge_and_unload()
merged_model.save_pretrained("merged_model")
Ejemplo de MergeKit
# config.yaml
slices:
- sources:
- model: base_model
layer_range: [0, 32]
- model: finetuned_model
layer_range: [0, 32]
merge_method: slerp
base_model: base_model
parameters:
t: 0.5 # Interpolation factor
dtype: bfloat16
mergekit-yaml config.yaml ./merged_output
Cuándo combinar
✅ Combine cuando:
- Se combinan modelos específicos para tareas
- Se despliega una arquitectura más simple
- No se necesita cambiar de adaptador
❌ Mantenga separados cuando:
- Se necesita cambiar de tarea dinámicamente
- El almacenamiento es limitado
- Se desea actualizar tareas de forma independiente