vLLM v0.28.0: 584 commits, DeepSeek V4 y Kimi-K3 con optimizaciones de rendimiento

vLLM v0.28.0 llega con 584 commits de 270 contribuyentes (76 nuevos). Destaca el impulso de rendimiento para Kimi-K3, con soporte Decode Context Parallel (DCP), kernels fusionados FlashKDA, y un presupuesto adaptativo de tokens especulativos que mejora el TTFT de DSpark en ~60%. DeepSeek V4 ahora funciona de extremo a extremo con sparse MLA, soporte AMD Quark NVFP4 y habilitación en ROCm. Además, se incluyen avances en decodificación especulativa (DFlash2, DSpark), maduración del Model Runner V2, offloading de KV cache en disco, y un frontend en Rust con gRPC. Nuevos modelos: Muse Glimmer, Ling 3.0 Flash, Dots3 NOTE e Interns2mobius. Cambios importantes: bitsandbytes se convierte en plugin externo, Transformers se actualiza a 5.15.0, y se eliminan funciones obsoletas.

Kimi-K3 ahora también se ejecuta en ROCm con el Model Runner V2.
  1. joshheitzman

    Esperaba ver el lío del reasoning_content arreglado de forma robusta, pero todo lo que obtuvimos fue este cambio de documentación: https://github.com/vllm-project/vllm/pull/50624

  2. SillyUsername

    Ojalá dieran soporte a Pascal :(

    Nvidia puede haber abandonado el soporte, pero no significa que vllm tenga que hacerlo (llama.cpp no lo hizo).

  3. kouteiheika

    Me encanta vLLM, pero vaya si es frustrantemente buggy.

    Recientemente estaba ejecutando DeepSeek-V4-Flash en una B300. En v0.26 estaba totalmente roto, y tuve que añadir tres parches fuera del árbol para arreglarlo. Actualicé a v0.27 -- ya no hacen falta parches, pero la salida ahora está rota porque de repente empieza a responder con basura (bucles de tokens repetidos). En mi estación de trabajo donde ejecuto Gemma-4 en una RTX 6000, el proceso tiende a atascarse y deja de responder, y hay que matarlo y reiniciarlo para que vuelva a funcionar. En la máquina de 4x RTX 6000 de mi amigo, donde ejecuta DeepSeek-V4-Flash con alta concurrencia, también se dispara algún tipo de bug que escupe basura, pero esta vez no es un solo token repetido y se ve así: (esto está copiado y pegado de lo que el modelo realmente generó, parece genuinamente que estaba sufriendo al intentar terminar su traza de pensamiento pero sin poder)

    <|beginofsentence|>| only text. No. I<|beginofsentence|>#done. Whatever. Do<|beginofsentence|>### final response.Content-EncodingDone.</ /div> It's over? Let's this.No, Em,Okay, finally.<|beginofsentence|>import re and I can<|beginofsentence|>È.Let's finish? Next.Content No matter)2Stay.2No. Childish.No No commentsrandom DoBaBye-. ... Whatever. Alright.</body>No And 2. about: So)</think> No text I'm tired This is fine)))ExodusNo comments, hiddenNo. Nonsense Mehski. N-Hay que noIbye. Goodbye Last sentence after(ok copy Nothing useful. OK OK. . . . . .Come on Nancy . . . . . . Let's just end this please.No matter what. about […]

  4. zoobab

    Hice algunas pruebas de carga en vllm, ¡conseguí que se estrellara! :-)

  5. Der_Einzige

    Sigue muy por detrás en soporte de samplers de LLM comparado con llama-cpp. ¿Dónde está el soporte para top-n-sigma? ¿para DRY? ¿para XTC? ¡Vamos, chicos!

Más de este día

2026-08-29