NVIDIA Blackwell Establece Récord STAC-AI para Inferencia de LLM en Finanzas
Los modelos de lenguaje de gran escala (LLM) están revolucionando el panorama del trading financiero al permitir un análisis sofisticado de grandes volúmenes de datos no estructurados para generar insights de trading accionables. Estos avanzados sistemas de AI pueden procesar noticias financieras, sentimiento en redes sociales, informes de ganancias y datos de mercado para predecir movimientos de precios de acciones y automatizar estrategias de inversión con una precisión sin precedentes.
El Strategic Technology Analysis Center (STAC) lleva más de 15 años desarrollando benchmarks para las cargas de trabajo clave de la industria financiera. Ahora han desarrollado el benchmark STAC-AI para ayudar a las empresas a evaluar el pipeline de generación aumentada por recuperación (RAG) e inferencia de LLM de extremo a extremo.
Esta publicación presenta los resultados obtenidos en el benchmark STAC-AI LANG6 en múltiples plataformas NVIDIA. También compartiremos algunas recomendaciones sobre cómo cualquier usuario puede realizar benchmarks de NVIDIA TensorRT LLM de acuerdo con las especificaciones de su dataset.
Benchmark STAC-AI LANG6 (solo inferencia)
En el contexto más amplio de un pipeline RAG, STAC-AI LANG6 es la parte del benchmark que se enfoca en el rendimiento de inferencia de LLM. El benchmark evalúa el stack de hardware y software con los modelos Llama 3.1 8B Instruct y Llama 3.1 70B Instruct en combinación con los siguientes datasets personalizados:
- EDGAR4: Los prompts son resúmenes de la relación de una empresa con uno de varios conceptos físicos y financieros (como materias primas, divisas, tasas de interés y sectores inmobiliarios). Utiliza párrafos de formularios 10‑K de EDGAR de un único expediente de un valor para un único año. La longitud de las secuencias de entrada/salida busca modelar solicitudes de longitud media.
- EDGAR5: Preguntas que cubren varios aspectos distintos de un formulario 10‑K completo. El tipo de documento es el texto completo de un único formulario 10‑K de EDGAR. La longitud de las secuencias de entrada/salida busca modelar solicitudes de contexto largo.
Estos datasets, basados en registros de EDGAR, modelan la resumización de contexto medio y largo para casos de uso de trading financiero y asesoría de inversión. Los prompts solicitan al modelo que realice análisis y resumización de informes anuales (formularios 10-K) de miles de empresas públicas durante los últimos cinco años.
El benchmark también evalúa dos escenarios de inferencia diferentes: modo batch e interactivo:
- Modo batch (offline): Todas las solicitudes se envían a la vez y todas las respuestas se recopilan a la vez. Solo se mide el throughput.
- Modo interactivo (online): Las solicitudes llegan en tiempos pseudoaleatorios. La tasa media de llegada λ (el número promedio de solicitudes que el sistema recibe por segundo) puede configurarse para modelar diferentes escenarios de uso. El benchmark recopila métricas como el tiempo de reacción (RT), palabras por segundo por usuario (WPS/usuario) y total de palabras por segundo (WPS), pero no establece restricciones sobre ellas. RT es análogo al tiempo hasta el primer token (TTFT) en otros benchmarks, y WPS a tokens/segundo/usuario.
Cabe destacar que el modo interactivo no cubre la combinación de Llama 3.1 70B Instruct con EDGAR5.
El benchmark verifica la calidad del output y el conteo de palabras con respecto a un conjunto de control de respuestas generadas por LLM.
Si bien otros benchmarks permiten todo el preprocesamiento, un diferenciador importante de STAC-AI es la necesidad de aplicar plantillas de chat y tokenizar solicitudes durante la inferencia. Los despliegues reales pueden preferir que este trabajo se realice del lado del servidor para proteger sus prompts del sistema, imponiendo así mayor carga en la CPU.
Stack de hardware y software
Esta publicación compara dos servidores on-premises basados en NVIDIA Hopper presentados por HPE con un nodo en la nube basado en NVIDIA Blackwell.
- El HPE ProLiant Compute DL384 Gen12, equipado con el NVIDIA GH200 Grace Hopper Superchip, ofrece una solución eficiente de servidor único. Para ver los resultados detallados, consulte el informe complementario de Llama 3.1 8B y el informe complementario de Llama 3.1 70B en el sitio web de STAC.
- Una VM en la nube proporcionada por Nebius Cloud, basada en un único nodo de un sistema NVIDIA GB200 NVL72. La VM tiene dos CPU NVIDIA Grace y cuatro GPU NVIDIA Blackwell completamente conectadas mediante NVIDIA NVLink y NVSwitch para máximo throughput de red. Para más detalles sobre los resultados de NVIDIA GH200, consulte el informe complementario de Llama 3.1 8B y el informe complementario de Llama 3.1 70B en el sitio web de STAC.
- La opción on-premises más reciente es el SuperMicro AS-5126GS-TNRT en la configuración de dos NVIDIA RTX PRO 6000 Blackwell Server Edition, que combina dos GPU Blackwell en un único servidor para el desarrollo y despliegue de AI. Cada GPU RTX PRO 6000 Blackwell incluye 96 GB de memoria, dotando al nodo de una sustancial memoria GPU agregada para modelos más grandes, lotes más grandes o más trabajos concurrentes dentro del mismo espacio físico. Para más detalles sobre los resultados, consulte el informe complementario de Llama 3.1 8B y el informe complementario de Llama 3.1 70B en el sitio web de STAC.
Dado que el benchmark requiere cuantización post-entrenamiento como parte del proceso de evaluación, los modelos fueron cuantizados con el NVIDIA TensorRT Model Optimizer. Para aprovechar los kernels de mayor rendimiento disponibles para cada despliegue, la cuantización se realizó a FP8 en NVIDIA Hopper y a NVFP4 en NVIDIA Blackwell.
Para lograr el mejor rendimiento tanto en Hopper como en Blackwell, se utilizó el framework de inferencia NVIDIA TensorRT LLM para una ejecución eficiente del modelo. Estos modelos cuantizados se ejecutaron utilizando el runtime PyTorch de TensorRT LLM para una experiencia de desarrollo nativa y familiar con PyTorch, manteniendo el máximo rendimiento.
Resultados del benchmark STAC-AI LANG6
En esta sección se detallan los resultados del benchmark para el modo batch y el modo interactivo.
Modo batch
En el modo batch, NVIDIA Blackwell ofrece aceleraciones significativas en todos los escenarios. La Tabla 1 muestra los WPS y las solicitudes por segundo (RPS) alcanzados.
Cabe señalar que los resultados de NVIDIA GB200 NVL72 no fueron auditados por STAC.
| Modelo | Dataset | 2x GH200 144 GB TensorRT LLM FP8 | 4x GB200 NVL72 TensorRT LLM NVFP4 | 2x RTX PRO 6000 NVFP4 | |||
|---|---|---|---|---|---|---|---|
| WPS | RPS | WPS | RPS | WPS | RPS | ||
| Llama 3.1 8B | EDGAR4 | 8,237 | 51.5 | 37,480 | 224 | 5,500 | 32.9 |
| EDGAR5 | 304 | 0.784 | 1,112 | 2.85 | 138 | 0.345 | |
| Llama 3.1 70B | EDGAR4 | 1,071 | 6.77 | 5,618 | 35.9 | 831 | 5.26 |
| EDGAR5 | 41.4 | 0.119 | 150 | 0.477 | 13 | 0.04 | |
Tabla 1. Resultados del modo batch de STAC-AI en todas las combinaciones de modelo y dataset
Los informes completos con más detalles sobre los modos interactivo y batch se encuentran en los informes publicados por STAC.
También se evaluó el rendimiento por GPU individual para tener en cuenta el diferente número de GPU en cada sistema. Aunque STAC-AI no mide el rendimiento por GPU, los resultados mostrados en la Figura 1 ilustran la diferencia de throughput entre GPU individuales de cada uno de los sistemas.
Figura 1. La mejora de rendimiento de una sola GPU NVIDIA GH200 a una sola GPU NVIDIA GB200 NVL72 puede alcanzar hasta 3.2x
Modo interactivo
El equilibrio entre la economía de tokens (dependiente del throughput) y la experiencia del usuario (dependiente de métricas de interactividad como RT y WPS/usuario) es un factor crucial en la inferencia moderna de LLM.
El modo interactivo muestra el compromiso a lo largo del frente de Pareto de interactividad-throughput mediante la selección de un rango de tasas de llegada. La interactividad se mide tanto por RT como por WPS/usuario. Para facilitar la visualización, se utiliza el inverso de WPS/usuario, definido como latencia entre palabras (IWL), o 1/(WPS/usuario). En los gráficos se utiliza el percentil 95 de ambas métricas.
Como se muestra en la Figura 2, GB200 NVL72 logra un mejor equilibrio entre throughput y tanto RT como IWL en todos los escenarios. El IWL (línea sólida, menor es mejor) y el RT (línea punteada, menor es mejor) se grafican frente al throughput en modo interactivo en todos los escenarios de modelo/dataset.
Figura 2. NVIDIA GB200 NVL72 mantiene una mejor interactividad a mayor throughput interactivo en comparación con NVIDIA GH200
La Figura 3 muestra que, incluso cuando opera a un porcentaje similar del throughput máximo, NVIDIA GB200 NVL72 logra un mejor RT e IWL en la mayoría de los escenarios. Normalizar el eje X elimina las ventajas de throughput bruto y destaca la interactividad a igual carga.
Figura 3. Con la misma utilización (normalizada al throughput de solicitudes en modo batch de cada sistema), NVIDIA GB200 NVL72 ofrece menor IWL y RT en comparación con NVIDIA GH200 en la mayoría de los escenarios
Cómo realizar benchmarks de TensorRT LLM con datos personalizados
Si bien el benchmark STAC utiliza datos y métricas propietarios, es posible realizar benchmarks de TensorRT LLM con modelos adaptados a las características específicas de su dataset. Este tutorial le guía a través de la cuantización de un modelo, la preparación de su dataset y la ejecución de benchmarks de rendimiento, todo ello personalizado para su caso de uso.
Requisitos previos:
- Una imagen Docker que incluya TensorRT LLM (TensorRT LLM Release, por ejemplo).
- Una GPU NVIDIA con capacidad suficiente para servir su modelo al nivel de cuantización deseado. Puede encontrar una matriz de soporte para la cuantización en la documentación de TensorRT LLM.
- Una cuenta y token de Hugging Face, junto con acceso a los modelos restringidos de Llama 3.1 8B Instruct o Llama 3.1 70B Instruct. Puede configurar la variable de entorno
HF_TOKENcon su token, y todos los comandos subsiguientes utilizarán este token.
Paso 1: Iniciar el contenedor
Los contenedores mantenidos por NVIDIA incluyen todas las dependencias necesarias preinstaladas. Cambie a un directorio vacío con espacio suficiente para los modelos y sus cuantizaciones. Puede iniciar el contenedor en una máquina con GPU NVIDIA con el siguiente comando. Asegúrese de especificar su token de Hugging Face.
docker run --rm -it --ipc=host --ulimit memlock=-1 --ulimit stack=67108864 --gpus=all -u $(id -u):$(id -g) -e USER=$(id -un) -e HOME=/tmp -e TRITON_CACHE_DIR=/tmp/.triton -e TORCHINDUCTOR_CACHE_DIR=/tmp/.inductor_cache -e HF_HOME=/workspace/model_cache -e HF_TOKEN=<su_token_de_huggingface> --volume "$(pwd)":/workspace --workdir /workspace nvcr.io/nvidia/tensorrt-llm/release:1.3.0rc2
Paso 2: Clonar los repositorios
La cuantización de modelos reduce el tamaño del modelo y mejora la velocidad de inferencia. Use NVIDIA Model Optimizer para cuantizar Llama 3.1 8B Instruct al formato NVFP4. Primero, clone el repositorio de Model Optimizer para el ejemplo de cuantización:
git clone https://github.com/NVIDIA/TensorRT-Model-Optimizer.git -b 0.37.0
Paso 3: Cuantizar el modelo
A continuación, ejecute el script de ejemplo de Hugging Face con el modelo elegido y el formato de cuantización; en este caso, Llama 3.1 8B Instruct usando cuantización NVFP4.
bash TensorRT-Model-Optimizer/examples/llm_ptq/scripts/huggingface_example.sh --model meta-llama/Llama-3.1-8B-Instruct --quant nvfp4
Paso 4: Generar datos sintéticos
Utilice la utilidad de benchmark para generar un dataset sintético con la distribución de tokens necesaria para una tarea. Este ejemplo crea 30,000 solicitudes con una longitud de secuencia de entrada fija de 2,048 y una longitud de secuencia de salida de 128. Las desviaciones estándar distintas de cero aproximan mejor el tráfico real, si tiene acceso a esa información.
python /app/tensorrt_llm/benchmarks/cpp/prepare_dataset.py --stdout --tokenizer meta-llama/Llama-3.1-8B-Instruct token-norm-dist --input-mean 2048 --output-mean 128 --input-stdev 0 --output-stdev 0 --num-requests 30000 > dataset_2048_128.json
Paso 5: Ejecutar el benchmark
El comando trt-llm bench puede ejecutar las solicitudes generadas de forma offline, enviando todas las solicitudes a la vez al runtime de TensorRT LLM (aproximando estrechamente el modo batch de STAC-AI).
Si bien algunas opciones están disponibles en la API de CLI, la API LLM completa puede accederse a través de un archivo YAML pasado con el parámetro extra_llm_api_options. Para los fines de este ejemplo, habilite el padding de CUDA Graphs. Para conocer más opciones, consulte la Referencia de la API de TensorRT LLM.
cat > llm_options.yml << 'EOF'
cuda_graph_config:
enable_padding: True
EOF
Finalmente, ejecute el benchmark especificando el modelo, el dataset y las opciones:
trtllm-bench --model meta-llama/Llama-3.1-8B-Instruct --model_path /workspace/TensorRT-Model-Optimizer/examples/llm_ptq/saved_models_Llama-3_1-8B-Instruct_nvfp4 throughput --dataset dataset_2048_128.json --backend pytorch --extra_llm_api_options llm_options.yml
Esto generará diversas métricas como el throughput de solicitudes, los tokens/segundo/GPU y más.
Comience con los benchmarks de TensorRT LLM
NVIDIA GB200 NVL72 avanzó significativamente en el rendimiento del benchmark STAC-AI LANG6, estableciendo un nuevo récord para la inferencia de LLM en el sector financiero. NVIDIA Blackwell entregó hasta 3.2x el rendimiento de arquitecturas anteriores, logrando un mayor throughput y manteniendo consistentemente una interactividad superior.
Junto con el nuevo récord, NVIDIA Hopper continúa ofreciendo resultados sólidos y valiosos para cargas de trabajo de inferencia de LLM. Incluso más de tres años después de su lanzamiento inicial, Hopper demuestra ser altamente efectivo tanto en escenarios de inferencia batch como interactiva, manteniendo buenas métricas de rendimiento incluso a alto throughput, y confirmando su relevancia continua para las instituciones financieras.
Para profundizar en la configuración y ejecución de sus propias evaluaciones de rendimiento, explore la Guía de Benchmarking de TensorRT LLM.
Autores: Dan Blanaru, Martin Marciniszyn Mehringer
Fuente original: https://developer.nvidia.com/blog/nvidia-blackwell-sets-stac-ai-record-for-llm-inference-in-finance/
