69 lines
1.7 KiB
Markdown
69 lines
1.7 KiB
Markdown
# ADR-001: Runtime Selection
|
|
|
|
## Status
|
|
Accepted
|
|
|
|
## Date
|
|
2026-01-20
|
|
|
|
## Context
|
|
|
|
Necesitamos seleccionar el runtime para ejecutar el modelo LLM local. Las opciones principales son:
|
|
|
|
1. **Windows + Ollama**: El sistema actual ya tiene Ollama instalado en Windows
|
|
2. **WSL + vLLM**: vLLM ofrece capacidades avanzadas pero requiere Linux
|
|
|
|
### Analisis Comparativo
|
|
|
|
| Criterio | Windows (Ollama) | WSL (vLLM) |
|
|
|----------|------------------|------------|
|
|
| Setup | Simple (ya instalado) | Requiere config GPU |
|
|
| vLLM support | Limitado | Completo |
|
|
| Multi-LoRA | No | Si |
|
|
| Continuous Batching | Basico | Avanzado |
|
|
| Overhead | Ninguno | ~5-10% |
|
|
| Produccion Ready | No recomendado | Recomendado |
|
|
|
|
## Decision
|
|
|
|
**Estrategia hibrida:**
|
|
|
|
1. **MVP (Fase 1)**: Windows + Ollama
|
|
- Usa infraestructura existente (puerto 11434)
|
|
- Implementacion rapida
|
|
- Suficiente para validar arquitectura
|
|
|
|
2. **Produccion (Fase 3)**: WSL + vLLM
|
|
- Capacidades completas de Multi-LoRA
|
|
- Continuous batching optimizado
|
|
- Mejor rendimiento con multiples agentes
|
|
|
|
## Consequences
|
|
|
|
### Positivas
|
|
- MVP funcional en dias, no semanas
|
|
- Validacion temprana de la arquitectura
|
|
- Path claro hacia produccion
|
|
|
|
### Negativas
|
|
- Dos implementaciones de backend a mantener
|
|
- Migracion requerida en Fase 3
|
|
- Algunas features (Multi-LoRA) no disponibles hasta Fase 3
|
|
|
|
## Implementation Notes
|
|
|
|
El Inference Engine debe abstraer el backend detras de una interfaz comun:
|
|
|
|
```python
|
|
class InferenceBackend(ABC):
|
|
@abstractmethod
|
|
async def chat_completion(self, messages, **kwargs) -> CompletionResponse:
|
|
pass
|
|
|
|
class OllamaBackend(InferenceBackend): # MVP
|
|
...
|
|
|
|
class VLLMBackend(InferenceBackend): # Produccion
|
|
...
|
|
```
|