Repolode
microsoft

microsoft/vidur

Simulador de alta fidelidad para sistemas de inferencia de LLM que permite estudiar el rendimiento, planificar despliegues y probar estrategias de planificación sin GPU.

Estrellas
720
Forks
142
Issues abiertos
24
Último commit
hace 3 meses

¿Qué es?

Vidur simula cómo se atienden solicitudes de modelos de lenguaje de gran tamaño en clústeres de GPU. Modela métricas como el tiempo hasta el primer token (TTFT), el tiempo por token de salida (TPOT), la latencia de extremo a extremo de las solicitudes y el tamaño de lote, según la carga de trabajo, el modelo y la configuración de hardware elegidos. El simulador requiere una breve fase inicial de perfilado en GPU reales; después, los experimentos se ejecutan sin acceso a GPU.

Sus principales usos son estudiar cómo se comportan los modelos con distintos patrones de tráfico, buscar el despliegue más rentable (por ejemplo, la configuración de paralelismo de tensores y de canalización que cumple un SLO determinado) y crear prototipos de nuevos algoritmos de planificación u optimizaciones, como la decodificación especulativa. Entre los modelos compatibles se incluyen Llama-2, Llama-3, CodeLlama, InternLM y Qwen, en configuraciones de nodos A100, H100 y A40. Las cargas de trabajo pueden generarse de forma sintética o provenir de trazas de inferencia de Azure LLM. Los resultados se registran en wandb o en archivos locales, y se pueden exportar como trazas de Chrome.

Funciones clave

  • 01Calcula el TTFT, el TPOT, la latencia de extremo a extremo y el tamaño de lote para cargas de trabajo de inferencia de LLM.
  • 02Se ejecuta sin GPU después de una fase inicial de perfilado en el hardware de destino.
  • 03Admite distintas combinaciones de paralelismo de tensores y de canalización en varios tipos de nodos GPU.
  • 04Admite generadores de solicitudes sintéticas y trazas de inferencia de Azure LLM.
  • 05Exporta trazas de Chrome y registra métricas en wandb o en directorios de salida locales.
  • 06Se puede ampliar para probar nuevos planificadores y optimizaciones.

Casos de uso

  • Planificar la capacidad para encontrar el despliegue más económico que cumpla los objetivos de latencia.
  • Comparar políticas de planificación con la misma traza de tráfico.
  • Investigar la decodificación especulativa u otras optimizaciones de inferencia antes de implementarlas en GPU reales.
  • Estudiar cómo afectan el tamaño del modelo y la configuración de paralelismo al rendimiento de la inferencia.

Inicio rápido

  1. 1

    Crea un venv con Python 3.10

    python3.10 -m venv .venv
  2. 2

    Activa el entorno virtual

    source .venv/bin/activate
  3. 3

    Instala las dependencias

    python -m pip install -r requirements.txt
  4. 4

    Ejecuta el simulador desde la raíz del repositorio

    python -m vidur.main

Antes de usarlo

  • Se necesita Python 3.10 y una fase inicial de perfilado de GPU para los modelos o SKU nuevos.
  • Los modelos y el hardware compatibles se limitan a las configuraciones indicadas.
  • Algunas funciones, como el almacenamiento en caché de prefijos, solo están disponibles en la rama canary.

En colecciones

Temas

Preguntas frecuentes

¿Qué es vidur?
Simulador de alta fidelidad para sistemas de inferencia de LLM que permite estudiar el rendimiento, planificar despliegues y probar estrategias de planificación sin GPU. Vidur simula cómo se atienden solicitudes de modelos de lenguaje de gran tamaño en clústeres de GPU. Modela métricas como el tiempo hasta el primer token (TTFT), el tiempo por token de salida (TPOT), la latencia de extremo a extremo de las solicitudes y el tamaño de lote, según la carga de trabajo, el modelo y la configuración de hardware elegidos. El simulador requiere una breve fase inicial de perfilado en GPU reales; después, los experimentos se ejecutan sin acceso a GPU.
¿vidur es gratuito? ¿Qué licencia tiene?
vidur es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿vidur sigue mantenido?
Actualizado en los últimos 6 meses. El último commit de vidur fue el 24 ago 2026.
¿Para qué puedo usar vidur?
Planificar la capacidad para encontrar el despliegue más económico que cumpla los objetivos de latencia. Comparar políticas de planificación con la misma traza de tráfico. Investigar la decodificación especulativa u otras optimizaciones de inferencia antes de implementarlas en GPU reales. Estudiar cómo afectan el tamaño del modelo y la configuración de paralelismo al rendimiento de la inferencia.
¿Cómo se instala vidur?
Crea un venv con Python 3.10: python3.10 -m venv .venv Activa el entorno virtual: source .venv/bin/activate Instala las dependencias: python -m pip install -r requirements.txt Ejecuta el simulador desde la raíz del repositorio: python -m vidur.main
¿Dónde consigo vidur?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/microsoft/vidur

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados