Highlights
Trainer
Unified V1 trainer
separate_asynccan now lend idle trainer GPUs to generation: once a step's prompts are submitted, the trainer keeps its replicas in rollout mode until the replay buffer holds enough sampleable groups, driven by an adaptive starvation threshold. Gated behindtrainer.v1.separate_async.enable_switch, off by default (#7373).- V0-style fully-async semantics for the V1 async trainers (#7884):
actor_rollout_ref.hybrid_engine=Falseunderseparate_async(rollout served exclusively by the standalone pool), fractionalnum_warmup_batches(e.g.1.5),max_off_policy_threshold=nullto disable off-policy version control entirely, and the V0-compatible__num_turns__metric. All knobs are opt-in and default to the previous behavior. - Dynamic micro-batch packing now enforces
max_token_lenstrictly instead of treatingceil(total_len / max_token_len)as the micro-batch count — a bound the Karmarkar-Karp split could legitimately exceed (#7553). - DAPO group filtering reads the canonical pre-KL reward from
rm_scoresandalgorithm.filter_groups.metricdefaults toreward, so dynamic sampling only needsalgorithm.filter_groups.enable=True(#7792). trainer.checkpoint_callback_classnames a user-definedCheckpointCallbackwhoseon_savehook fires after every checkpoint save, mirroring the HuggingFaceTrainerCallbackevent — an extension point for uploads, model registries and retention policies without forking the trainer (#7513).- Async correctness: skip V1 async warmup after an inflight reissue (#7762), count failed validation sessions in accuracy (#7781), reject requests arriving behind a closed gate instead of parking them (#7912), and keep synthetic padding safe under context parallelism (#7593).
verl/experimental/fully_async_policyandverl/experimental/one_step_off_policyare deprecated by V1 trainer and will be moved to verl-recipe in next release.
FSDP
- Liger Kernel v0.8.2's
LigerFusedLinearScaledCrossEntropyFunctionreplaces the experimental fused linear PPO output head when Liger is installed: 13.5% faster actor updates (0.02803 → 0.02424 ms/token, four H100 seeds) and 5.6% lower actor peak memory (35.68 → 33.70 GiB). Without Liger the existing chunked implementation is unchanged (#7461). - Non-blocking FSDP2 model transfers (#7347), configurable deferred gradient sync (#7458), and a fix for the model merger concatenating replicated buffers (#7610).
- New
fsdpturbobackend engine (#7362), with its e2e test moved from GPU to NPU (#7633). - Qwen3.5-2B on-policy distillation script (#7605) and an updated Qwen3.5-35B GRPO example at 2K prompt / 6K response (#7678).
Megatron
- Qwen3.5 GRPO training script for the MindSpeed-Bridge and Megatron backends (#7335).
- VLM THD input padded to TP/CP alignment before the SP scatter (#7702), plus the NPU TND attention-mask shape fix (#7372).
- R2 router replay is now model-scoped and opt-in (#7805); the earlier THD-packed variant (#7106) was reverted in #7786.
- DDP gradient dtype aligned with optimizer precision (#7485) and sequence-mean loss allowed together with per-token normalization (#7915).
- The
mindspeedllmbackend engine was removed (#7374) and the Megatron Lite doc reframed as a Megatron Agent Compose preview (#7537).
VeOmni
- DeepSeek-V4 QAT bf16 fake-quant training (#7577) and gpt-oss expert parallelism (#7397).
async_activation_offloadconfig (#7724) androuted_expertsstored astorch.int16to cut its memory footprint (#7407).
Rollout
vLLM
- Pluggable router: the load balancer moves out of
llm_server.pyintoverl/workers/rollout/router.pybehind aRequestLoadBalancerprotocol and aget_router_handle()factory.rollout.router_config_pathloads an external router plugin from YAML byrouter_classFQN with Hydradefaultscomposition andpkg://URIs; with no config the built-in sticky-session + least-inflight balancer is unchanged (#7115, #7677). - Weight-sync drain is now gated on the verl side for DP>1: vLLM's
pause_generationstops the scheduler but still queues new adds, so a request landing mid-pause could setengines_runningwith nothing left to clear it and time out the drain (#7511). Related: scheduler resume race during async weight sync (#7846) and request aborts on multi-node replicas (#7652). - Explicit
Falseis preserved forOptional[bool]engine args in CLI serialization (#7508) and for delayed-default boolean flags (#7879). - Out-of-vocabulary tokens are masked with a tensor
index_fillto avoid sampling errors (#7882); prefix-cache hit counts are surfaced inTokenOutput(#7565);max_num_batched_tokensis raised tomax_model_lenwhen chunked prefill is disabled (#7632). - LoRA sync index misalignment fixed (#7453), and weights are always resumed before a weight sync (#7434).
SGLang
- DeepSeek-V4 full weight sync works with an SGLang rollout and a Megatron trainer: verl registers a
deepseek_v4config compatibility wrapper for SGLang-only environments, and the bucketer keeps concatenated destination-parameter pairs together so a byte boundary cannot split them (#7369). - Video features are forwarded to SGLang (#7802) and LoRA e2e is fixed (#7413).
CheckpointEngine
delta_shardednow has a vLLM consumer (#7227). The format was SGLang-only since #6974; a verl vLLMWeightTransferEngineadapter decodes each flush and applies it through vLLM's checkpoint-patch API (vllm-project/vllm#50723), leavingmodel.load_weights()responsible for name mapping, packed layouts, TP slicing and EP placement.delta_shardedfor the TorchTitan engine covering FSDP, FSDP+TP, FSDP+EP, HSDP, HSDP+TP and HSDP+EP. Measured on A800, GSM8K GRPO, disaggregated TorchTitan → SGLang: 10.3x faster weight sync at Qwen3-8B on 32 GPUs (3.34 s vs 34.26 s) and 3.7x on 16 GPUs. FSDP+PP remains unsupported (#7324).- Opt-in
multi_sendermode for the NCCL engine admits actor rank 0's node-local NVLink peers into the broadcast group as relays, so NCCL can drive more than one NIC per node (#7291). - Mooncake completion slots are drained across weight versions (#7764) and the HCCL weight-update error on NPU is fixed (#7488).
Weight-sync performance
- The full Python GC before rollout weight resume is gone (#7864). It was added in v0.9.0 via
aggressive_empty_cache(force_sync=True)and caused a measured throughput regression on colocated weight sync after upgrading from v0.8.0, with no GPU-memory benefit (#7848). - The remaining full GC on the colocated weight-refit path is also gone (#7873). Memory snapshots showed
gc.collect()inBucketedWeightSender/Receiver._cleanupcollected nothing and only cost ~433 ms — long enough to accidentally paper over a CUDA IPC race where the receiver ACKs the final bucket before releasing its mapping. The race is fixed rather than slept through. - Ranks are synchronized before resuming the KV cache to avoid OOM on non-leader ranks (#7851).
Agentic RL & multimodal
- Multimodal Continuous Token (#6804):
VLContinuousTokenBuilderextends the CT path toSingleTurnAgentLoopandToolAgentLoop. Incremental processor calls only expand image placeholders into pad tokens, whileAgentLoopWorkerre-runs the processor over the full message history once at the end to rebuildpixel_values/image_grid_thw. VL builders compose aVLContinuousTokenMixinwith their text-family builder via MRO, so Qwen ChatML newline reinsertion and GLM<|observation|>/<|user|>trimming are inherited unchanged. - CT follow-ups: generation prompt fused with the final append group (#7628), assistant role supported in merge/encode context (#7643), and DeepSeek tool appends rendered correctly (#7630).
RLHFDataset.process_multi_modal_infooffloads the synchronous extractor to the default executor so it no longer blocks the agent-loop event thread (#7562).- GLM-4V attention patch ported to the transformers 5 rotary API (#7620); Qwen3.5-VL added to
_TEXT_TO_VL_FAMILYfor unified checkpoint support (#7433).
Tools & Observability
- torch profiler gains a post hook (
profiler.finish_hook_cmd/finish_hook_ranks), corrected discrete/fused behavior, andglobal_profiler.relocate_results(#7408). Rollout and training profilers no longer overlap in Trainer V1 (#7722). - The
torch_memoryprofiler registers a process-local OOM observer that logs the failed allocation size, call stack and allocator summary and dumps a snapshot under<save_path>/oom_<timestamp>/;memory_snapshot_num_stepsretains memory history across several profiled steps (#7770). - Agent Loop telemetry is forwarded to RL-Insight (#7448); MLflow runs are finalized on finish so the end time is recorded (#7740).
Environment & Hardware
- uv integration (#7127): dependency management moves to
pyproject.toml+ a committeduv.lockcovering vLLM, SGLang × FSDP and Megatron, with aarch64 support following in #7627. - transformers upgraded to 5.9.0 across CI and images (#7650, #7654).
- Ascend NPU: GLM-5.2 GRPO recipe (#7788, #7836) with vllm-ascend patches (#7779, #7837), Megatron 0.18.0 stack (#7604, #7827), W4A8 MXFP rollout refit (#7868), modular FusedMoE (#7538), IPC weight transfer by default on A5 (#7728), an Atlas 950 Dockerfile (#7897), and the tutorial tree reorganized into
zh/anden/(#7563). - AMD ROCm: attention cache preserved for CUDA graphs (#7455), shuffled AITER FP8 weights restaged (#7470), PPO trainer CI stabilized and pinned to a single NUMA node (#7377, #7609), and a launchable AMD Developer Cloud fully-async DAPO notebook (#7690).
NCCL_CUMEM_ENABLEset externally is respected for rollout workers (#7564), non-GPU/NPU devices get adevice_availablecheck (#7871), and the Slurm Ray network interface is configurable (#7386).
Breaking Changes
- Dependency management moved to uv (#7127). Environments are now described by
pyproject.tomland the committeduv.lock;uvis the supported way to install verl and its backend extras. aarch64 support followed in #7627. - Multimodal Continuous Token changes the
ContinuousTokenBuildersurface (#6804): VL builders are composed fromVLContinuousTokenMixinplus a text-family builder, and the agent loop postprocesses multimodal tensors over the full message history. v1async trainer knobs (#7884):hybrid_engine=Falseis honored underseparate_async,num_warmup_batchesaccepts fractional values, andmax_off_policy_thresholdacceptsnull. Defaults preserve the previous behavior.algorithm.filter_groups.metricnow defaults torewardand resolves against the canonical pre-KLrm_scores(#7792).- Removed config keys: the never-consumed Megatron
grad_offload(#7544),actor.router_replayin favor of the engine config (#7466), and the unused ref router replay config (#7536). - The
mindspeedllmbackend engine was removed (#7374). - transformers is pinned to 5.9.0 (#7650).
What's Changed
- [ci] test: migrate workflows from fully_async/one_step_off_policy to v1 separate_async by @Begunner in #7357
- [megatron] fix: Modify the VLM attention mask shape in TND format for NPU by @zhouhengan1211 in #7372
- [doc] chore: Add tips to avoid verbosity logs by @MrJVium in #7384
- [ray, doc] fix: make Slurm Ray network interface configurable by @SkyFishMoon in #7386
- [ci] chore: Update ci image by @LeoYao123 in #7293
- [doc] chore: Change requirements install order by @MrJVium in #7403
- [ckpt] feat: Node-local multi-sender broadcast in NCCL checkpoint engine by @parinayc20 in #7291
- [BREAKING][rollout] feat: Add Multimodal Continuous Token by @gxlvera in #6804
- [doc] chore: Update news section with recent releases by @SamitHuang in #7406
- [ci, trainer] feat: remove mindspeedllm backend engine support. by @pengnuoheng in #7374
- [misc] chore: bump version to 0.10.0.dev by @wuxibin89 in #7410
- [ci] chore: Add npu ci env by @LeoYao123 in #7404
- [sglang] fix: lora sglang e2e by @attack204 in #7413
- [megatron,veomni] feat: use torch.int16 for routed_experts by @wuxibin89 in #7407
- [misc] chore: add HollowMan6 to CODEOWNERS and repair stale paths by @HollowMan6 in #7436
- [vllm] fix: vllm always need to resume weights before weight sync by @HollowMan6 in #7434
- [rollout] fix: preserve dummy load_format in disaggregated rollout by @theely in #7422
- [ci] chore: Update ci image by @lxb007981 in #7444
- [BREAKING][misc] feat: uv integration by @ETOgaosion in #7127
- [ci, trainer] feat: add fsdpturbo backend engine support. by @pengnuoheng in #7362
- [recipe] chore: Add in news for verl-Tinker by @wyettzeng in #7454
- [doc] chore: Update ckpt engine readme by @LeoYao123 in #7452
- [fsdp] feat: enable non-blocking FSDP2 model transfers by @jiefangxuanyan in #7347
- [vllm, rollout] fix: vLLM Lora sync index misalignment fix by @wyettzeng in #7453
- [vllm] fix: preserve ROCm attention cache for CUDA graphs by @PeterYang12 in #7455
- [ci, hardware] fix: stabilize ROCm PPO trainer CI by @PeterYang12 in #7377
- [model] fix: add Qwen3.5 VL to _TEXT_TO_VL_FAMILY for unified checkpoint support by @qy0720 in #7433
- [perf] feat: add profiler post hook, fix behaviors and allow comprehensive torch profiler by @ETOgaosion in #7408
- [doc] feat: announce verl-vla v0.1.0 by @Miical in #7469
- [vllm] fix: restage shuffled AITER FP8 weights by @PeterYang12 in #7470
- [vllm] fix: is_fp8_weight() skips fused-MoE expert weights with non-".weight" checkpoint names by @YolandaLyj in #7443
- [doc] fix: add supported tag doc for ascend docker by @yyyy2000 in #7477
- [ckpt] fix: hccl error when update weights for npu by @RichardFido in #7488
- [ci] fix: revert megatron version on ascend ci by @lxb007981 in #7492
- [ci] chore: Update ascend ci image by @lxb007981 in #7456
- [ckpt, fsdp] feat: sharded delta weight sync for the TorchTitan engine by @attack204 in #7324
- [megatron] fix: align DDP gradient dtype with optimizer precision by @Mecoli1219 in #7485
- [rollout] fix: preserve default AgentLoop extra fields by @le-czs in #7491
- [trainer, vllm] feat: lend idle trainer GPUs to generation in separate_async by @Begunner in #7373
- [megatron] feat: add MindSpeed-Bridge and Megatron backend support for Qwen3.5 GRPO training script by @ruanhao566 in #7335
- [cfg, megatron, doc] fix: drop unused actor.router_replay in favor of engine config by @YeonwooSung in #7466
- [doc] refactor: reframe Megatron Lite doc as Megatron Agent Compose preview by @ISEEKYAN in #7537
- [cfg] fix: drop unused ref router replay config by @ji-huazhong in #7536
- [ci] chore: use Ascend recipe baselines for NPU nightly CI by @lxb007981 in #7541
- [rollout, ci] fix: make agent-loop tests fully deterministic by @lxb007981 in #7518
- [ci] fix: enable fully sharded LoRA in Ascend E2E tests by @lxb007981 in #7517
- [training_utils, env, doc] feat: use Liger fused linear PPO kernel by @kolehma8 in #7461
- [trainer, ckpt, cfg] feat: add config-driven checkpoint callback hook by @yueyiming2009 in #7513
- [vllm] fix: honor explicit False on Optional[bool] engine args in CLI serialization by @zhtmike in #7508
- [vllm, hardware] fix: support modular FusedMoE on NPU by @ZihaoW123 in #7538
- [ray] fix: skip unused TensorDict consolidation in NumPy DataProto serialization by @Sky-Trigger in #7539
- [tool] feat: Forward Agent Loop telemetry to RL-Insight by @tardis-key in #7448
- [BREAKING][megatron, cfg] fix: remove unused grad_offload by @ji-huazhong in #7544
- [ci] chore: correct step naming for Ascend ci by @lxb007981 in #7549
- [ci] fix: drop stale enable_chunked_prefill=False from Ascend NPU scripts by @lxb007981 in #7558
- [hardware] fix: respect externally set NCCL_CUMEM_ENABLE for rollout workers by @emmericp in #7564
- [trainer] fix: update backend initialization in initialize_global_process_group by @kahlun in #7512
- [trainer] fix: enforce strict dynamic micro-batch token limits by @Begunner in #7553
- [data] fix: offload multimodal dataset processing by @YZJF in #7562
- [ci] fix: drop stale enable_chunked_prefill=False from Ascend NPU scripts by @lxb007981 in #7584
- [ci] chore: Remove Ascend CI by @lxb007981 in #7585
- [rollout] fix: surface vLLM prefix-cache hit counts in TokenOutput by @emmericp in #7565
- [fsdp] fix: make deferred gradient sync configurable by @Mengyuyang in #7458
- [veomni] feat: DeepSeek V4 QAT bf16 fake quant training by @wuxibin89 in #7577
- [doc] refactor: reorganize ascend_tutorial into zh/en directories by @yyyy2000 in #7563
- [trainer] fix: make synthetic padding safe for context parallelism by @yyDing1 in #7593
- [trainer] feat: Update run_qwen3_30b_veomni configuration by @ChibiQuest in #7595
- [env] fix: Update ascend image build workflow by @yyyy2000 in #7606
- [ckpt, rollout, vllm] feat: add vLLM consumer for delta-sharded weight sync by @ShuoleiWang in #7227
- [ci] fix: pin ROCm e2e CI containers to a single NUMA node by @PeterYang12 in #7609
- [recipe, cfg] fix: enable sleep mode for KV cache release by @lxb007981 in #7594
- [doc] fix: update broken external links by @tardis-key in #7622
- [rollout] fix: continuous token fuse generation prompt with the final append group by @gxlvera in #7628
- [misc] feat: uv support aarch64 by @ETOgaosion in #7627
- [ci] chore: fix ci failure by @wuxibin89 in #7629
- [model] fix: import AutoModelForCausalLMWithValueHead from trl.experimental.ppo in utils/model.py by @LiRunGuo in #7625
- [rollout] fix: randomize least-loaded tie-break so sessions do not avalanche onto one replica by @YZH0216 in #7613
- [ckpt, fsdp] fix: FSDP model merger concatenates replicated buffers by @Josephasafg in #7610
- [rollout] fix: DeepSeek continuous token builder cannot render tool appends by @ruiling-smartbear in #7630
- [fsdp] feat: add Qwen3.5-2B on-policy distillation FSDP script by @lihanwen7 in #7605
- [vllm] fix: raise max_num_batched_tokens to max_model_len when chunked prefill is disabled by @ETOgaosion in #7632
- [vllm, rollout] fix: gate rollout submission during weight-sync drain for DP>1 by @EricMarcus-ai in #7511
- [ci, trainer] refactor: switch fsdp_turbo e2e test from GPU to NPU by @pengnuoheng in #7633
- [fsdp] fix: skip no-op unit temperature scaling by @Mengyuyang in #7428
- [ci] chore: upgrade transformers==5.9.0 by @wuxibin89 in #7650
- [vllm] fix: handle request aborts on multi-node replicas by @lxb007981 in #7652
- [ci] chore: fix ci failure with transformers==5.9.0 by @wuxibin89 in #7654
- [sglang] fix: make DeepSeek-V4 full weight sync work with SGLang + Megatron by @ChangyiYang in #7369
- [rollout, vllm] feat: pluggable router with FQN/YAML plugins by @touch869 in #7115
- [model] fix: use the transformers 5 rotary API in the GLM-4V attention patch by @alanhuangyoo in #7620
- [distillation] fix: Disable detokenization for teacher prompt_logprobs by @HSYZhang in #7648
- [rollout] test: simplify router test suite, drop stale yaml comment by @touch869 in #7677
- [veomni, vllm] feat: Allow gptoss ep with veomni by @wyettzeng in #7397
- [fsdp] feat: update Qwen3.5-35B GRPO example for 2K prompt and 6K response by @zhouhengan1211 in #7678
- [training_utils] fix: honor fused output-head backend by @Luosuu in #7703
- [doc] fix: use fsdp_config.ulysses_sequence_parallel_size in ppo_lora.rst by @imitater-dou in #7710
- [veomni] feat: add async_activation_offload config by @wuxibin89 in #7724
- [megatron, ci] chore: upgrade Ascend stack to Megatron 0.18.0 by @lxb007981 in #7604
- [doc] fix: fix old URL of ascend doc by @yyyy2000 in #7729
- [doc] fix: drop doubled verl/ prefix in mcore readme paths by @imitater-dou in #7744
- [training_utils] fix: finalize MLflow run on finish to record end time by @harryge00 in #7740
- [rollout] feat: continuous_token support Assistant Role in Merge and Encode Context by @gxlvera in #7643
- [rollout] fix: default IPC weight transfer on Ascend A5 hardware by @kyle-zhangchi in #7728
- [megatron] fix: preserve R2 router replay for THD-packed batches by @hbhflw2000 in #7106
- [vllm, hardware] fix: patch vllm-ascend for GLM-5.2 RL training on Ascend NPUs by @lxb007981 in #7779
- Revert "[megatron] fix: preserve R2 router replay for THD-packed batches" by @wuxibin89 in #7786
- [training_utils] feat: Add automatic CUDA/NPU OOM snapshots and multi-step memory history by @ji-huazhong in #7770
- [perf, tool] fix: Avoid overlapping rollout and training profilers in Trainer V1 by @mengchengTang in #7722
- [trainer, cfg] feat: filter V1 DAPO groups by canonical reward by default by @Begunner in #7792
- [hardware] test: include AMD in platform auto-detection expectations by @tmm77 in #7797
- [ci] fix: nightlyCI_grpo_qwen3_5_2b_fsdp2_vllm_ascend by @lxb007981 in #7799
- [recipe] feat: add GLM-5.2 GRPO training example on Ascend NPUs by @lxb007981 in #7788
- [ckpt] fix: drain Mooncake completion slots across weight versions by @jacklin78911-collab in #7764
- [trainer, ckpt] fix: skip V1 async warmup after inflight reissue by @YeonwooSung in #7762
- [megatron, ci] fix: configure Megatron integration in Ascend images and tests by @lxb007981 in #7827
- [vllm] test: cover batch-invariant switch on Ascend by @wangdongleix in #7808
- [megatron] fix: pad VLM THD input to TP/CP alignment before SP scatter by @HollowMan6 in #7702
- [doc] chore: add launchable AMD Developer Cloud Fully Async DAPO notebook by @Vivicai1005 in #7690
- [recipe] fix: update GLM-5.2 GRPO training example on Ascend NPUs by @lxb007981 in #7836
- [megatron] fix: make R2 router replay model-scoped and opt-in by @hbhflw2000 in #7805
- [trainer] fix: pad teacher fields in minimal padding and support fsdp2 in forward topk loss by @frelam in #7858
- [worker] fix: sync ranks before resume kv_cache to avoid OOM on non-leader ranks by @HT-Yuan in #7851
- [rollout, perf] fix: avoid full GC before weight resume by @lbaolin in #7864
- [vllm, hardware] fix: patch vllm-ascend on Ascend NPUs by @lxb007981 in #7837
- [ci] chore: Fix transformers version in Ascend docker images by @lxb007981 in #7867
- [sglang, rollout] fix: forward video features to SGLang by @HeatherLiuzh in #7802
- [trainer] fix: count failed validation sessions in accuracy by @Begunner in #7781
- [doc] chore: add NPU guide for v1 trainer separate async by @dodatboii in #7872
- [perf] fix: remove full gc during weight refit by @wuxibin89 in #7873
- [trainer] fix: detach model_output from autograd graph by @Dmovic in #7874
- [ci] fix: wait for and diagnose empty training log in qwen3_vl nightly check step by @aass-79 in #7852
- [ci] fix: drop VERL_USE_EXTERNAL_MODULES env from Ascend Dockerfiles by @aass-79 in #7886
- [vllm, rollout] fix: preserve explicit false for delayed-default boolean flags by @zhangyimi in #7879
- [hardware] fix: add device_available check for devices other than GPU/NPU by @uqyxx in #7871
- [rollout] fix: mask out-of-vocabulary tokens with tensor index_fill to avoid sampling errors by @ruanhao566 in #7882
- [ci] fix: fix megatron.core import error on Ascend tests by @lxb007981 in #7875
- [doc] fix: correct npu_unit_test.yml to npu_unit_tests.yml in the Ascend CI guide by @linhongyu510 in #7876
- [doc] feat: add ascend 950 dockerfile by @yyyy2000 in #7897
- [vllm] fix: prevent scheduler resume race during async weight sync by @lxb007981 in #7846
- [ci] refactor: change ascend ci runner label by @yyyy2000 in #7743
- [fully_async] fix: reject requests arriving behind the closed gate stead of parking them by @wuxibin89 in #7912
- [megatron] fix: allow sequence-mean loss with per-token normalization by @Zhikaiiii in #7915
- [trainer, cfg] feat: modify script configuration for qwen3_5. by @ChibiQuest in #7903
- [BREAKING][trainer] feat: v0-style hybrid_engine=False and fractional warmup for v1 async trainers by @zpltys in #7884
- [vllm, rollout] feat: support W4A8 MXFP rollout refit on Ascend by @zaney9880 in #7868
New Contributors
- @MrJVium made their first contribution in #7384
- @SkyFishMoon made their first contribution in #7386
- @attack204 made their first contribution in #7413
- @jiefangxuanyan made their first contribution in #7347
- @qy0720 made their first contribution in #7433
- @YolandaLyj made their first contribution in #7443
- @yueyiming2009 made their first contribution in #7513
- @Sky-Trigger made their first contribution in #7539
- @YZJF made their first contribution in #7562
- @ShuoleiWang made their first contribution in #7227
- @LiRunGuo made their first contribution in #7625
- @YZH0216 made their first contribution in #7613
- @Josephasafg made their first contribution in #7610
- @ruiling-smartbear made their first contribution in #7630
- @touch869 made their first contribution in #7115
- @alanhuangyoo made their first contribution in #7620
- @HSYZhang made their first contribution in #7648
- @imitater-dou made their first contribution in #7710
- @harryge00 made their first contribution in #7740
- @hbhflw2000 made their first contribution in #7106
- @tmm77 made their first contribution in #7797
- @jacklin78911-collab made their first contribution in #7764
- @frelam made their first contribution in #7858
- @HT-Yuan made their first contribution in #7851
- @lbaolin made their first contribution in #7864
- @HeatherLiuzh made their first contribution in #7802
- @dodatboii made their first contribution in #7872
- @aass-79 made their first contribution in #7852
- @uqyxx made their first contribution in #7871
- @linhongyu510 made their first contribution in #7876
- @zaney9880 made their first contribution in #7868
Full Changelog: v0.9.0...v0.9.1