vllm-cpu-amxbf16 0.11.2.post2__cp310-cp310-manylinux_2_17_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1536) hide show
  1. vllm/_C.abi3.so +0 -0
  2. vllm/__init__.py +225 -0
  3. vllm/_aiter_ops.py +983 -0
  4. vllm/_bc_linter.py +54 -0
  5. vllm/_custom_ops.py +2863 -0
  6. vllm/_ipex_ops.py +457 -0
  7. vllm/_version.py +34 -0
  8. vllm/assets/__init__.py +0 -0
  9. vllm/assets/audio.py +43 -0
  10. vllm/assets/base.py +40 -0
  11. vllm/assets/image.py +59 -0
  12. vllm/assets/video.py +149 -0
  13. vllm/attention/__init__.py +18 -0
  14. vllm/attention/backends/__init__.py +0 -0
  15. vllm/attention/backends/abstract.py +391 -0
  16. vllm/attention/backends/registry.py +195 -0
  17. vllm/attention/backends/utils.py +33 -0
  18. vllm/attention/layer.py +1052 -0
  19. vllm/attention/layers/__init__.py +0 -0
  20. vllm/attention/layers/chunked_local_attention.py +121 -0
  21. vllm/attention/layers/cross_attention.py +178 -0
  22. vllm/attention/layers/encoder_only_attention.py +103 -0
  23. vllm/attention/ops/__init__.py +0 -0
  24. vllm/attention/ops/chunked_prefill_paged_decode.py +401 -0
  25. vllm/attention/ops/common.py +414 -0
  26. vllm/attention/ops/flashmla.py +251 -0
  27. vllm/attention/ops/merge_attn_states.py +47 -0
  28. vllm/attention/ops/paged_attn.py +262 -0
  29. vllm/attention/ops/pallas_kv_cache_update.py +130 -0
  30. vllm/attention/ops/prefix_prefill.py +814 -0
  31. vllm/attention/ops/rocm_aiter_paged_attn.py +123 -0
  32. vllm/attention/ops/triton_decode_attention.py +712 -0
  33. vllm/attention/ops/triton_merge_attn_states.py +105 -0
  34. vllm/attention/ops/triton_reshape_and_cache_flash.py +184 -0
  35. vllm/attention/ops/triton_unified_attention.py +941 -0
  36. vllm/attention/ops/vit_attn_wrappers.py +178 -0
  37. vllm/attention/selector.py +231 -0
  38. vllm/attention/utils/__init__.py +0 -0
  39. vllm/attention/utils/fa_utils.py +109 -0
  40. vllm/attention/utils/kv_sharing_utils.py +33 -0
  41. vllm/attention/utils/kv_transfer_utils.py +60 -0
  42. vllm/beam_search.py +88 -0
  43. vllm/benchmarks/__init__.py +0 -0
  44. vllm/benchmarks/datasets.py +3222 -0
  45. vllm/benchmarks/latency.py +172 -0
  46. vllm/benchmarks/lib/__init__.py +3 -0
  47. vllm/benchmarks/lib/endpoint_request_func.py +777 -0
  48. vllm/benchmarks/lib/ready_checker.py +72 -0
  49. vllm/benchmarks/lib/utils.py +79 -0
  50. vllm/benchmarks/serve.py +1531 -0
  51. vllm/benchmarks/sweep/__init__.py +0 -0
  52. vllm/benchmarks/sweep/cli.py +38 -0
  53. vllm/benchmarks/sweep/param_sweep.py +91 -0
  54. vllm/benchmarks/sweep/plot.py +580 -0
  55. vllm/benchmarks/sweep/serve.py +416 -0
  56. vllm/benchmarks/sweep/serve_sla.py +492 -0
  57. vllm/benchmarks/sweep/server.py +114 -0
  58. vllm/benchmarks/sweep/sla_sweep.py +132 -0
  59. vllm/benchmarks/sweep/utils.py +4 -0
  60. vllm/benchmarks/throughput.py +799 -0
  61. vllm/collect_env.py +857 -0
  62. vllm/compilation/__init__.py +0 -0
  63. vllm/compilation/activation_quant_fusion.py +209 -0
  64. vllm/compilation/backends.py +759 -0
  65. vllm/compilation/base_static_graph.py +57 -0
  66. vllm/compilation/caching.py +178 -0
  67. vllm/compilation/collective_fusion.py +1234 -0
  68. vllm/compilation/compiler_interface.py +639 -0
  69. vllm/compilation/counter.py +48 -0
  70. vllm/compilation/cuda_graph.py +208 -0
  71. vllm/compilation/decorators.py +571 -0
  72. vllm/compilation/fix_functionalization.py +253 -0
  73. vllm/compilation/fusion.py +374 -0
  74. vllm/compilation/fusion_attn.py +359 -0
  75. vllm/compilation/fx_utils.py +91 -0
  76. vllm/compilation/inductor_pass.py +133 -0
  77. vllm/compilation/matcher_utils.py +317 -0
  78. vllm/compilation/monitor.py +62 -0
  79. vllm/compilation/noop_elimination.py +134 -0
  80. vllm/compilation/partition_rules.py +72 -0
  81. vllm/compilation/pass_manager.py +135 -0
  82. vllm/compilation/piecewise_backend.py +121 -0
  83. vllm/compilation/post_cleanup.py +21 -0
  84. vllm/compilation/qk_norm_rope_fusion.py +238 -0
  85. vllm/compilation/sequence_parallelism.py +363 -0
  86. vllm/compilation/torch25_custom_graph_pass.py +44 -0
  87. vllm/compilation/vllm_inductor_pass.py +173 -0
  88. vllm/compilation/wrapper.py +238 -0
  89. vllm/config/__init__.py +102 -0
  90. vllm/config/cache.py +207 -0
  91. vllm/config/compilation.py +975 -0
  92. vllm/config/device.py +75 -0
  93. vllm/config/ec_transfer.py +110 -0
  94. vllm/config/kv_events.py +56 -0
  95. vllm/config/kv_transfer.py +114 -0
  96. vllm/config/load.py +124 -0
  97. vllm/config/lora.py +112 -0
  98. vllm/config/model.py +2162 -0
  99. vllm/config/multimodal.py +248 -0
  100. vllm/config/observability.py +123 -0
  101. vllm/config/parallel.py +655 -0
  102. vllm/config/pooler.py +122 -0
  103. vllm/config/scheduler.py +298 -0
  104. vllm/config/speculative.py +654 -0
  105. vllm/config/speech_to_text.py +38 -0
  106. vllm/config/structured_outputs.py +92 -0
  107. vllm/config/utils.py +178 -0
  108. vllm/config/vllm.py +1166 -0
  109. vllm/connections.py +189 -0
  110. vllm/device_allocator/__init__.py +0 -0
  111. vllm/device_allocator/cumem.py +327 -0
  112. vllm/distributed/__init__.py +6 -0
  113. vllm/distributed/communication_op.py +43 -0
  114. vllm/distributed/device_communicators/__init__.py +0 -0
  115. vllm/distributed/device_communicators/all2all.py +490 -0
  116. vllm/distributed/device_communicators/all_reduce_utils.py +344 -0
  117. vllm/distributed/device_communicators/base_device_communicator.py +297 -0
  118. vllm/distributed/device_communicators/cpu_communicator.py +209 -0
  119. vllm/distributed/device_communicators/cuda_communicator.py +340 -0
  120. vllm/distributed/device_communicators/cuda_wrapper.py +216 -0
  121. vllm/distributed/device_communicators/custom_all_reduce.py +326 -0
  122. vllm/distributed/device_communicators/mnnvl_compat.py +27 -0
  123. vllm/distributed/device_communicators/pynccl.py +386 -0
  124. vllm/distributed/device_communicators/pynccl_allocator.py +191 -0
  125. vllm/distributed/device_communicators/pynccl_wrapper.py +564 -0
  126. vllm/distributed/device_communicators/quick_all_reduce.py +290 -0
  127. vllm/distributed/device_communicators/ray_communicator.py +259 -0
  128. vllm/distributed/device_communicators/shm_broadcast.py +733 -0
  129. vllm/distributed/device_communicators/shm_object_storage.py +660 -0
  130. vllm/distributed/device_communicators/symm_mem.py +156 -0
  131. vllm/distributed/device_communicators/tpu_communicator.py +107 -0
  132. vllm/distributed/device_communicators/xpu_communicator.py +95 -0
  133. vllm/distributed/ec_transfer/__init__.py +14 -0
  134. vllm/distributed/ec_transfer/ec_connector/__init__.py +0 -0
  135. vllm/distributed/ec_transfer/ec_connector/base.py +247 -0
  136. vllm/distributed/ec_transfer/ec_connector/factory.py +88 -0
  137. vllm/distributed/ec_transfer/ec_connector/shared_storage_connector.py +201 -0
  138. vllm/distributed/ec_transfer/ec_transfer_state.py +42 -0
  139. vllm/distributed/eplb/__init__.py +8 -0
  140. vllm/distributed/eplb/eplb_state.py +837 -0
  141. vllm/distributed/eplb/rebalance_algo.py +260 -0
  142. vllm/distributed/eplb/rebalance_execute.py +431 -0
  143. vllm/distributed/kv_events.py +371 -0
  144. vllm/distributed/kv_transfer/README.md +29 -0
  145. vllm/distributed/kv_transfer/__init__.py +20 -0
  146. vllm/distributed/kv_transfer/disagg_prefill_workflow.jpg +0 -0
  147. vllm/distributed/kv_transfer/kv_connector/__init__.py +0 -0
  148. vllm/distributed/kv_transfer/kv_connector/base.py +10 -0
  149. vllm/distributed/kv_transfer/kv_connector/factory.py +192 -0
  150. vllm/distributed/kv_transfer/kv_connector/utils.py +268 -0
  151. vllm/distributed/kv_transfer/kv_connector/v1/__init__.py +19 -0
  152. vllm/distributed/kv_transfer/kv_connector/v1/base.py +546 -0
  153. vllm/distributed/kv_transfer/kv_connector/v1/decode_bench_connector.py +419 -0
  154. vllm/distributed/kv_transfer/kv_connector/v1/lmcache_connector.py +216 -0
  155. vllm/distributed/kv_transfer/kv_connector/v1/lmcache_integration/__init__.py +18 -0
  156. vllm/distributed/kv_transfer/kv_connector/v1/lmcache_integration/multi_process_adapter.py +379 -0
  157. vllm/distributed/kv_transfer/kv_connector/v1/lmcache_integration/utils.py +221 -0
  158. vllm/distributed/kv_transfer/kv_connector/v1/lmcache_integration/vllm_v1_adapter.py +1411 -0
  159. vllm/distributed/kv_transfer/kv_connector/v1/lmcache_mp_connector.py +867 -0
  160. vllm/distributed/kv_transfer/kv_connector/v1/metrics.py +189 -0
  161. vllm/distributed/kv_transfer/kv_connector/v1/multi_connector.py +454 -0
  162. vllm/distributed/kv_transfer/kv_connector/v1/nixl_connector.py +2440 -0
  163. vllm/distributed/kv_transfer/kv_connector/v1/offloading_connector.py +504 -0
  164. vllm/distributed/kv_transfer/kv_connector/v1/p2p/__init__.py +0 -0
  165. vllm/distributed/kv_transfer/kv_connector/v1/p2p/p2p_nccl_connector.py +531 -0
  166. vllm/distributed/kv_transfer/kv_connector/v1/p2p/p2p_nccl_engine.py +632 -0
  167. vllm/distributed/kv_transfer/kv_connector/v1/p2p/tensor_memory_pool.py +273 -0
  168. vllm/distributed/kv_transfer/kv_connector/v1/shared_storage_connector.py +450 -0
  169. vllm/distributed/kv_transfer/kv_lookup_buffer/__init__.py +0 -0
  170. vllm/distributed/kv_transfer/kv_lookup_buffer/base.py +179 -0
  171. vllm/distributed/kv_transfer/kv_lookup_buffer/mooncake_store.py +164 -0
  172. vllm/distributed/kv_transfer/kv_lookup_buffer/simple_buffer.py +242 -0
  173. vllm/distributed/kv_transfer/kv_pipe/__init__.py +0 -0
  174. vllm/distributed/kv_transfer/kv_pipe/base.py +66 -0
  175. vllm/distributed/kv_transfer/kv_pipe/mooncake_pipe.py +295 -0
  176. vllm/distributed/kv_transfer/kv_pipe/pynccl_pipe.py +285 -0
  177. vllm/distributed/kv_transfer/kv_transfer_state.py +78 -0
  178. vllm/distributed/parallel_state.py +1759 -0
  179. vllm/distributed/tpu_distributed_utils.py +188 -0
  180. vllm/distributed/utils.py +543 -0
  181. vllm/engine/__init__.py +0 -0
  182. vllm/engine/arg_utils.py +2144 -0
  183. vllm/engine/async_llm_engine.py +6 -0
  184. vllm/engine/llm_engine.py +6 -0
  185. vllm/engine/protocol.py +170 -0
  186. vllm/entrypoints/__init__.py +0 -0
  187. vllm/entrypoints/anthropic/__init__.py +0 -0
  188. vllm/entrypoints/anthropic/protocol.py +162 -0
  189. vllm/entrypoints/anthropic/serving_messages.py +460 -0
  190. vllm/entrypoints/api_server.py +184 -0
  191. vllm/entrypoints/chat_utils.py +1690 -0
  192. vllm/entrypoints/cli/__init__.py +13 -0
  193. vllm/entrypoints/cli/benchmark/__init__.py +0 -0
  194. vllm/entrypoints/cli/benchmark/base.py +25 -0
  195. vllm/entrypoints/cli/benchmark/latency.py +21 -0
  196. vllm/entrypoints/cli/benchmark/main.py +56 -0
  197. vllm/entrypoints/cli/benchmark/serve.py +21 -0
  198. vllm/entrypoints/cli/benchmark/sweep.py +21 -0
  199. vllm/entrypoints/cli/benchmark/throughput.py +21 -0
  200. vllm/entrypoints/cli/collect_env.py +38 -0
  201. vllm/entrypoints/cli/main.py +79 -0
  202. vllm/entrypoints/cli/openai.py +256 -0
  203. vllm/entrypoints/cli/run_batch.py +68 -0
  204. vllm/entrypoints/cli/serve.py +249 -0
  205. vllm/entrypoints/cli/types.py +29 -0
  206. vllm/entrypoints/constants.py +10 -0
  207. vllm/entrypoints/context.py +572 -0
  208. vllm/entrypoints/dynamic_lora.py +57 -0
  209. vllm/entrypoints/harmony_utils.py +535 -0
  210. vllm/entrypoints/launcher.py +175 -0
  211. vllm/entrypoints/llm.py +1768 -0
  212. vllm/entrypoints/logger.py +84 -0
  213. vllm/entrypoints/openai/__init__.py +0 -0
  214. vllm/entrypoints/openai/api_server.py +2096 -0
  215. vllm/entrypoints/openai/cli_args.py +302 -0
  216. vllm/entrypoints/openai/orca_metrics.py +120 -0
  217. vllm/entrypoints/openai/protocol.py +3299 -0
  218. vllm/entrypoints/openai/run_batch.py +547 -0
  219. vllm/entrypoints/openai/serving_chat.py +1772 -0
  220. vllm/entrypoints/openai/serving_classification.py +235 -0
  221. vllm/entrypoints/openai/serving_completion.py +715 -0
  222. vllm/entrypoints/openai/serving_embedding.py +695 -0
  223. vllm/entrypoints/openai/serving_engine.py +1433 -0
  224. vllm/entrypoints/openai/serving_models.py +304 -0
  225. vllm/entrypoints/openai/serving_pooling.py +346 -0
  226. vllm/entrypoints/openai/serving_responses.py +2021 -0
  227. vllm/entrypoints/openai/serving_score.py +503 -0
  228. vllm/entrypoints/openai/serving_tokenization.py +203 -0
  229. vllm/entrypoints/openai/serving_tokens.py +269 -0
  230. vllm/entrypoints/openai/serving_transcription.py +148 -0
  231. vllm/entrypoints/openai/speech_to_text.py +405 -0
  232. vllm/entrypoints/openai/tool_parsers/__init__.py +142 -0
  233. vllm/entrypoints/openai/tool_parsers/abstract_tool_parser.py +273 -0
  234. vllm/entrypoints/openai/tool_parsers/deepseekv31_tool_parser.py +390 -0
  235. vllm/entrypoints/openai/tool_parsers/deepseekv3_tool_parser.py +390 -0
  236. vllm/entrypoints/openai/tool_parsers/ernie45_tool_parser.py +210 -0
  237. vllm/entrypoints/openai/tool_parsers/glm4_moe_tool_parser.py +200 -0
  238. vllm/entrypoints/openai/tool_parsers/granite_20b_fc_tool_parser.py +273 -0
  239. vllm/entrypoints/openai/tool_parsers/granite_tool_parser.py +253 -0
  240. vllm/entrypoints/openai/tool_parsers/hermes_tool_parser.py +494 -0
  241. vllm/entrypoints/openai/tool_parsers/hunyuan_a13b_tool_parser.py +420 -0
  242. vllm/entrypoints/openai/tool_parsers/internlm2_tool_parser.py +227 -0
  243. vllm/entrypoints/openai/tool_parsers/jamba_tool_parser.py +323 -0
  244. vllm/entrypoints/openai/tool_parsers/kimi_k2_tool_parser.py +590 -0
  245. vllm/entrypoints/openai/tool_parsers/llama4_pythonic_tool_parser.py +341 -0
  246. vllm/entrypoints/openai/tool_parsers/llama_tool_parser.py +290 -0
  247. vllm/entrypoints/openai/tool_parsers/longcat_tool_parser.py +37 -0
  248. vllm/entrypoints/openai/tool_parsers/minimax_m2_tool_parser.py +643 -0
  249. vllm/entrypoints/openai/tool_parsers/minimax_tool_parser.py +849 -0
  250. vllm/entrypoints/openai/tool_parsers/mistral_tool_parser.py +390 -0
  251. vllm/entrypoints/openai/tool_parsers/olmo3_tool_parser.py +366 -0
  252. vllm/entrypoints/openai/tool_parsers/openai_tool_parser.py +97 -0
  253. vllm/entrypoints/openai/tool_parsers/phi4mini_tool_parser.py +120 -0
  254. vllm/entrypoints/openai/tool_parsers/pythonic_tool_parser.py +332 -0
  255. vllm/entrypoints/openai/tool_parsers/qwen3coder_tool_parser.py +781 -0
  256. vllm/entrypoints/openai/tool_parsers/qwen3xml_tool_parser.py +1316 -0
  257. vllm/entrypoints/openai/tool_parsers/seed_oss_tool_parser.py +744 -0
  258. vllm/entrypoints/openai/tool_parsers/step3_tool_parser.py +303 -0
  259. vllm/entrypoints/openai/tool_parsers/utils.py +229 -0
  260. vllm/entrypoints/openai/tool_parsers/xlam_tool_parser.py +556 -0
  261. vllm/entrypoints/renderer.py +409 -0
  262. vllm/entrypoints/responses_utils.py +77 -0
  263. vllm/entrypoints/sagemaker/__init__.py +4 -0
  264. vllm/entrypoints/sagemaker/routes.py +72 -0
  265. vllm/entrypoints/score_utils.py +242 -0
  266. vllm/entrypoints/ssl.py +78 -0
  267. vllm/entrypoints/tool.py +143 -0
  268. vllm/entrypoints/tool_server.py +209 -0
  269. vllm/entrypoints/utils.py +319 -0
  270. vllm/env_override.py +378 -0
  271. vllm/envs.py +1659 -0
  272. vllm/forward_context.py +356 -0
  273. vllm/inputs/__init__.py +44 -0
  274. vllm/inputs/data.py +359 -0
  275. vllm/inputs/parse.py +137 -0
  276. vllm/inputs/preprocess.py +727 -0
  277. vllm/logger.py +267 -0
  278. vllm/logging_utils/__init__.py +10 -0
  279. vllm/logging_utils/dump_input.py +83 -0
  280. vllm/logging_utils/formatter.py +77 -0
  281. vllm/logging_utils/log_time.py +34 -0
  282. vllm/logits_process.py +121 -0
  283. vllm/logprobs.py +208 -0
  284. vllm/lora/__init__.py +0 -0
  285. vllm/lora/layers/__init__.py +41 -0
  286. vllm/lora/layers/base.py +67 -0
  287. vllm/lora/layers/base_linear.py +164 -0
  288. vllm/lora/layers/column_parallel_linear.py +578 -0
  289. vllm/lora/layers/fused_moe.py +472 -0
  290. vllm/lora/layers/logits_processor.py +252 -0
  291. vllm/lora/layers/replicated_linear.py +70 -0
  292. vllm/lora/layers/row_parallel_linear.py +181 -0
  293. vllm/lora/layers/utils.py +65 -0
  294. vllm/lora/layers/vocal_parallel_embedding.py +166 -0
  295. vllm/lora/lora_weights.py +198 -0
  296. vllm/lora/models.py +890 -0
  297. vllm/lora/ops/__init__.py +0 -0
  298. vllm/lora/ops/ipex_ops/__init__.py +6 -0
  299. vllm/lora/ops/ipex_ops/lora_ops.py +57 -0
  300. vllm/lora/ops/torch_ops/__init__.py +20 -0
  301. vllm/lora/ops/torch_ops/lora_ops.py +128 -0
  302. vllm/lora/ops/triton_ops/README_TUNING.md +60 -0
  303. vllm/lora/ops/triton_ops/__init__.py +21 -0
  304. vllm/lora/ops/triton_ops/fused_moe_lora_op.py +641 -0
  305. vllm/lora/ops/triton_ops/kernel_utils.py +340 -0
  306. vllm/lora/ops/triton_ops/lora_expand_op.py +310 -0
  307. vllm/lora/ops/triton_ops/lora_kernel_metadata.py +154 -0
  308. vllm/lora/ops/triton_ops/lora_shrink_op.py +287 -0
  309. vllm/lora/ops/triton_ops/utils.py +295 -0
  310. vllm/lora/ops/xla_ops/__init__.py +6 -0
  311. vllm/lora/ops/xla_ops/lora_ops.py +141 -0
  312. vllm/lora/peft_helper.py +128 -0
  313. vllm/lora/punica_wrapper/__init__.py +10 -0
  314. vllm/lora/punica_wrapper/punica_base.py +492 -0
  315. vllm/lora/punica_wrapper/punica_cpu.py +351 -0
  316. vllm/lora/punica_wrapper/punica_gpu.py +411 -0
  317. vllm/lora/punica_wrapper/punica_selector.py +21 -0
  318. vllm/lora/punica_wrapper/punica_tpu.py +359 -0
  319. vllm/lora/punica_wrapper/punica_xpu.py +279 -0
  320. vllm/lora/punica_wrapper/utils.py +150 -0
  321. vllm/lora/request.py +100 -0
  322. vllm/lora/resolver.py +88 -0
  323. vllm/lora/utils.py +293 -0
  324. vllm/lora/worker_manager.py +279 -0
  325. vllm/model_executor/__init__.py +11 -0
  326. vllm/model_executor/custom_op.py +194 -0
  327. vllm/model_executor/layers/__init__.py +0 -0
  328. vllm/model_executor/layers/activation.py +569 -0
  329. vllm/model_executor/layers/attention_layer_base.py +35 -0
  330. vllm/model_executor/layers/batch_invariant.py +854 -0
  331. vllm/model_executor/layers/conv.py +236 -0
  332. vllm/model_executor/layers/fla/__init__.py +8 -0
  333. vllm/model_executor/layers/fla/ops/__init__.py +17 -0
  334. vllm/model_executor/layers/fla/ops/chunk.py +240 -0
  335. vllm/model_executor/layers/fla/ops/chunk_delta_h.py +344 -0
  336. vllm/model_executor/layers/fla/ops/chunk_o.py +183 -0
  337. vllm/model_executor/layers/fla/ops/chunk_scaled_dot_kkt.py +154 -0
  338. vllm/model_executor/layers/fla/ops/cumsum.py +280 -0
  339. vllm/model_executor/layers/fla/ops/fused_recurrent.py +390 -0
  340. vllm/model_executor/layers/fla/ops/index.py +41 -0
  341. vllm/model_executor/layers/fla/ops/kda.py +1351 -0
  342. vllm/model_executor/layers/fla/ops/l2norm.py +146 -0
  343. vllm/model_executor/layers/fla/ops/layernorm_guard.py +396 -0
  344. vllm/model_executor/layers/fla/ops/op.py +60 -0
  345. vllm/model_executor/layers/fla/ops/solve_tril.py +556 -0
  346. vllm/model_executor/layers/fla/ops/utils.py +194 -0
  347. vllm/model_executor/layers/fla/ops/wy_fast.py +158 -0
  348. vllm/model_executor/layers/fused_moe/__init__.py +106 -0
  349. vllm/model_executor/layers/fused_moe/all2all_utils.py +160 -0
  350. vllm/model_executor/layers/fused_moe/batched_deep_gemm_moe.py +406 -0
  351. vllm/model_executor/layers/fused_moe/batched_triton_or_deep_gemm_moe.py +180 -0
  352. vllm/model_executor/layers/fused_moe/config.py +916 -0
  353. vllm/model_executor/layers/fused_moe/configs/E=1,N=14336,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a16.json +146 -0
  354. vllm/model_executor/layers/fused_moe/configs/E=1,N=14336,device_name=NVIDIA_A100-SXM4-80GB.json +146 -0
  355. vllm/model_executor/layers/fused_moe/configs/E=1,N=1792,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a16.json +218 -0
  356. vllm/model_executor/layers/fused_moe/configs/E=1,N=1792,device_name=NVIDIA_A100-SXM4-80GB.json +218 -0
  357. vllm/model_executor/layers/fused_moe/configs/E=1,N=1792,device_name=NVIDIA_H100_80GB_HBM3,dtype=int8_w8a16.json +146 -0
  358. vllm/model_executor/layers/fused_moe/configs/E=1,N=3072,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a16.json +218 -0
  359. vllm/model_executor/layers/fused_moe/configs/E=1,N=3072,device_name=NVIDIA_H100_80GB_HBM3,dtype=int8_w8a16.json +146 -0
  360. vllm/model_executor/layers/fused_moe/configs/E=1,N=3072,device_name=NVIDIA_H100_80GB_HBM3.json +218 -0
  361. vllm/model_executor/layers/fused_moe/configs/E=1,N=3072,device_name=NVIDIA_H200,dtype=int8_w8a16.json +146 -0
  362. vllm/model_executor/layers/fused_moe/configs/E=1,N=3584,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a16.json +218 -0
  363. vllm/model_executor/layers/fused_moe/configs/E=1,N=3584,device_name=NVIDIA_A100-SXM4-80GB.json +218 -0
  364. vllm/model_executor/layers/fused_moe/configs/E=1,N=3584,device_name=NVIDIA_H100_80GB_HBM3,dtype=int8_w8a16.json +146 -0
  365. vllm/model_executor/layers/fused_moe/configs/E=1,N=7168,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a16.json +218 -0
  366. vllm/model_executor/layers/fused_moe/configs/E=1,N=7168,device_name=NVIDIA_A100-SXM4-80GB.json +218 -0
  367. vllm/model_executor/layers/fused_moe/configs/E=1,N=7168,device_name=NVIDIA_H100_80GB_HBM3,dtype=int8_w8a16.json +146 -0
  368. vllm/model_executor/layers/fused_moe/configs/E=128,N=1024,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8.json +164 -0
  369. vllm/model_executor/layers/fused_moe/configs/E=128,N=1024,device_name=AMD_Instinct_MI300X.json +200 -0
  370. vllm/model_executor/layers/fused_moe/configs/E=128,N=1024,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8.json +164 -0
  371. vllm/model_executor/layers/fused_moe/configs/E=128,N=1024,device_name=NVIDIA_H100,dtype=fp8_w8a8.json +123 -0
  372. vllm/model_executor/layers/fused_moe/configs/E=128,N=1024,device_name=NVIDIA_H200,dtype=fp8_w8a8.json +146 -0
  373. vllm/model_executor/layers/fused_moe/configs/E=128,N=1024,device_name=NVIDIA_H200.json +146 -0
  374. vllm/model_executor/layers/fused_moe/configs/E=128,N=1856,device_name=NVIDIA_H100_80GB_HBM3.json +147 -0
  375. vllm/model_executor/layers/fused_moe/configs/E=128,N=1856,device_name=NVIDIA_L40S.json +147 -0
  376. vllm/model_executor/layers/fused_moe/configs/E=128,N=192,device_name=NVIDIA_A100-SXM4-80GB.json +146 -0
  377. vllm/model_executor/layers/fused_moe/configs/E=128,N=192,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  378. vllm/model_executor/layers/fused_moe/configs/E=128,N=192,device_name=NVIDIA_H20-3e.json +146 -0
  379. vllm/model_executor/layers/fused_moe/configs/E=128,N=192,device_name=NVIDIA_H20.json +146 -0
  380. vllm/model_executor/layers/fused_moe/configs/E=128,N=192,device_name=NVIDIA_H200.json +146 -0
  381. vllm/model_executor/layers/fused_moe/configs/E=128,N=352,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8.json +122 -0
  382. vllm/model_executor/layers/fused_moe/configs/E=128,N=384,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  383. vllm/model_executor/layers/fused_moe/configs/E=128,N=384,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  384. vllm/model_executor/layers/fused_moe/configs/E=128,N=384,device_name=NVIDIA_GB200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  385. vllm/model_executor/layers/fused_moe/configs/E=128,N=384,device_name=NVIDIA_H20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  386. vllm/model_executor/layers/fused_moe/configs/E=128,N=384,device_name=NVIDIA_H20-3e,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  387. vllm/model_executor/layers/fused_moe/configs/E=128,N=384,device_name=NVIDIA_H20-3e.json +146 -0
  388. vllm/model_executor/layers/fused_moe/configs/E=128,N=384,device_name=NVIDIA_H20.json +146 -0
  389. vllm/model_executor/layers/fused_moe/configs/E=128,N=384,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  390. vllm/model_executor/layers/fused_moe/configs/E=128,N=384,device_name=NVIDIA_H200.json +146 -0
  391. vllm/model_executor/layers/fused_moe/configs/E=128,N=512,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  392. vllm/model_executor/layers/fused_moe/configs/E=128,N=704,device_name=NVIDIA_B200,dtype=fp8_w8a8.json +146 -0
  393. vllm/model_executor/layers/fused_moe/configs/E=128,N=704,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8.json +114 -0
  394. vllm/model_executor/layers/fused_moe/configs/E=128,N=768,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  395. vllm/model_executor/layers/fused_moe/configs/E=128,N=768,device_name=AMD_Instinct_MI308X.json +213 -0
  396. vllm/model_executor/layers/fused_moe/configs/E=128,N=768,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  397. vllm/model_executor/layers/fused_moe/configs/E=128,N=768,device_name=NVIDIA_GB200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  398. vllm/model_executor/layers/fused_moe/configs/E=128,N=768,device_name=NVIDIA_H20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  399. vllm/model_executor/layers/fused_moe/configs/E=128,N=768,device_name=NVIDIA_H20-3e,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  400. vllm/model_executor/layers/fused_moe/configs/E=128,N=768,device_name=NVIDIA_H20.json +146 -0
  401. vllm/model_executor/layers/fused_moe/configs/E=128,N=768,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  402. vllm/model_executor/layers/fused_moe/configs/E=128,N=768,device_name=NVIDIA_H200.json +146 -0
  403. vllm/model_executor/layers/fused_moe/configs/E=128,N=8960,device_name=NVIDIA_H100_80GB_HBM3,dtype=bf16.json +82 -0
  404. vllm/model_executor/layers/fused_moe/configs/E=128,N=8960,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8.json +82 -0
  405. vllm/model_executor/layers/fused_moe/configs/E=128,N=928,device_name=NVIDIA_H100_80GB_HBM3.json +147 -0
  406. vllm/model_executor/layers/fused_moe/configs/E=128,N=928,device_name=NVIDIA_L40S.json +147 -0
  407. vllm/model_executor/layers/fused_moe/configs/E=128,N=96,device_name=NVIDIA_H20.json +146 -0
  408. vllm/model_executor/layers/fused_moe/configs/E=16,N=1024,device_name=AMD_Instinct_MI300X.json +200 -0
  409. vllm/model_executor/layers/fused_moe/configs/E=16,N=1024,device_name=NVIDIA_B200,dtype=fp8_w8a8.json +147 -0
  410. vllm/model_executor/layers/fused_moe/configs/E=16,N=1024,device_name=NVIDIA_B200.json +146 -0
  411. vllm/model_executor/layers/fused_moe/configs/E=16,N=1024,device_name=NVIDIA_H100.json +146 -0
  412. vllm/model_executor/layers/fused_moe/configs/E=16,N=1024,device_name=NVIDIA_H200,dtype=fp8_w8a8.json +146 -0
  413. vllm/model_executor/layers/fused_moe/configs/E=16,N=1024,device_name=NVIDIA_H200.json +146 -0
  414. vllm/model_executor/layers/fused_moe/configs/E=16,N=1344,device_name=NVIDIA_A100-SXM4-40GB.json +146 -0
  415. vllm/model_executor/layers/fused_moe/configs/E=16,N=1344,device_name=NVIDIA_A100-SXM4-80GB.json +146 -0
  416. vllm/model_executor/layers/fused_moe/configs/E=16,N=1344,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  417. vllm/model_executor/layers/fused_moe/configs/E=16,N=14336,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a16.json +146 -0
  418. vllm/model_executor/layers/fused_moe/configs/E=16,N=14336,device_name=NVIDIA_A100-SXM4-80GB.json +146 -0
  419. vllm/model_executor/layers/fused_moe/configs/E=16,N=14336,device_name=NVIDIA_H100_80GB_HBM3,dtype=int8_w8a16.json +146 -0
  420. vllm/model_executor/layers/fused_moe/configs/E=16,N=1792,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a16.json +218 -0
  421. vllm/model_executor/layers/fused_moe/configs/E=16,N=1792,device_name=NVIDIA_A100-SXM4-80GB.json +218 -0
  422. vllm/model_executor/layers/fused_moe/configs/E=16,N=1792,device_name=NVIDIA_H100_80GB_HBM3,dtype=int8_w8a16.json +146 -0
  423. vllm/model_executor/layers/fused_moe/configs/E=16,N=1792,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  424. vllm/model_executor/layers/fused_moe/configs/E=16,N=2048,device_name=NVIDIA_H200,dtype=fp8_w8a8.json +146 -0
  425. vllm/model_executor/layers/fused_moe/configs/E=16,N=2048,device_name=NVIDIA_H200.json +146 -0
  426. vllm/model_executor/layers/fused_moe/configs/E=16,N=2688,device_name=NVIDIA_A100-SXM4-80GB.json +146 -0
  427. vllm/model_executor/layers/fused_moe/configs/E=16,N=2688,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  428. vllm/model_executor/layers/fused_moe/configs/E=16,N=3072,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a16.json +146 -0
  429. vllm/model_executor/layers/fused_moe/configs/E=16,N=3072,device_name=NVIDIA_H100_80GB_HBM3,dtype=float8.json +146 -0
  430. vllm/model_executor/layers/fused_moe/configs/E=16,N=3072,device_name=NVIDIA_H100_80GB_HBM3,dtype=int8_w8a16.json +146 -0
  431. vllm/model_executor/layers/fused_moe/configs/E=16,N=3072,device_name=NVIDIA_H200,dtype=int8_w8a16.json +146 -0
  432. vllm/model_executor/layers/fused_moe/configs/E=16,N=3200,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8.json +130 -0
  433. vllm/model_executor/layers/fused_moe/configs/E=16,N=3584,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a16.json +146 -0
  434. vllm/model_executor/layers/fused_moe/configs/E=16,N=3584,device_name=NVIDIA_A100-SXM4-80GB.json +218 -0
  435. vllm/model_executor/layers/fused_moe/configs/E=16,N=3584,device_name=NVIDIA_H100_80GB_HBM3,dtype=int8_w8a16.json +146 -0
  436. vllm/model_executor/layers/fused_moe/configs/E=16,N=6400,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8.json +130 -0
  437. vllm/model_executor/layers/fused_moe/configs/E=16,N=7168,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a16.json +146 -0
  438. vllm/model_executor/layers/fused_moe/configs/E=16,N=7168,device_name=NVIDIA_A100-SXM4-80GB.json +146 -0
  439. vllm/model_executor/layers/fused_moe/configs/E=16,N=7168,device_name=NVIDIA_H100_80GB_HBM3,dtype=float8.json +146 -0
  440. vllm/model_executor/layers/fused_moe/configs/E=16,N=7168,device_name=NVIDIA_H100_80GB_HBM3,dtype=int8_w8a16.json +146 -0
  441. vllm/model_executor/layers/fused_moe/configs/E=16,N=800,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8.json +130 -0
  442. vllm/model_executor/layers/fused_moe/configs/E=160,N=192,device_name=AMD_Instinct_MI300X.json +201 -0
  443. vllm/model_executor/layers/fused_moe/configs/E=160,N=192,device_name=AMD_Instinct_MI350_OAM,dtype=fp8_w8a8.json +164 -0
  444. vllm/model_executor/layers/fused_moe/configs/E=160,N=192,device_name=NVIDIA_A800-SXM4-80GB.json +146 -0
  445. vllm/model_executor/layers/fused_moe/configs/E=160,N=192,device_name=NVIDIA_H20-3e.json +146 -0
  446. vllm/model_executor/layers/fused_moe/configs/E=160,N=320,device_name=NVIDIA_H20-3e.json +146 -0
  447. vllm/model_executor/layers/fused_moe/configs/E=160,N=384,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8.json +164 -0
  448. vllm/model_executor/layers/fused_moe/configs/E=160,N=384,device_name=AMD_Instinct_MI350_OAM,dtype=fp8_w8a8.json +164 -0
  449. vllm/model_executor/layers/fused_moe/configs/E=160,N=384,device_name=AMD_Instinct_MI355_OAM,dtype=fp8_w8a8.json +164 -0
  450. vllm/model_executor/layers/fused_moe/configs/E=160,N=640,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  451. vllm/model_executor/layers/fused_moe/configs/E=160,N=640,device_name=NVIDIA_GB200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  452. vllm/model_executor/layers/fused_moe/configs/E=160,N=640,device_name=NVIDIA_H100,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  453. vllm/model_executor/layers/fused_moe/configs/E=20,N=2560,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  454. vllm/model_executor/layers/fused_moe/configs/E=20,N=2560,device_name=NVIDIA_GB200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  455. vllm/model_executor/layers/fused_moe/configs/E=20,N=2560,device_name=NVIDIA_H100,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  456. vllm/model_executor/layers/fused_moe/configs/E=20,N=2560,device_name=NVIDIA_H20-3e,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  457. vllm/model_executor/layers/fused_moe/configs/E=256,N=1024,device_name=AMD_Instinct_MI325X,block_shape=[128,128].json +200 -0
  458. vllm/model_executor/layers/fused_moe/configs/E=256,N=1024,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +200 -0
  459. vllm/model_executor/layers/fused_moe/configs/E=256,N=128,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  460. vllm/model_executor/layers/fused_moe/configs/E=256,N=128,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a8.json +146 -0
  461. vllm/model_executor/layers/fused_moe/configs/E=256,N=128,device_name=NVIDIA_A800-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  462. vllm/model_executor/layers/fused_moe/configs/E=256,N=128,device_name=NVIDIA_A800-SXM4-80GB,dtype=int8_w8a8.json +146 -0
  463. vllm/model_executor/layers/fused_moe/configs/E=256,N=128,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  464. vllm/model_executor/layers/fused_moe/configs/E=256,N=128,device_name=NVIDIA_H20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  465. vllm/model_executor/layers/fused_moe/configs/E=256,N=128,device_name=NVIDIA_L20Y,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  466. vllm/model_executor/layers/fused_moe/configs/E=256,N=256,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  467. vllm/model_executor/layers/fused_moe/configs/E=256,N=256,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +200 -0
  468. vllm/model_executor/layers/fused_moe/configs/E=256,N=256,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +200 -0
  469. vllm/model_executor/layers/fused_moe/configs/E=256,N=256,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  470. vllm/model_executor/layers/fused_moe/configs/E=256,N=256,device_name=NVIDIA_H20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  471. vllm/model_executor/layers/fused_moe/configs/E=256,N=256,device_name=NVIDIA_H20,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  472. vllm/model_executor/layers/fused_moe/configs/E=256,N=256,device_name=NVIDIA_H20-3e,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  473. vllm/model_executor/layers/fused_moe/configs/E=256,N=256,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  474. vllm/model_executor/layers/fused_moe/configs/E=256,N=256,device_name=NVIDIA_L20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  475. vllm/model_executor/layers/fused_moe/configs/E=256,N=384,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +147 -0
  476. vllm/model_executor/layers/fused_moe/configs/E=256,N=512,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +200 -0
  477. vllm/model_executor/layers/fused_moe/configs/E=256,N=512,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  478. vllm/model_executor/layers/fused_moe/configs/E=256,N=64,device_name=NVIDIA_A800-SXM4-80GB.json +146 -0
  479. vllm/model_executor/layers/fused_moe/configs/E=32,N=1408,device_name=NVIDIA_B200.json +147 -0
  480. vllm/model_executor/layers/fused_moe/configs/E=32,N=2048,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +147 -0
  481. vllm/model_executor/layers/fused_moe/configs/E=32,N=2048,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +147 -0
  482. vllm/model_executor/layers/fused_moe/configs/E=384,N=128,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  483. vllm/model_executor/layers/fused_moe/configs/E=384,N=128,device_name=NVIDIA_GB200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  484. vllm/model_executor/layers/fused_moe/configs/E=384,N=128,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  485. vllm/model_executor/layers/fused_moe/configs/E=384,N=256,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  486. vllm/model_executor/layers/fused_moe/configs/E=384,N=256,device_name=NVIDIA_GB200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  487. vllm/model_executor/layers/fused_moe/configs/E=40,N=1536,device_name=NVIDIA_B200,dtype=fp8_w8a8.json +147 -0
  488. vllm/model_executor/layers/fused_moe/configs/E=40,N=2560,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  489. vllm/model_executor/layers/fused_moe/configs/E=40,N=2560,device_name=NVIDIA_GB200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  490. vllm/model_executor/layers/fused_moe/configs/E=40,N=2560,device_name=NVIDIA_H100,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  491. vllm/model_executor/layers/fused_moe/configs/E=512,N=128,device_name=NVIDIA_A100-SXM4-80GB.json +147 -0
  492. vllm/model_executor/layers/fused_moe/configs/E=512,N=128,device_name=NVIDIA_B200.json +146 -0
  493. vllm/model_executor/layers/fused_moe/configs/E=512,N=128,device_name=NVIDIA_GB200,dtype=fp8_w8a8.json +147 -0
  494. vllm/model_executor/layers/fused_moe/configs/E=512,N=128,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  495. vllm/model_executor/layers/fused_moe/configs/E=512,N=128,device_name=NVIDIA_H20-3e.json +146 -0
  496. vllm/model_executor/layers/fused_moe/configs/E=512,N=128,device_name=NVIDIA_H200.json +146 -0
  497. vllm/model_executor/layers/fused_moe/configs/E=512,N=256,device_name=NVIDIA_B200.json +146 -0
  498. vllm/model_executor/layers/fused_moe/configs/E=512,N=256,device_name=NVIDIA_GB200,dtype=fp8_w8a8.json +146 -0
  499. vllm/model_executor/layers/fused_moe/configs/E=512,N=256,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +147 -0
  500. vllm/model_executor/layers/fused_moe/configs/E=512,N=256,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  501. vllm/model_executor/layers/fused_moe/configs/E=512,N=256,device_name=NVIDIA_H20-3e.json +146 -0
  502. vllm/model_executor/layers/fused_moe/configs/E=512,N=256,device_name=NVIDIA_H200.json +146 -0
  503. vllm/model_executor/layers/fused_moe/configs/E=512,N=512,device_name=NVIDIA_B200.json +146 -0
  504. vllm/model_executor/layers/fused_moe/configs/E=512,N=512,device_name=NVIDIA_GB200,dtype=fp8_w8a8.json +146 -0
  505. vllm/model_executor/layers/fused_moe/configs/E=512,N=512,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  506. vllm/model_executor/layers/fused_moe/configs/E=512,N=512,device_name=NVIDIA_H20-3e.json +146 -0
  507. vllm/model_executor/layers/fused_moe/configs/E=512,N=512,device_name=NVIDIA_H200.json +146 -0
  508. vllm/model_executor/layers/fused_moe/configs/E=512,N=64,device_name=NVIDIA_A100-SXM4-80GB.json +147 -0
  509. vllm/model_executor/layers/fused_moe/configs/E=512,N=64,device_name=NVIDIA_B200.json +146 -0
  510. vllm/model_executor/layers/fused_moe/configs/E=512,N=64,device_name=NVIDIA_H20-3e.json +146 -0
  511. vllm/model_executor/layers/fused_moe/configs/E=512,N=64,device_name=NVIDIA_H200.json +146 -0
  512. vllm/model_executor/layers/fused_moe/configs/E=60,N=1408,device_name=AMD_Instinct_MI300X.json +200 -0
  513. vllm/model_executor/layers/fused_moe/configs/E=60,N=176,device_name=AMD_Instinct_MI300X.json +200 -0
  514. vllm/model_executor/layers/fused_moe/configs/E=60,N=352,device_name=AMD_Instinct_MI300X.json +200 -0
  515. vllm/model_executor/layers/fused_moe/configs/E=60,N=704,device_name=AMD_Instinct_MI300X.json +200 -0
  516. vllm/model_executor/layers/fused_moe/configs/E=62,N=128,device_name=AMD_Instinct_MI300X.json +200 -0
  517. vllm/model_executor/layers/fused_moe/configs/E=62,N=256,device_name=AMD_Instinct_MI300X.json +200 -0
  518. vllm/model_executor/layers/fused_moe/configs/E=62,N=256,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  519. vllm/model_executor/layers/fused_moe/configs/E=62,N=512,device_name=AMD_Instinct_MI300X.json +200 -0
  520. vllm/model_executor/layers/fused_moe/configs/E=62,N=512,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  521. vllm/model_executor/layers/fused_moe/configs/E=64,N=1280,device_name=NVIDIA_A100-SXM4-80GB.json +146 -0
  522. vllm/model_executor/layers/fused_moe/configs/E=64,N=1280,device_name=NVIDIA_A800-SXM4-80GB.json +146 -0
  523. vllm/model_executor/layers/fused_moe/configs/E=64,N=1280,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8.json +146 -0
  524. vllm/model_executor/layers/fused_moe/configs/E=64,N=1280,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  525. vllm/model_executor/layers/fused_moe/configs/E=64,N=1280,device_name=NVIDIA_H200,dtype=fp8_w8a8.json +146 -0
  526. vllm/model_executor/layers/fused_moe/configs/E=64,N=1280,device_name=NVIDIA_H200.json +146 -0
  527. vllm/model_executor/layers/fused_moe/configs/E=64,N=1408,device_name=NVIDIA_B200.json +147 -0
  528. vllm/model_executor/layers/fused_moe/configs/E=64,N=1536,device_name=NVIDIA_H20,dtype=fp8_w8a8.json +146 -0
  529. vllm/model_executor/layers/fused_moe/configs/E=64,N=2560,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8.json +146 -0
  530. vllm/model_executor/layers/fused_moe/configs/E=64,N=2560,device_name=NVIDIA_H200,dtype=fp8_w8a8.json +146 -0
  531. vllm/model_executor/layers/fused_moe/configs/E=64,N=2560,device_name=NVIDIA_H200.json +146 -0
  532. vllm/model_executor/layers/fused_moe/configs/E=64,N=3072,device_name=NVIDIA_H20,dtype=fp8_w8a8.json +146 -0
  533. vllm/model_executor/layers/fused_moe/configs/E=64,N=3072,device_name=NVIDIA_H20.json +146 -0
  534. vllm/model_executor/layers/fused_moe/configs/E=64,N=320,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8.json +146 -0
  535. vllm/model_executor/layers/fused_moe/configs/E=64,N=320,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  536. vllm/model_executor/layers/fused_moe/configs/E=64,N=320,device_name=NVIDIA_H200,dtype=fp8_w8a8.json +146 -0
  537. vllm/model_executor/layers/fused_moe/configs/E=64,N=320,device_name=NVIDIA_H200.json +146 -0
  538. vllm/model_executor/layers/fused_moe/configs/E=64,N=384,device_name=NVIDIA_H20,dtype=fp8_w8a8.json +146 -0
  539. vllm/model_executor/layers/fused_moe/configs/E=64,N=384,device_name=NVIDIA_H20.json +146 -0
  540. vllm/model_executor/layers/fused_moe/configs/E=64,N=640,device_name=NVIDIA_A100-SXM4-80GB.json +146 -0
  541. vllm/model_executor/layers/fused_moe/configs/E=64,N=640,device_name=NVIDIA_A800-SXM4-80GB.json +146 -0
  542. vllm/model_executor/layers/fused_moe/configs/E=64,N=640,device_name=NVIDIA_GeForce_RTX_4090,dtype=fp8_w8a8.json +146 -0
  543. vllm/model_executor/layers/fused_moe/configs/E=64,N=640,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8.json +146 -0
  544. vllm/model_executor/layers/fused_moe/configs/E=64,N=640,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  545. vllm/model_executor/layers/fused_moe/configs/E=64,N=640,device_name=NVIDIA_H200,dtype=fp8_w8a8.json +146 -0
  546. vllm/model_executor/layers/fused_moe/configs/E=64,N=640,device_name=NVIDIA_H200.json +146 -0
  547. vllm/model_executor/layers/fused_moe/configs/E=64,N=768,device_name=NVIDIA_H100_PCIe,dtype=fp8_w8a8,block_shape=[128,128].json +147 -0
  548. vllm/model_executor/layers/fused_moe/configs/E=64,N=768,device_name=NVIDIA_H20,dtype=fp8_w8a8.json +146 -0
  549. vllm/model_executor/layers/fused_moe/configs/E=64,N=768,device_name=NVIDIA_H20.json +146 -0
  550. vllm/model_executor/layers/fused_moe/configs/E=64,N=896,device_name=NVIDIA_H20.json +146 -0
  551. vllm/model_executor/layers/fused_moe/configs/E=64,N=8960,device_name=NVIDIA_H100_80GB_HBM3,dtype=bf16.json +82 -0
  552. vllm/model_executor/layers/fused_moe/configs/E=64,N=8960,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8.json +82 -0
  553. vllm/model_executor/layers/fused_moe/configs/E=72,N=192,device_name=AMD_Instinct_MI300X.json +200 -0
  554. vllm/model_executor/layers/fused_moe/configs/E=72,N=384,device_name=AMD_Instinct_MI300X.json +200 -0
  555. vllm/model_executor/layers/fused_moe/configs/E=72,N=384,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  556. vllm/model_executor/layers/fused_moe/configs/E=72,N=768,device_name=AMD_Instinct_MI300X.json +200 -0
  557. vllm/model_executor/layers/fused_moe/configs/E=72,N=768,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  558. vllm/model_executor/layers/fused_moe/configs/E=8,N=14336,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8.json +164 -0
  559. vllm/model_executor/layers/fused_moe/configs/E=8,N=14336,device_name=AMD_Instinct_MI300X.json +200 -0
  560. vllm/model_executor/layers/fused_moe/configs/E=8,N=14336,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8.json +164 -0
  561. vllm/model_executor/layers/fused_moe/configs/E=8,N=14336,device_name=AMD_Instinct_MI325X.json +200 -0
  562. vllm/model_executor/layers/fused_moe/configs/E=8,N=14336,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8.json +138 -0
  563. vllm/model_executor/layers/fused_moe/configs/E=8,N=14336,device_name=NVIDIA_H200,dtype=fp8_w8a8.json +146 -0
  564. vllm/model_executor/layers/fused_moe/configs/E=8,N=14336,device_name=NVIDIA_H200.json +146 -0
  565. vllm/model_executor/layers/fused_moe/configs/E=8,N=16384,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8.json +164 -0
  566. vllm/model_executor/layers/fused_moe/configs/E=8,N=16384,device_name=AMD_Instinct_MI300X.json +200 -0
  567. vllm/model_executor/layers/fused_moe/configs/E=8,N=16384,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8.json +164 -0
  568. vllm/model_executor/layers/fused_moe/configs/E=8,N=16384,device_name=AMD_Instinct_MI325X.json +200 -0
  569. vllm/model_executor/layers/fused_moe/configs/E=8,N=1792,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8.json +164 -0
  570. vllm/model_executor/layers/fused_moe/configs/E=8,N=1792,device_name=AMD_Instinct_MI300X.json +200 -0
  571. vllm/model_executor/layers/fused_moe/configs/E=8,N=1792,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8.json +164 -0
  572. vllm/model_executor/layers/fused_moe/configs/E=8,N=1792,device_name=AMD_Instinct_MI325X.json +200 -0
  573. vllm/model_executor/layers/fused_moe/configs/E=8,N=1792,device_name=NVIDIA_A100-SXM4-40GB.json +146 -0
  574. vllm/model_executor/layers/fused_moe/configs/E=8,N=1792,device_name=NVIDIA_A100-SXM4-80GB.json +146 -0
  575. vllm/model_executor/layers/fused_moe/configs/E=8,N=1792,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  576. vllm/model_executor/layers/fused_moe/configs/E=8,N=1792,device_name=NVIDIA_H200,dtype=fp8_w8a8.json +146 -0
  577. vllm/model_executor/layers/fused_moe/configs/E=8,N=1792,device_name=NVIDIA_H200.json +146 -0
  578. vllm/model_executor/layers/fused_moe/configs/E=8,N=2048,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8.json +164 -0
  579. vllm/model_executor/layers/fused_moe/configs/E=8,N=2048,device_name=AMD_Instinct_MI300X.json +200 -0
  580. vllm/model_executor/layers/fused_moe/configs/E=8,N=2048,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8.json +164 -0
  581. vllm/model_executor/layers/fused_moe/configs/E=8,N=2048,device_name=AMD_Instinct_MI325X.json +200 -0
  582. vllm/model_executor/layers/fused_moe/configs/E=8,N=2048,device_name=NVIDIA_A100-SXM4-80GB.json +146 -0
  583. vllm/model_executor/layers/fused_moe/configs/E=8,N=2048,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8.json +146 -0
  584. vllm/model_executor/layers/fused_moe/configs/E=8,N=2048,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  585. vllm/model_executor/layers/fused_moe/configs/E=8,N=2048,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +154 -0
  586. vllm/model_executor/layers/fused_moe/configs/E=8,N=2048,device_name=NVIDIA_H200,dtype=fp8_w8a8.json +146 -0
  587. vllm/model_executor/layers/fused_moe/configs/E=8,N=2048,device_name=NVIDIA_H200.json +146 -0
  588. vllm/model_executor/layers/fused_moe/configs/E=8,N=3584,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8.json +164 -0
  589. vllm/model_executor/layers/fused_moe/configs/E=8,N=3584,device_name=AMD_Instinct_MI300X.json +200 -0
  590. vllm/model_executor/layers/fused_moe/configs/E=8,N=3584,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8.json +164 -0
  591. vllm/model_executor/layers/fused_moe/configs/E=8,N=3584,device_name=AMD_Instinct_MI325X.json +200 -0
  592. vllm/model_executor/layers/fused_moe/configs/E=8,N=3584,device_name=NVIDIA_A100-SXM4-40GB.json +146 -0
  593. vllm/model_executor/layers/fused_moe/configs/E=8,N=3584,device_name=NVIDIA_A100-SXM4-80GB.json +146 -0
  594. vllm/model_executor/layers/fused_moe/configs/E=8,N=3584,device_name=NVIDIA_GeForce_RTX_4090,dtype=fp8_w8a8.json +146 -0
  595. vllm/model_executor/layers/fused_moe/configs/E=8,N=3584,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8.json +146 -0
  596. vllm/model_executor/layers/fused_moe/configs/E=8,N=3584,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  597. vllm/model_executor/layers/fused_moe/configs/E=8,N=3584,device_name=NVIDIA_H200,dtype=fp8_w8a8.json +146 -0
  598. vllm/model_executor/layers/fused_moe/configs/E=8,N=3584,device_name=NVIDIA_H200.json +146 -0
  599. vllm/model_executor/layers/fused_moe/configs/E=8,N=3584,device_name=NVIDIA_L40S.json +173 -0
  600. vllm/model_executor/layers/fused_moe/configs/E=8,N=4096,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8.json +164 -0
  601. vllm/model_executor/layers/fused_moe/configs/E=8,N=4096,device_name=AMD_Instinct_MI300X.json +200 -0
  602. vllm/model_executor/layers/fused_moe/configs/E=8,N=4096,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8.json +164 -0
  603. vllm/model_executor/layers/fused_moe/configs/E=8,N=4096,device_name=AMD_Instinct_MI325X.json +200 -0
  604. vllm/model_executor/layers/fused_moe/configs/E=8,N=4096,device_name=NVIDIA_A100-SXM4-80GB.json +146 -0
  605. vllm/model_executor/layers/fused_moe/configs/E=8,N=4096,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8.json +146 -0
  606. vllm/model_executor/layers/fused_moe/configs/E=8,N=4096,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  607. vllm/model_executor/layers/fused_moe/configs/E=8,N=4096,device_name=NVIDIA_H200,dtype=fp8_w8a8.json +146 -0
  608. vllm/model_executor/layers/fused_moe/configs/E=8,N=4096,device_name=NVIDIA_H200.json +146 -0
  609. vllm/model_executor/layers/fused_moe/configs/E=8,N=7168,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8.json +164 -0
  610. vllm/model_executor/layers/fused_moe/configs/E=8,N=7168,device_name=AMD_Instinct_MI300X.json +200 -0
  611. vllm/model_executor/layers/fused_moe/configs/E=8,N=7168,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8.json +164 -0
  612. vllm/model_executor/layers/fused_moe/configs/E=8,N=7168,device_name=AMD_Instinct_MI325X.json +200 -0
  613. vllm/model_executor/layers/fused_moe/configs/E=8,N=7168,device_name=NVIDIA_A100-SXM4-80GB.json +146 -0
  614. vllm/model_executor/layers/fused_moe/configs/E=8,N=7168,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8.json +146 -0
  615. vllm/model_executor/layers/fused_moe/configs/E=8,N=7168,device_name=NVIDIA_H100_80GB_HBM3.json +146 -0
  616. vllm/model_executor/layers/fused_moe/configs/E=8,N=7168,device_name=NVIDIA_H200,dtype=fp8_w8a8.json +146 -0
  617. vllm/model_executor/layers/fused_moe/configs/E=8,N=7168,device_name=NVIDIA_H200.json +146 -0
  618. vllm/model_executor/layers/fused_moe/configs/E=8,N=8192,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8.json +164 -0
  619. vllm/model_executor/layers/fused_moe/configs/E=8,N=8192,device_name=AMD_Instinct_MI300X.json +200 -0
  620. vllm/model_executor/layers/fused_moe/configs/E=8,N=8192,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8.json +164 -0
  621. vllm/model_executor/layers/fused_moe/configs/E=8,N=8192,device_name=AMD_Instinct_MI325X.json +200 -0
  622. vllm/model_executor/layers/fused_moe/configs/E=8,N=8192,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8.json +146 -0
  623. vllm/model_executor/layers/fused_moe/configs/E=8,N=8192,device_name=NVIDIA_H200,dtype=fp8_w8a8.json +146 -0
  624. vllm/model_executor/layers/fused_moe/configs/README +12 -0
  625. vllm/model_executor/layers/fused_moe/cpu_fused_moe.py +354 -0
  626. vllm/model_executor/layers/fused_moe/cutlass_moe.py +1052 -0
  627. vllm/model_executor/layers/fused_moe/deep_gemm_moe.py +387 -0
  628. vllm/model_executor/layers/fused_moe/deep_gemm_utils.py +416 -0
  629. vllm/model_executor/layers/fused_moe/deepep_ht_prepare_finalize.py +420 -0
  630. vllm/model_executor/layers/fused_moe/deepep_ll_prepare_finalize.py +367 -0
  631. vllm/model_executor/layers/fused_moe/flashinfer_cutlass_moe.py +307 -0
  632. vllm/model_executor/layers/fused_moe/flashinfer_cutlass_prepare_finalize.py +362 -0
  633. vllm/model_executor/layers/fused_moe/flashinfer_trtllm_moe.py +192 -0
  634. vllm/model_executor/layers/fused_moe/fused_batched_moe.py +1012 -0
  635. vllm/model_executor/layers/fused_moe/fused_marlin_moe.py +792 -0
  636. vllm/model_executor/layers/fused_moe/fused_moe.py +2175 -0
  637. vllm/model_executor/layers/fused_moe/fused_moe_method_base.py +112 -0
  638. vllm/model_executor/layers/fused_moe/fused_moe_modular_method.py +164 -0
  639. vllm/model_executor/layers/fused_moe/gpt_oss_triton_kernels_moe.py +316 -0
  640. vllm/model_executor/layers/fused_moe/layer.py +1944 -0
  641. vllm/model_executor/layers/fused_moe/modular_kernel.py +1222 -0
  642. vllm/model_executor/layers/fused_moe/moe_align_block_size.py +174 -0
  643. vllm/model_executor/layers/fused_moe/moe_pallas.py +83 -0
  644. vllm/model_executor/layers/fused_moe/moe_permute_unpermute.py +229 -0
  645. vllm/model_executor/layers/fused_moe/moe_torch_iterative.py +60 -0
  646. vllm/model_executor/layers/fused_moe/pplx_prepare_finalize.py +362 -0
  647. vllm/model_executor/layers/fused_moe/prepare_finalize.py +77 -0
  648. vllm/model_executor/layers/fused_moe/rocm_aiter_fused_moe.py +265 -0
  649. vllm/model_executor/layers/fused_moe/routing_simulator.py +310 -0
  650. vllm/model_executor/layers/fused_moe/shared_fused_moe.py +97 -0
  651. vllm/model_executor/layers/fused_moe/topk_weight_and_reduce.py +171 -0
  652. vllm/model_executor/layers/fused_moe/triton_deep_gemm_moe.py +163 -0
  653. vllm/model_executor/layers/fused_moe/trtllm_moe.py +143 -0
  654. vllm/model_executor/layers/fused_moe/unquantized_fused_moe_method.py +578 -0
  655. vllm/model_executor/layers/fused_moe/utils.py +332 -0
  656. vllm/model_executor/layers/kda.py +448 -0
  657. vllm/model_executor/layers/layernorm.py +442 -0
  658. vllm/model_executor/layers/lightning_attn.py +729 -0
  659. vllm/model_executor/layers/linear.py +1424 -0
  660. vllm/model_executor/layers/logits_processor.py +106 -0
  661. vllm/model_executor/layers/mamba/__init__.py +0 -0
  662. vllm/model_executor/layers/mamba/abstract.py +71 -0
  663. vllm/model_executor/layers/mamba/linear_attn.py +402 -0
  664. vllm/model_executor/layers/mamba/mamba_mixer.py +535 -0
  665. vllm/model_executor/layers/mamba/mamba_mixer2.py +928 -0
  666. vllm/model_executor/layers/mamba/mamba_utils.py +225 -0
  667. vllm/model_executor/layers/mamba/ops/__init__.py +0 -0
  668. vllm/model_executor/layers/mamba/ops/causal_conv1d.py +1240 -0
  669. vllm/model_executor/layers/mamba/ops/layernorm_gated.py +172 -0
  670. vllm/model_executor/layers/mamba/ops/mamba_ssm.py +478 -0
  671. vllm/model_executor/layers/mamba/ops/ssd_bmm.py +211 -0
  672. vllm/model_executor/layers/mamba/ops/ssd_chunk_scan.py +456 -0
  673. vllm/model_executor/layers/mamba/ops/ssd_chunk_state.py +700 -0
  674. vllm/model_executor/layers/mamba/ops/ssd_combined.py +230 -0
  675. vllm/model_executor/layers/mamba/ops/ssd_state_passing.py +157 -0
  676. vllm/model_executor/layers/mamba/short_conv.py +264 -0
  677. vllm/model_executor/layers/mla.py +168 -0
  678. vllm/model_executor/layers/pooler.py +817 -0
  679. vllm/model_executor/layers/quantization/__init__.py +174 -0
  680. vllm/model_executor/layers/quantization/auto_round.py +454 -0
  681. vllm/model_executor/layers/quantization/awq.py +277 -0
  682. vllm/model_executor/layers/quantization/awq_marlin.py +659 -0
  683. vllm/model_executor/layers/quantization/awq_triton.py +337 -0
  684. vllm/model_executor/layers/quantization/base_config.py +170 -0
  685. vllm/model_executor/layers/quantization/bitblas.py +502 -0
  686. vllm/model_executor/layers/quantization/bitsandbytes.py +658 -0
  687. vllm/model_executor/layers/quantization/compressed_tensors/__init__.py +3 -0
  688. vllm/model_executor/layers/quantization/compressed_tensors/compressed_tensors.py +914 -0
  689. vllm/model_executor/layers/quantization/compressed_tensors/compressed_tensors_moe.py +2284 -0
  690. vllm/model_executor/layers/quantization/compressed_tensors/schemes/__init__.py +35 -0
  691. vllm/model_executor/layers/quantization/compressed_tensors/schemes/compressed_tensors_24.py +392 -0
  692. vllm/model_executor/layers/quantization/compressed_tensors/schemes/compressed_tensors_scheme.py +55 -0
  693. vllm/model_executor/layers/quantization/compressed_tensors/schemes/compressed_tensors_w4a16_24.py +176 -0
  694. vllm/model_executor/layers/quantization/compressed_tensors/schemes/compressed_tensors_w4a16_nvfp4.py +124 -0
  695. vllm/model_executor/layers/quantization/compressed_tensors/schemes/compressed_tensors_w4a4_nvfp4.py +218 -0
  696. vllm/model_executor/layers/quantization/compressed_tensors/schemes/compressed_tensors_w4a8_fp8.py +183 -0
  697. vllm/model_executor/layers/quantization/compressed_tensors/schemes/compressed_tensors_w4a8_int.py +153 -0
  698. vllm/model_executor/layers/quantization/compressed_tensors/schemes/compressed_tensors_w8a16_fp8.py +138 -0
  699. vllm/model_executor/layers/quantization/compressed_tensors/schemes/compressed_tensors_w8a8_fp8.py +200 -0
  700. vllm/model_executor/layers/quantization/compressed_tensors/schemes/compressed_tensors_w8a8_int8.py +125 -0
  701. vllm/model_executor/layers/quantization/compressed_tensors/schemes/compressed_tensors_wNa16.py +219 -0
  702. vllm/model_executor/layers/quantization/compressed_tensors/transform/__init__.py +0 -0
  703. vllm/model_executor/layers/quantization/compressed_tensors/transform/linear.py +260 -0
  704. vllm/model_executor/layers/quantization/compressed_tensors/transform/module.py +173 -0
  705. vllm/model_executor/layers/quantization/compressed_tensors/transform/schemes/__init__.py +0 -0
  706. vllm/model_executor/layers/quantization/compressed_tensors/transform/schemes/linear_qutlass_nvfp4.py +64 -0
  707. vllm/model_executor/layers/quantization/compressed_tensors/transform/utils.py +13 -0
  708. vllm/model_executor/layers/quantization/compressed_tensors/triton_scaled_mm.py +224 -0
  709. vllm/model_executor/layers/quantization/compressed_tensors/utils.py +216 -0
  710. vllm/model_executor/layers/quantization/deepspeedfp.py +218 -0
  711. vllm/model_executor/layers/quantization/experts_int8.py +240 -0
  712. vllm/model_executor/layers/quantization/fbgemm_fp8.py +195 -0
  713. vllm/model_executor/layers/quantization/fp8.py +1333 -0
  714. vllm/model_executor/layers/quantization/fp_quant.py +420 -0
  715. vllm/model_executor/layers/quantization/gguf.py +643 -0
  716. vllm/model_executor/layers/quantization/gptq.py +393 -0
  717. vllm/model_executor/layers/quantization/gptq_bitblas.py +482 -0
  718. vllm/model_executor/layers/quantization/gptq_marlin.py +789 -0
  719. vllm/model_executor/layers/quantization/gptq_marlin_24.py +320 -0
  720. vllm/model_executor/layers/quantization/hqq_marlin.py +371 -0
  721. vllm/model_executor/layers/quantization/inc.py +65 -0
  722. vllm/model_executor/layers/quantization/input_quant_fp8.py +171 -0
  723. vllm/model_executor/layers/quantization/ipex_quant.py +467 -0
  724. vllm/model_executor/layers/quantization/kernels/__init__.py +0 -0
  725. vllm/model_executor/layers/quantization/kernels/mixed_precision/MPLinearKernel.py +94 -0
  726. vllm/model_executor/layers/quantization/kernels/mixed_precision/__init__.py +105 -0
  727. vllm/model_executor/layers/quantization/kernels/mixed_precision/allspark.py +115 -0
  728. vllm/model_executor/layers/quantization/kernels/mixed_precision/bitblas.py +323 -0
  729. vllm/model_executor/layers/quantization/kernels/mixed_precision/conch.py +98 -0
  730. vllm/model_executor/layers/quantization/kernels/mixed_precision/cutlass.py +119 -0
  731. vllm/model_executor/layers/quantization/kernels/mixed_precision/dynamic_4bit.py +111 -0
  732. vllm/model_executor/layers/quantization/kernels/mixed_precision/exllama.py +161 -0
  733. vllm/model_executor/layers/quantization/kernels/mixed_precision/machete.py +159 -0
  734. vllm/model_executor/layers/quantization/kernels/mixed_precision/marlin.py +166 -0
  735. vllm/model_executor/layers/quantization/kernels/scaled_mm/ScaledMMLinearKernel.py +73 -0
  736. vllm/model_executor/layers/quantization/kernels/scaled_mm/__init__.py +97 -0
  737. vllm/model_executor/layers/quantization/kernels/scaled_mm/aiter.py +120 -0
  738. vllm/model_executor/layers/quantization/kernels/scaled_mm/cpu.py +219 -0
  739. vllm/model_executor/layers/quantization/kernels/scaled_mm/cutlass.py +140 -0
  740. vllm/model_executor/layers/quantization/kernels/scaled_mm/triton.py +42 -0
  741. vllm/model_executor/layers/quantization/kernels/scaled_mm/xla.py +105 -0
  742. vllm/model_executor/layers/quantization/kv_cache.py +146 -0
  743. vllm/model_executor/layers/quantization/modelopt.py +1788 -0
  744. vllm/model_executor/layers/quantization/moe_wna16.py +541 -0
  745. vllm/model_executor/layers/quantization/mxfp4.py +1162 -0
  746. vllm/model_executor/layers/quantization/petit.py +320 -0
  747. vllm/model_executor/layers/quantization/ptpc_fp8.py +137 -0
  748. vllm/model_executor/layers/quantization/quark/__init__.py +0 -0
  749. vllm/model_executor/layers/quantization/quark/quark.py +528 -0
  750. vllm/model_executor/layers/quantization/quark/quark_moe.py +683 -0
  751. vllm/model_executor/layers/quantization/quark/schemes/__init__.py +9 -0
  752. vllm/model_executor/layers/quantization/quark/schemes/quark_ocp_mx.py +306 -0
  753. vllm/model_executor/layers/quantization/quark/schemes/quark_scheme.py +55 -0
  754. vllm/model_executor/layers/quantization/quark/schemes/quark_w8a8_fp8.py +179 -0
  755. vllm/model_executor/layers/quantization/quark/schemes/quark_w8a8_int8.py +139 -0
  756. vllm/model_executor/layers/quantization/quark/utils.py +105 -0
  757. vllm/model_executor/layers/quantization/qutlass_utils.py +185 -0
  758. vllm/model_executor/layers/quantization/rtn.py +652 -0
  759. vllm/model_executor/layers/quantization/schema.py +90 -0
  760. vllm/model_executor/layers/quantization/torchao.py +380 -0
  761. vllm/model_executor/layers/quantization/tpu_int8.py +139 -0
  762. vllm/model_executor/layers/quantization/utils/__init__.py +6 -0
  763. vllm/model_executor/layers/quantization/utils/allspark_utils.py +67 -0
  764. vllm/model_executor/layers/quantization/utils/bitblas_utils.py +229 -0
  765. vllm/model_executor/layers/quantization/utils/configs/N=12288,K=7168,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  766. vllm/model_executor/layers/quantization/utils/configs/N=12288,K=7168,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  767. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=1536,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  768. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=1536,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  769. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=1536,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  770. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=1536,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  771. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=1536,device_name=NVIDIA_A800-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  772. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=1536,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  773. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=1536,device_name=NVIDIA_H20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  774. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=1536,device_name=NVIDIA_L20Y,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  775. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=7168,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  776. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=7168,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  777. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=7168,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  778. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=7168,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  779. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=7168,device_name=NVIDIA_A800-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  780. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=7168,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  781. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=7168,device_name=NVIDIA_H20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  782. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=7168,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  783. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=7168,device_name=NVIDIA_L20,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  784. vllm/model_executor/layers/quantization/utils/configs/N=1536,K=7168,device_name=NVIDIA_L20Y,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  785. vllm/model_executor/layers/quantization/utils/configs/N=2048,K=512,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  786. vllm/model_executor/layers/quantization/utils/configs/N=2048,K=512,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  787. vllm/model_executor/layers/quantization/utils/configs/N=2048,K=512,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  788. vllm/model_executor/layers/quantization/utils/configs/N=2048,K=512,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  789. vllm/model_executor/layers/quantization/utils/configs/N=2048,K=512,device_name=NVIDIA_A800-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  790. vllm/model_executor/layers/quantization/utils/configs/N=2048,K=512,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  791. vllm/model_executor/layers/quantization/utils/configs/N=2048,K=512,device_name=NVIDIA_H20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  792. vllm/model_executor/layers/quantization/utils/configs/N=2048,K=512,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  793. vllm/model_executor/layers/quantization/utils/configs/N=2048,K=512,device_name=NVIDIA_L20Y,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  794. vllm/model_executor/layers/quantization/utils/configs/N=2112,K=7168,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  795. vllm/model_executor/layers/quantization/utils/configs/N=2112,K=7168,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  796. vllm/model_executor/layers/quantization/utils/configs/N=2304,K=7168,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  797. vllm/model_executor/layers/quantization/utils/configs/N=2304,K=7168,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  798. vllm/model_executor/layers/quantization/utils/configs/N=2304,K=7168,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  799. vllm/model_executor/layers/quantization/utils/configs/N=2304,K=7168,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  800. vllm/model_executor/layers/quantization/utils/configs/N=2304,K=7168,device_name=NVIDIA_A800-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  801. vllm/model_executor/layers/quantization/utils/configs/N=2304,K=7168,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  802. vllm/model_executor/layers/quantization/utils/configs/N=2304,K=7168,device_name=NVIDIA_H20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  803. vllm/model_executor/layers/quantization/utils/configs/N=2304,K=7168,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  804. vllm/model_executor/layers/quantization/utils/configs/N=2304,K=7168,device_name=NVIDIA_L20Y,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  805. vllm/model_executor/layers/quantization/utils/configs/N=24576,K=1536,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  806. vllm/model_executor/layers/quantization/utils/configs/N=24576,K=1536,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  807. vllm/model_executor/layers/quantization/utils/configs/N=24576,K=7168,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  808. vllm/model_executor/layers/quantization/utils/configs/N=24576,K=7168,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  809. vllm/model_executor/layers/quantization/utils/configs/N=24576,K=7168,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  810. vllm/model_executor/layers/quantization/utils/configs/N=24576,K=7168,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  811. vllm/model_executor/layers/quantization/utils/configs/N=24576,K=7168,device_name=NVIDIA_A800-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  812. vllm/model_executor/layers/quantization/utils/configs/N=24576,K=7168,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  813. vllm/model_executor/layers/quantization/utils/configs/N=24576,K=7168,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  814. vllm/model_executor/layers/quantization/utils/configs/N=24576,K=7168,device_name=NVIDIA_H20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  815. vllm/model_executor/layers/quantization/utils/configs/N=24576,K=7168,device_name=NVIDIA_H20,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  816. vllm/model_executor/layers/quantization/utils/configs/N=24576,K=7168,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  817. vllm/model_executor/layers/quantization/utils/configs/N=24576,K=7168,device_name=NVIDIA_L20,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  818. vllm/model_executor/layers/quantization/utils/configs/N=24576,K=7168,device_name=NVIDIA_L20Y,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  819. vllm/model_executor/layers/quantization/utils/configs/N=256,K=7168,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  820. vllm/model_executor/layers/quantization/utils/configs/N=256,K=7168,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  821. vllm/model_executor/layers/quantization/utils/configs/N=256,K=7168,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  822. vllm/model_executor/layers/quantization/utils/configs/N=256,K=7168,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  823. vllm/model_executor/layers/quantization/utils/configs/N=256,K=7168,device_name=NVIDIA_A800-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  824. vllm/model_executor/layers/quantization/utils/configs/N=256,K=7168,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  825. vllm/model_executor/layers/quantization/utils/configs/N=256,K=7168,device_name=NVIDIA_H20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  826. vllm/model_executor/layers/quantization/utils/configs/N=256,K=7168,device_name=NVIDIA_L20Y,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  827. vllm/model_executor/layers/quantization/utils/configs/N=3072,K=1536,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  828. vllm/model_executor/layers/quantization/utils/configs/N=3072,K=1536,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  829. vllm/model_executor/layers/quantization/utils/configs/N=3072,K=1536,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  830. vllm/model_executor/layers/quantization/utils/configs/N=3072,K=1536,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  831. vllm/model_executor/layers/quantization/utils/configs/N=3072,K=1536,device_name=NVIDIA_H20,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  832. vllm/model_executor/layers/quantization/utils/configs/N=3072,K=1536,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  833. vllm/model_executor/layers/quantization/utils/configs/N=3072,K=1536,device_name=NVIDIA_L20,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  834. vllm/model_executor/layers/quantization/utils/configs/N=3072,K=7168,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  835. vllm/model_executor/layers/quantization/utils/configs/N=3072,K=7168,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  836. vllm/model_executor/layers/quantization/utils/configs/N=3072,K=7168,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  837. vllm/model_executor/layers/quantization/utils/configs/N=3072,K=7168,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  838. vllm/model_executor/layers/quantization/utils/configs/N=3072,K=7168,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  839. vllm/model_executor/layers/quantization/utils/configs/N=3072,K=7168,device_name=NVIDIA_H20,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  840. vllm/model_executor/layers/quantization/utils/configs/N=3072,K=7168,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  841. vllm/model_executor/layers/quantization/utils/configs/N=3072,K=7168,device_name=NVIDIA_L20,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  842. vllm/model_executor/layers/quantization/utils/configs/N=32768,K=512,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  843. vllm/model_executor/layers/quantization/utils/configs/N=32768,K=512,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  844. vllm/model_executor/layers/quantization/utils/configs/N=32768,K=512,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  845. vllm/model_executor/layers/quantization/utils/configs/N=32768,K=512,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  846. vllm/model_executor/layers/quantization/utils/configs/N=32768,K=512,device_name=NVIDIA_A800-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  847. vllm/model_executor/layers/quantization/utils/configs/N=32768,K=512,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  848. vllm/model_executor/layers/quantization/utils/configs/N=32768,K=512,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  849. vllm/model_executor/layers/quantization/utils/configs/N=32768,K=512,device_name=NVIDIA_H20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  850. vllm/model_executor/layers/quantization/utils/configs/N=32768,K=512,device_name=NVIDIA_H20,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  851. vllm/model_executor/layers/quantization/utils/configs/N=32768,K=512,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  852. vllm/model_executor/layers/quantization/utils/configs/N=32768,K=512,device_name=NVIDIA_L20,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  853. vllm/model_executor/layers/quantization/utils/configs/N=32768,K=512,device_name=NVIDIA_L20Y,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  854. vllm/model_executor/layers/quantization/utils/configs/N=36864,K=7168,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  855. vllm/model_executor/layers/quantization/utils/configs/N=36864,K=7168,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  856. vllm/model_executor/layers/quantization/utils/configs/N=36864,K=7168,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  857. vllm/model_executor/layers/quantization/utils/configs/N=36864,K=7168,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  858. vllm/model_executor/layers/quantization/utils/configs/N=36864,K=7168,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  859. vllm/model_executor/layers/quantization/utils/configs/N=4096,K=512,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  860. vllm/model_executor/layers/quantization/utils/configs/N=4096,K=512,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  861. vllm/model_executor/layers/quantization/utils/configs/N=4096,K=512,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  862. vllm/model_executor/layers/quantization/utils/configs/N=4096,K=512,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  863. vllm/model_executor/layers/quantization/utils/configs/N=4096,K=512,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  864. vllm/model_executor/layers/quantization/utils/configs/N=4096,K=512,device_name=NVIDIA_H20,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  865. vllm/model_executor/layers/quantization/utils/configs/N=4096,K=512,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  866. vllm/model_executor/layers/quantization/utils/configs/N=4096,K=512,device_name=NVIDIA_L20,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  867. vllm/model_executor/layers/quantization/utils/configs/N=4096,K=7168,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  868. vllm/model_executor/layers/quantization/utils/configs/N=4096,K=7168,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  869. vllm/model_executor/layers/quantization/utils/configs/N=4608,K=7168,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  870. vllm/model_executor/layers/quantization/utils/configs/N=4608,K=7168,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  871. vllm/model_executor/layers/quantization/utils/configs/N=4608,K=7168,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  872. vllm/model_executor/layers/quantization/utils/configs/N=4608,K=7168,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  873. vllm/model_executor/layers/quantization/utils/configs/N=4608,K=7168,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  874. vllm/model_executor/layers/quantization/utils/configs/N=4608,K=7168,device_name=NVIDIA_H20,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  875. vllm/model_executor/layers/quantization/utils/configs/N=4608,K=7168,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  876. vllm/model_executor/layers/quantization/utils/configs/N=4608,K=7168,device_name=NVIDIA_L20,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  877. vllm/model_executor/layers/quantization/utils/configs/N=512,K=7168,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  878. vllm/model_executor/layers/quantization/utils/configs/N=512,K=7168,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  879. vllm/model_executor/layers/quantization/utils/configs/N=512,K=7168,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  880. vllm/model_executor/layers/quantization/utils/configs/N=512,K=7168,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  881. vllm/model_executor/layers/quantization/utils/configs/N=512,K=7168,device_name=NVIDIA_H20,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  882. vllm/model_executor/layers/quantization/utils/configs/N=512,K=7168,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  883. vllm/model_executor/layers/quantization/utils/configs/N=512,K=7168,device_name=NVIDIA_L20,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  884. vllm/model_executor/layers/quantization/utils/configs/N=576,K=7168,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  885. vllm/model_executor/layers/quantization/utils/configs/N=576,K=7168,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  886. vllm/model_executor/layers/quantization/utils/configs/N=576,K=7168,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  887. vllm/model_executor/layers/quantization/utils/configs/N=576,K=7168,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  888. vllm/model_executor/layers/quantization/utils/configs/N=576,K=7168,device_name=NVIDIA_A800-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  889. vllm/model_executor/layers/quantization/utils/configs/N=576,K=7168,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  890. vllm/model_executor/layers/quantization/utils/configs/N=576,K=7168,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  891. vllm/model_executor/layers/quantization/utils/configs/N=576,K=7168,device_name=NVIDIA_H20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  892. vllm/model_executor/layers/quantization/utils/configs/N=576,K=7168,device_name=NVIDIA_H20,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  893. vllm/model_executor/layers/quantization/utils/configs/N=576,K=7168,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  894. vllm/model_executor/layers/quantization/utils/configs/N=576,K=7168,device_name=NVIDIA_L20,dtype=fp8_w8a8,block_shape=[128,128].json +18 -0
  895. vllm/model_executor/layers/quantization/utils/configs/N=576,K=7168,device_name=NVIDIA_L20Y,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  896. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1024,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  897. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1024,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  898. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1024,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  899. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1024,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  900. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1024,device_name=NVIDIA_A800-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  901. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1024,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  902. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1024,device_name=NVIDIA_H20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  903. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1024,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  904. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1024,device_name=NVIDIA_L20Y,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  905. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1152,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  906. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1152,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  907. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1152,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  908. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1152,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  909. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1152,device_name=NVIDIA_A800-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  910. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1152,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  911. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1152,device_name=NVIDIA_H20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  912. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1152,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  913. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=1152,device_name=NVIDIA_L20Y,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  914. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=128,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  915. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=128,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  916. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=128,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  917. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=128,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  918. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=128,device_name=NVIDIA_A800-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  919. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=128,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  920. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=128,device_name=NVIDIA_H20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  921. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=128,device_name=NVIDIA_L20Y,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  922. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=16384,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  923. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=16384,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  924. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=16384,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  925. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=16384,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  926. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=16384,device_name=NVIDIA_A800-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  927. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=16384,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  928. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=16384,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  929. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=16384,device_name=NVIDIA_H20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  930. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=16384,device_name=NVIDIA_H20,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  931. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=16384,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  932. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=16384,device_name=NVIDIA_L20,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  933. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=16384,device_name=NVIDIA_L20Y,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  934. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=18432,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  935. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=18432,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  936. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=18432,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  937. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=18432,device_name=NVIDIA_A100-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  938. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=18432,device_name=NVIDIA_A800-SXM4-80GB,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  939. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=18432,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  940. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=18432,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  941. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=18432,device_name=NVIDIA_H20,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  942. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=18432,device_name=NVIDIA_H20,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  943. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=18432,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  944. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=18432,device_name=NVIDIA_L20,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  945. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=18432,device_name=NVIDIA_L20Y,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  946. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=2048,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  947. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=2048,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  948. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=2048,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  949. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=2048,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  950. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=2048,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  951. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=2048,device_name=NVIDIA_H20,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  952. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=2048,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  953. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=2048,device_name=NVIDIA_L20,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  954. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=2304,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  955. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=2304,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  956. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=2304,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  957. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=2304,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  958. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=2304,device_name=NVIDIA_H100_80GB_HBM3,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  959. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=2304,device_name=NVIDIA_H20,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  960. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=2304,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  961. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=2304,device_name=NVIDIA_L20,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  962. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=256,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  963. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=256,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  964. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=256,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  965. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=256,device_name=NVIDIA_B200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  966. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=256,device_name=NVIDIA_H20,dtype=int8_w8a8,block_shape=[128,128].json +146 -0
  967. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=256,device_name=NVIDIA_H200,dtype=fp8_w8a8,block_shape=[128,128].json +146 -0
  968. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=256,device_name=NVIDIA_L20,dtype=fp8_w8a8,block_shape=[128,128].json +26 -0
  969. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=8192,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  970. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=8192,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  971. vllm/model_executor/layers/quantization/utils/configs/N=7168,K=8192,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  972. vllm/model_executor/layers/quantization/utils/configs/N=8192,K=1536,device_name=AMD_Instinct_MI300X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  973. vllm/model_executor/layers/quantization/utils/configs/N=8192,K=1536,device_name=AMD_Instinct_MI325X,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  974. vllm/model_executor/layers/quantization/utils/configs/N=8192,K=1536,device_name=AMD_Instinct_MI325_OAM,dtype=fp8_w8a8,block_shape=[128,128].json +164 -0
  975. vllm/model_executor/layers/quantization/utils/configs/README.md +3 -0
  976. vllm/model_executor/layers/quantization/utils/flashinfer_fp4_moe.py +89 -0
  977. vllm/model_executor/layers/quantization/utils/flashinfer_utils.py +298 -0
  978. vllm/model_executor/layers/quantization/utils/fp8_utils.py +1203 -0
  979. vllm/model_executor/layers/quantization/utils/gptq_utils.py +158 -0
  980. vllm/model_executor/layers/quantization/utils/int8_utils.py +489 -0
  981. vllm/model_executor/layers/quantization/utils/layer_utils.py +41 -0
  982. vllm/model_executor/layers/quantization/utils/machete_utils.py +56 -0
  983. vllm/model_executor/layers/quantization/utils/marlin_utils.py +575 -0
  984. vllm/model_executor/layers/quantization/utils/marlin_utils_fp4.py +397 -0
  985. vllm/model_executor/layers/quantization/utils/marlin_utils_fp8.py +351 -0
  986. vllm/model_executor/layers/quantization/utils/marlin_utils_test.py +161 -0
  987. vllm/model_executor/layers/quantization/utils/marlin_utils_test_24.py +467 -0
  988. vllm/model_executor/layers/quantization/utils/mxfp4_utils.py +181 -0
  989. vllm/model_executor/layers/quantization/utils/mxfp6_utils.py +142 -0
  990. vllm/model_executor/layers/quantization/utils/mxfp8_utils.py +24 -0
  991. vllm/model_executor/layers/quantization/utils/nvfp4_emulation_utils.py +142 -0
  992. vllm/model_executor/layers/quantization/utils/nvfp4_moe_support.py +63 -0
  993. vllm/model_executor/layers/quantization/utils/ocp_mx_utils.py +51 -0
  994. vllm/model_executor/layers/quantization/utils/petit_utils.py +124 -0
  995. vllm/model_executor/layers/quantization/utils/quant_utils.py +687 -0
  996. vllm/model_executor/layers/quantization/utils/w8a8_utils.py +516 -0
  997. vllm/model_executor/layers/resampler.py +283 -0
  998. vllm/model_executor/layers/rotary_embedding/__init__.py +278 -0
  999. vllm/model_executor/layers/rotary_embedding/base.py +235 -0
  1000. vllm/model_executor/layers/rotary_embedding/common.py +188 -0
  1001. vllm/model_executor/layers/rotary_embedding/deepseek_scaling_rope.py +165 -0
  1002. vllm/model_executor/layers/rotary_embedding/dual_chunk_rope.py +215 -0
  1003. vllm/model_executor/layers/rotary_embedding/dynamic_ntk_alpha_rope.py +43 -0
  1004. vllm/model_executor/layers/rotary_embedding/dynamic_ntk_scaling_rope.py +68 -0
  1005. vllm/model_executor/layers/rotary_embedding/ernie45_vl_rope.py +75 -0
  1006. vllm/model_executor/layers/rotary_embedding/linear_scaling_rope.py +115 -0
  1007. vllm/model_executor/layers/rotary_embedding/llama3_rope.py +54 -0
  1008. vllm/model_executor/layers/rotary_embedding/llama4_vision_rope.py +80 -0
  1009. vllm/model_executor/layers/rotary_embedding/mrope.py +397 -0
  1010. vllm/model_executor/layers/rotary_embedding/ntk_scaling_rope.py +47 -0
  1011. vllm/model_executor/layers/rotary_embedding/phi3_long_rope_scaled_rope.py +159 -0
  1012. vllm/model_executor/layers/rotary_embedding/yarn_scaling_rope.py +81 -0
  1013. vllm/model_executor/layers/utils.py +251 -0
  1014. vllm/model_executor/layers/vocab_parallel_embedding.py +558 -0
  1015. vllm/model_executor/model_loader/__init__.py +148 -0
  1016. vllm/model_executor/model_loader/base_loader.py +57 -0
  1017. vllm/model_executor/model_loader/bitsandbytes_loader.py +822 -0
  1018. vllm/model_executor/model_loader/default_loader.py +327 -0
  1019. vllm/model_executor/model_loader/dummy_loader.py +28 -0
  1020. vllm/model_executor/model_loader/gguf_loader.py +176 -0
  1021. vllm/model_executor/model_loader/online_quantization.py +224 -0
  1022. vllm/model_executor/model_loader/runai_streamer_loader.py +116 -0
  1023. vllm/model_executor/model_loader/sharded_state_loader.py +206 -0
  1024. vllm/model_executor/model_loader/tensorizer.py +790 -0
  1025. vllm/model_executor/model_loader/tensorizer_loader.py +151 -0
  1026. vllm/model_executor/model_loader/tpu.py +118 -0
  1027. vllm/model_executor/model_loader/utils.py +288 -0
  1028. vllm/model_executor/model_loader/weight_utils.py +1084 -0
  1029. vllm/model_executor/models/__init__.py +44 -0
  1030. vllm/model_executor/models/adapters.py +543 -0
  1031. vllm/model_executor/models/afmoe.py +711 -0
  1032. vllm/model_executor/models/aimv2.py +247 -0
  1033. vllm/model_executor/models/apertus.py +587 -0
  1034. vllm/model_executor/models/arcee.py +439 -0
  1035. vllm/model_executor/models/arctic.py +635 -0
  1036. vllm/model_executor/models/aria.py +655 -0
  1037. vllm/model_executor/models/aya_vision.py +450 -0
  1038. vllm/model_executor/models/baichuan.py +496 -0
  1039. vllm/model_executor/models/bailing_moe.py +646 -0
  1040. vllm/model_executor/models/bamba.py +522 -0
  1041. vllm/model_executor/models/bee.py +157 -0
  1042. vllm/model_executor/models/bert.py +925 -0
  1043. vllm/model_executor/models/bert_with_rope.py +732 -0
  1044. vllm/model_executor/models/blip.py +349 -0
  1045. vllm/model_executor/models/blip2.py +695 -0
  1046. vllm/model_executor/models/bloom.py +390 -0
  1047. vllm/model_executor/models/chameleon.py +1120 -0
  1048. vllm/model_executor/models/chatglm.py +498 -0
  1049. vllm/model_executor/models/clip.py +965 -0
  1050. vllm/model_executor/models/cohere2_vision.py +472 -0
  1051. vllm/model_executor/models/commandr.py +473 -0
  1052. vllm/model_executor/models/config.py +503 -0
  1053. vllm/model_executor/models/dbrx.py +482 -0
  1054. vllm/model_executor/models/deepencoder.py +673 -0
  1055. vllm/model_executor/models/deepseek_eagle.py +260 -0
  1056. vllm/model_executor/models/deepseek_mtp.py +360 -0
  1057. vllm/model_executor/models/deepseek_ocr.py +593 -0
  1058. vllm/model_executor/models/deepseek_v2.py +1649 -0
  1059. vllm/model_executor/models/deepseek_vl2.py +655 -0
  1060. vllm/model_executor/models/dots1.py +574 -0
  1061. vllm/model_executor/models/dots_ocr.py +900 -0
  1062. vllm/model_executor/models/ernie45.py +53 -0
  1063. vllm/model_executor/models/ernie45_moe.py +759 -0
  1064. vllm/model_executor/models/ernie45_vl.py +1742 -0
  1065. vllm/model_executor/models/ernie45_vl_moe.py +803 -0
  1066. vllm/model_executor/models/ernie_mtp.py +279 -0
  1067. vllm/model_executor/models/exaone.py +545 -0
  1068. vllm/model_executor/models/exaone4.py +531 -0
  1069. vllm/model_executor/models/fairseq2_llama.py +154 -0
  1070. vllm/model_executor/models/falcon.py +545 -0
  1071. vllm/model_executor/models/falcon_h1.py +685 -0
  1072. vllm/model_executor/models/flex_olmo.py +155 -0
  1073. vllm/model_executor/models/fuyu.py +373 -0
  1074. vllm/model_executor/models/gemma.py +426 -0
  1075. vllm/model_executor/models/gemma2.py +439 -0
  1076. vllm/model_executor/models/gemma3.py +571 -0
  1077. vllm/model_executor/models/gemma3_mm.py +741 -0
  1078. vllm/model_executor/models/gemma3n.py +1165 -0
  1079. vllm/model_executor/models/gemma3n_mm.py +811 -0
  1080. vllm/model_executor/models/glm.py +23 -0
  1081. vllm/model_executor/models/glm4.py +305 -0
  1082. vllm/model_executor/models/glm4_1v.py +1821 -0
  1083. vllm/model_executor/models/glm4_moe.py +747 -0
  1084. vllm/model_executor/models/glm4_moe_mtp.py +359 -0
  1085. vllm/model_executor/models/glm4v.py +784 -0
  1086. vllm/model_executor/models/gpt2.py +397 -0
  1087. vllm/model_executor/models/gpt_bigcode.py +339 -0
  1088. vllm/model_executor/models/gpt_j.py +346 -0
  1089. vllm/model_executor/models/gpt_neox.py +344 -0
  1090. vllm/model_executor/models/gpt_oss.py +738 -0
  1091. vllm/model_executor/models/granite.py +516 -0
  1092. vllm/model_executor/models/granite_speech.py +913 -0
  1093. vllm/model_executor/models/granitemoe.py +569 -0
  1094. vllm/model_executor/models/granitemoehybrid.py +709 -0
  1095. vllm/model_executor/models/granitemoeshared.py +333 -0
  1096. vllm/model_executor/models/gritlm.py +245 -0
  1097. vllm/model_executor/models/grok1.py +558 -0
  1098. vllm/model_executor/models/h2ovl.py +554 -0
  1099. vllm/model_executor/models/hunyuan_v1.py +1053 -0
  1100. vllm/model_executor/models/hyperclovax_vision.py +1166 -0
  1101. vllm/model_executor/models/idefics2_vision_model.py +426 -0
  1102. vllm/model_executor/models/idefics3.py +717 -0
  1103. vllm/model_executor/models/interfaces.py +1092 -0
  1104. vllm/model_executor/models/interfaces_base.py +214 -0
  1105. vllm/model_executor/models/intern_vit.py +453 -0
  1106. vllm/model_executor/models/internlm2.py +460 -0
  1107. vllm/model_executor/models/internlm2_ve.py +142 -0
  1108. vllm/model_executor/models/interns1.py +830 -0
  1109. vllm/model_executor/models/interns1_vit.py +432 -0
  1110. vllm/model_executor/models/internvl.py +1452 -0
  1111. vllm/model_executor/models/jais.py +397 -0
  1112. vllm/model_executor/models/jamba.py +610 -0
  1113. vllm/model_executor/models/jina_vl.py +147 -0
  1114. vllm/model_executor/models/keye.py +1761 -0
  1115. vllm/model_executor/models/keye_vl1_5.py +726 -0
  1116. vllm/model_executor/models/kimi_linear.py +663 -0
  1117. vllm/model_executor/models/kimi_vl.py +578 -0
  1118. vllm/model_executor/models/lfm2.py +532 -0
  1119. vllm/model_executor/models/lfm2_moe.py +762 -0
  1120. vllm/model_executor/models/lightonocr.py +195 -0
  1121. vllm/model_executor/models/llama.py +732 -0
  1122. vllm/model_executor/models/llama4.py +859 -0
  1123. vllm/model_executor/models/llama4_eagle.py +223 -0
  1124. vllm/model_executor/models/llama_eagle.py +218 -0
  1125. vllm/model_executor/models/llama_eagle3.py +367 -0
  1126. vllm/model_executor/models/llava.py +842 -0
  1127. vllm/model_executor/models/llava_next.py +583 -0
  1128. vllm/model_executor/models/llava_next_video.py +467 -0
  1129. vllm/model_executor/models/llava_onevision.py +923 -0
  1130. vllm/model_executor/models/longcat_flash.py +749 -0
  1131. vllm/model_executor/models/longcat_flash_mtp.py +349 -0
  1132. vllm/model_executor/models/mamba.py +276 -0
  1133. vllm/model_executor/models/mamba2.py +289 -0
  1134. vllm/model_executor/models/medusa.py +179 -0
  1135. vllm/model_executor/models/midashenglm.py +827 -0
  1136. vllm/model_executor/models/mimo.py +188 -0
  1137. vllm/model_executor/models/mimo_mtp.py +294 -0
  1138. vllm/model_executor/models/minicpm.py +664 -0
  1139. vllm/model_executor/models/minicpm3.py +242 -0
  1140. vllm/model_executor/models/minicpm_eagle.py +389 -0
  1141. vllm/model_executor/models/minicpmo.py +768 -0
  1142. vllm/model_executor/models/minicpmv.py +1745 -0
  1143. vllm/model_executor/models/minimax_m2.py +552 -0
  1144. vllm/model_executor/models/minimax_text_01.py +1012 -0
  1145. vllm/model_executor/models/minimax_vl_01.py +396 -0
  1146. vllm/model_executor/models/mistral3.py +637 -0
  1147. vllm/model_executor/models/mixtral.py +621 -0
  1148. vllm/model_executor/models/mllama4.py +1147 -0
  1149. vllm/model_executor/models/mlp_speculator.py +235 -0
  1150. vllm/model_executor/models/modernbert.py +450 -0
  1151. vllm/model_executor/models/module_mapping.py +74 -0
  1152. vllm/model_executor/models/molmo.py +1555 -0
  1153. vllm/model_executor/models/moonvit.py +677 -0
  1154. vllm/model_executor/models/mpt.py +335 -0
  1155. vllm/model_executor/models/nano_nemotron_vl.py +1740 -0
  1156. vllm/model_executor/models/nemotron.py +518 -0
  1157. vllm/model_executor/models/nemotron_h.py +852 -0
  1158. vllm/model_executor/models/nemotron_nas.py +491 -0
  1159. vllm/model_executor/models/nemotron_vl.py +653 -0
  1160. vllm/model_executor/models/nvlm_d.py +216 -0
  1161. vllm/model_executor/models/olmo.py +414 -0
  1162. vllm/model_executor/models/olmo2.py +454 -0
  1163. vllm/model_executor/models/olmoe.py +498 -0
  1164. vllm/model_executor/models/openpangu.py +1062 -0
  1165. vllm/model_executor/models/openpangu_mtp.py +265 -0
  1166. vllm/model_executor/models/opt.py +426 -0
  1167. vllm/model_executor/models/orion.py +372 -0
  1168. vllm/model_executor/models/ouro.py +516 -0
  1169. vllm/model_executor/models/ovis.py +559 -0
  1170. vllm/model_executor/models/ovis2_5.py +673 -0
  1171. vllm/model_executor/models/paddleocr_vl.py +1407 -0
  1172. vllm/model_executor/models/paligemma.py +412 -0
  1173. vllm/model_executor/models/persimmon.py +377 -0
  1174. vllm/model_executor/models/phi.py +374 -0
  1175. vllm/model_executor/models/phi3.py +18 -0
  1176. vllm/model_executor/models/phi3v.py +737 -0
  1177. vllm/model_executor/models/phi4_multimodal.py +1447 -0
  1178. vllm/model_executor/models/phi4mm.py +1253 -0
  1179. vllm/model_executor/models/phi4mm_audio.py +1296 -0
  1180. vllm/model_executor/models/phi4mm_utils.py +1907 -0
  1181. vllm/model_executor/models/phimoe.py +675 -0
  1182. vllm/model_executor/models/pixtral.py +1352 -0
  1183. vllm/model_executor/models/plamo2.py +981 -0
  1184. vllm/model_executor/models/qwen.py +368 -0
  1185. vllm/model_executor/models/qwen2.py +541 -0
  1186. vllm/model_executor/models/qwen2_5_omni_thinker.py +1246 -0
  1187. vllm/model_executor/models/qwen2_5_vl.py +1613 -0
  1188. vllm/model_executor/models/qwen2_audio.py +473 -0
  1189. vllm/model_executor/models/qwen2_moe.py +596 -0
  1190. vllm/model_executor/models/qwen2_rm.py +123 -0
  1191. vllm/model_executor/models/qwen2_vl.py +1670 -0
  1192. vllm/model_executor/models/qwen3.py +336 -0
  1193. vllm/model_executor/models/qwen3_moe.py +744 -0
  1194. vllm/model_executor/models/qwen3_next.py +1395 -0
  1195. vllm/model_executor/models/qwen3_next_mtp.py +296 -0
  1196. vllm/model_executor/models/qwen3_omni_moe_thinker.py +1721 -0
  1197. vllm/model_executor/models/qwen3_vl.py +1673 -0
  1198. vllm/model_executor/models/qwen3_vl_moe.py +415 -0
  1199. vllm/model_executor/models/qwen_vl.py +802 -0
  1200. vllm/model_executor/models/radio.py +555 -0
  1201. vllm/model_executor/models/registry.py +1155 -0
  1202. vllm/model_executor/models/roberta.py +259 -0
  1203. vllm/model_executor/models/rvl.py +107 -0
  1204. vllm/model_executor/models/seed_oss.py +497 -0
  1205. vllm/model_executor/models/siglip.py +1174 -0
  1206. vllm/model_executor/models/siglip2navit.py +724 -0
  1207. vllm/model_executor/models/skyworkr1v.py +953 -0
  1208. vllm/model_executor/models/smolvlm.py +38 -0
  1209. vllm/model_executor/models/solar.py +502 -0
  1210. vllm/model_executor/models/stablelm.py +359 -0
  1211. vllm/model_executor/models/starcoder2.py +367 -0
  1212. vllm/model_executor/models/step3_text.py +559 -0
  1213. vllm/model_executor/models/step3_vl.py +1148 -0
  1214. vllm/model_executor/models/swin.py +514 -0
  1215. vllm/model_executor/models/tarsier.py +619 -0
  1216. vllm/model_executor/models/telechat2.py +153 -0
  1217. vllm/model_executor/models/teleflm.py +78 -0
  1218. vllm/model_executor/models/terratorch.py +319 -0
  1219. vllm/model_executor/models/transformers/__init__.py +127 -0
  1220. vllm/model_executor/models/transformers/base.py +464 -0
  1221. vllm/model_executor/models/transformers/causal.py +65 -0
  1222. vllm/model_executor/models/transformers/legacy.py +90 -0
  1223. vllm/model_executor/models/transformers/moe.py +318 -0
  1224. vllm/model_executor/models/transformers/multimodal.py +411 -0
  1225. vllm/model_executor/models/transformers/pooling.py +119 -0
  1226. vllm/model_executor/models/transformers/utils.py +207 -0
  1227. vllm/model_executor/models/ultravox.py +681 -0
  1228. vllm/model_executor/models/utils.py +877 -0
  1229. vllm/model_executor/models/vision.py +552 -0
  1230. vllm/model_executor/models/voxtral.py +845 -0
  1231. vllm/model_executor/models/whisper.py +959 -0
  1232. vllm/model_executor/models/zamba2.py +986 -0
  1233. vllm/model_executor/parameter.py +642 -0
  1234. vllm/model_executor/utils.py +94 -0
  1235. vllm/model_executor/warmup/__init__.py +0 -0
  1236. vllm/model_executor/warmup/deep_gemm_warmup.py +314 -0
  1237. vllm/model_executor/warmup/kernel_warmup.py +98 -0
  1238. vllm/multimodal/__init__.py +40 -0
  1239. vllm/multimodal/audio.py +118 -0
  1240. vllm/multimodal/base.py +26 -0
  1241. vllm/multimodal/cache.py +755 -0
  1242. vllm/multimodal/evs.py +294 -0
  1243. vllm/multimodal/hasher.py +106 -0
  1244. vllm/multimodal/image.py +130 -0
  1245. vllm/multimodal/inputs.py +1036 -0
  1246. vllm/multimodal/parse.py +544 -0
  1247. vllm/multimodal/processing.py +2186 -0
  1248. vllm/multimodal/profiling.py +369 -0
  1249. vllm/multimodal/registry.py +360 -0
  1250. vllm/multimodal/utils.py +512 -0
  1251. vllm/multimodal/video.py +306 -0
  1252. vllm/outputs.py +345 -0
  1253. vllm/platforms/__init__.py +277 -0
  1254. vllm/platforms/cpu.py +414 -0
  1255. vllm/platforms/cuda.py +657 -0
  1256. vllm/platforms/interface.py +639 -0
  1257. vllm/platforms/rocm.py +466 -0
  1258. vllm/platforms/tpu.py +276 -0
  1259. vllm/platforms/xpu.py +274 -0
  1260. vllm/plugins/__init__.py +78 -0
  1261. vllm/plugins/io_processors/__init__.py +68 -0
  1262. vllm/plugins/io_processors/interface.py +77 -0
  1263. vllm/plugins/lora_resolvers/__init__.py +0 -0
  1264. vllm/plugins/lora_resolvers/filesystem_resolver.py +52 -0
  1265. vllm/pooling_params.py +228 -0
  1266. vllm/profiler/__init__.py +0 -0
  1267. vllm/profiler/gpu_profiler.py +37 -0
  1268. vllm/profiler/layerwise_profile.py +392 -0
  1269. vllm/profiler/utils.py +151 -0
  1270. vllm/py.typed +2 -0
  1271. vllm/ray/__init__.py +0 -0
  1272. vllm/ray/lazy_utils.py +26 -0
  1273. vllm/ray/ray_env.py +79 -0
  1274. vllm/reasoning/__init__.py +92 -0
  1275. vllm/reasoning/abs_reasoning_parsers.py +290 -0
  1276. vllm/reasoning/basic_parsers.py +162 -0
  1277. vllm/reasoning/deepseek_r1_reasoning_parser.py +67 -0
  1278. vllm/reasoning/deepseek_v3_reasoning_parser.py +62 -0
  1279. vllm/reasoning/ernie45_reasoning_parser.py +165 -0
  1280. vllm/reasoning/glm4_moe_reasoning_parser.py +171 -0
  1281. vllm/reasoning/gptoss_reasoning_parser.py +173 -0
  1282. vllm/reasoning/granite_reasoning_parser.py +363 -0
  1283. vllm/reasoning/hunyuan_a13b_reasoning_parser.py +237 -0
  1284. vllm/reasoning/identity_reasoning_parser.py +58 -0
  1285. vllm/reasoning/minimax_m2_reasoning_parser.py +67 -0
  1286. vllm/reasoning/mistral_reasoning_parser.py +55 -0
  1287. vllm/reasoning/olmo3_reasoning_parser.py +302 -0
  1288. vllm/reasoning/qwen3_reasoning_parser.py +67 -0
  1289. vllm/reasoning/seedoss_reasoning_parser.py +27 -0
  1290. vllm/reasoning/step3_reasoning_parser.py +107 -0
  1291. vllm/sampling_params.py +669 -0
  1292. vllm/scalar_type.py +355 -0
  1293. vllm/scripts.py +17 -0
  1294. vllm/sequence.py +98 -0
  1295. vllm/tasks.py +13 -0
  1296. vllm/third_party/__init__.py +0 -0
  1297. vllm/third_party/pynvml.py +6140 -0
  1298. vllm/tracing.py +135 -0
  1299. vllm/transformers_utils/__init__.py +26 -0
  1300. vllm/transformers_utils/chat_templates/__init__.py +5 -0
  1301. vllm/transformers_utils/chat_templates/registry.py +73 -0
  1302. vllm/transformers_utils/chat_templates/template_basic.jinja +3 -0
  1303. vllm/transformers_utils/chat_templates/template_blip2.jinja +11 -0
  1304. vllm/transformers_utils/chat_templates/template_chatml.jinja +10 -0
  1305. vllm/transformers_utils/chat_templates/template_deepseek_ocr.jinja +14 -0
  1306. vllm/transformers_utils/chat_templates/template_deepseek_vl2.jinja +23 -0
  1307. vllm/transformers_utils/chat_templates/template_fuyu.jinja +3 -0
  1308. vllm/transformers_utils/chat_templates/template_minicpmv45.jinja +93 -0
  1309. vllm/transformers_utils/config.py +1203 -0
  1310. vllm/transformers_utils/config_parser_base.py +20 -0
  1311. vllm/transformers_utils/configs/__init__.py +70 -0
  1312. vllm/transformers_utils/configs/afmoe.py +84 -0
  1313. vllm/transformers_utils/configs/arctic.py +206 -0
  1314. vllm/transformers_utils/configs/chatglm.py +75 -0
  1315. vllm/transformers_utils/configs/deepseek_vl2.py +126 -0
  1316. vllm/transformers_utils/configs/dotsocr.py +71 -0
  1317. vllm/transformers_utils/configs/eagle.py +84 -0
  1318. vllm/transformers_utils/configs/falcon.py +89 -0
  1319. vllm/transformers_utils/configs/flex_olmo.py +77 -0
  1320. vllm/transformers_utils/configs/jais.py +243 -0
  1321. vllm/transformers_utils/configs/kimi_linear.py +144 -0
  1322. vllm/transformers_utils/configs/kimi_vl.py +38 -0
  1323. vllm/transformers_utils/configs/lfm2_moe.py +159 -0
  1324. vllm/transformers_utils/configs/medusa.py +65 -0
  1325. vllm/transformers_utils/configs/midashenglm.py +103 -0
  1326. vllm/transformers_utils/configs/mistral.py +174 -0
  1327. vllm/transformers_utils/configs/mlp_speculator.py +69 -0
  1328. vllm/transformers_utils/configs/moonvit.py +33 -0
  1329. vllm/transformers_utils/configs/nemotron.py +212 -0
  1330. vllm/transformers_utils/configs/nemotron_h.py +282 -0
  1331. vllm/transformers_utils/configs/olmo3.py +79 -0
  1332. vllm/transformers_utils/configs/ovis.py +182 -0
  1333. vllm/transformers_utils/configs/qwen3_next.py +274 -0
  1334. vllm/transformers_utils/configs/radio.py +89 -0
  1335. vllm/transformers_utils/configs/speculators/__init__.py +2 -0
  1336. vllm/transformers_utils/configs/speculators/algos.py +38 -0
  1337. vllm/transformers_utils/configs/speculators/base.py +114 -0
  1338. vllm/transformers_utils/configs/step3_vl.py +174 -0
  1339. vllm/transformers_utils/configs/ultravox.py +118 -0
  1340. vllm/transformers_utils/detokenizer_utils.py +198 -0
  1341. vllm/transformers_utils/dynamic_module.py +59 -0
  1342. vllm/transformers_utils/processor.py +402 -0
  1343. vllm/transformers_utils/processors/__init__.py +15 -0
  1344. vllm/transformers_utils/processors/deepseek_ocr.py +438 -0
  1345. vllm/transformers_utils/processors/deepseek_vl2.py +406 -0
  1346. vllm/transformers_utils/processors/ovis.py +453 -0
  1347. vllm/transformers_utils/processors/ovis2_5.py +468 -0
  1348. vllm/transformers_utils/runai_utils.py +104 -0
  1349. vllm/transformers_utils/s3_utils.py +95 -0
  1350. vllm/transformers_utils/tokenizer.py +293 -0
  1351. vllm/transformers_utils/tokenizer_base.py +155 -0
  1352. vllm/transformers_utils/tokenizers/__init__.py +16 -0
  1353. vllm/transformers_utils/tokenizers/mistral.py +502 -0
  1354. vllm/transformers_utils/utils.py +130 -0
  1355. vllm/triton_utils/__init__.py +19 -0
  1356. vllm/triton_utils/importing.py +103 -0
  1357. vllm/usage/__init__.py +0 -0
  1358. vllm/usage/usage_lib.py +294 -0
  1359. vllm/utils/__init__.py +82 -0
  1360. vllm/utils/argparse_utils.py +487 -0
  1361. vllm/utils/async_utils.py +303 -0
  1362. vllm/utils/cache.py +214 -0
  1363. vllm/utils/collection_utils.py +139 -0
  1364. vllm/utils/counter.py +45 -0
  1365. vllm/utils/deep_gemm.py +391 -0
  1366. vllm/utils/flashinfer.py +490 -0
  1367. vllm/utils/func_utils.py +236 -0
  1368. vllm/utils/gc_utils.py +147 -0
  1369. vllm/utils/hashing.py +63 -0
  1370. vllm/utils/import_utils.py +411 -0
  1371. vllm/utils/jsontree.py +165 -0
  1372. vllm/utils/math_utils.py +32 -0
  1373. vllm/utils/mem_constants.py +13 -0
  1374. vllm/utils/mem_utils.py +232 -0
  1375. vllm/utils/nccl.py +64 -0
  1376. vllm/utils/network_utils.py +331 -0
  1377. vllm/utils/platform_utils.py +59 -0
  1378. vllm/utils/profiling.py +56 -0
  1379. vllm/utils/registry.py +49 -0
  1380. vllm/utils/serial_utils.py +169 -0
  1381. vllm/utils/system_utils.py +229 -0
  1382. vllm/utils/tensor_schema.py +255 -0
  1383. vllm/utils/torch_utils.py +657 -0
  1384. vllm/v1/__init__.py +0 -0
  1385. vllm/v1/attention/__init__.py +0 -0
  1386. vllm/v1/attention/backends/__init__.py +0 -0
  1387. vllm/v1/attention/backends/cpu_attn.py +496 -0
  1388. vllm/v1/attention/backends/flash_attn.py +1028 -0
  1389. vllm/v1/attention/backends/flashinfer.py +1572 -0
  1390. vllm/v1/attention/backends/flex_attention.py +926 -0
  1391. vllm/v1/attention/backends/gdn_attn.py +387 -0
  1392. vllm/v1/attention/backends/linear_attn.py +74 -0
  1393. vllm/v1/attention/backends/mamba1_attn.py +165 -0
  1394. vllm/v1/attention/backends/mamba2_attn.py +354 -0
  1395. vllm/v1/attention/backends/mamba_attn.py +115 -0
  1396. vllm/v1/attention/backends/mla/__init__.py +0 -0
  1397. vllm/v1/attention/backends/mla/common.py +2031 -0
  1398. vllm/v1/attention/backends/mla/cutlass_mla.py +275 -0
  1399. vllm/v1/attention/backends/mla/flashattn_mla.py +337 -0
  1400. vllm/v1/attention/backends/mla/flashinfer_mla.py +171 -0
  1401. vllm/v1/attention/backends/mla/flashmla.py +314 -0
  1402. vllm/v1/attention/backends/mla/flashmla_sparse.py +548 -0
  1403. vllm/v1/attention/backends/mla/indexer.py +362 -0
  1404. vllm/v1/attention/backends/mla/rocm_aiter_mla.py +294 -0
  1405. vllm/v1/attention/backends/mla/triton_mla.py +171 -0
  1406. vllm/v1/attention/backends/pallas.py +436 -0
  1407. vllm/v1/attention/backends/rocm_aiter_fa.py +816 -0
  1408. vllm/v1/attention/backends/rocm_aiter_unified_attn.py +196 -0
  1409. vllm/v1/attention/backends/rocm_attn.py +362 -0
  1410. vllm/v1/attention/backends/short_conv_attn.py +105 -0
  1411. vllm/v1/attention/backends/tree_attn.py +425 -0
  1412. vllm/v1/attention/backends/triton_attn.py +373 -0
  1413. vllm/v1/attention/backends/utils.py +1116 -0
  1414. vllm/v1/attention/backends/xformers.py +417 -0
  1415. vllm/v1/core/__init__.py +0 -0
  1416. vllm/v1/core/block_pool.py +428 -0
  1417. vllm/v1/core/encoder_cache_manager.py +343 -0
  1418. vllm/v1/core/kv_cache_coordinator.py +480 -0
  1419. vllm/v1/core/kv_cache_manager.py +420 -0
  1420. vllm/v1/core/kv_cache_utils.py +1340 -0
  1421. vllm/v1/core/sched/__init__.py +0 -0
  1422. vllm/v1/core/sched/async_scheduler.py +62 -0
  1423. vllm/v1/core/sched/interface.py +181 -0
  1424. vllm/v1/core/sched/output.py +202 -0
  1425. vllm/v1/core/sched/request_queue.py +221 -0
  1426. vllm/v1/core/sched/scheduler.py +1617 -0
  1427. vllm/v1/core/sched/utils.py +72 -0
  1428. vllm/v1/core/single_type_kv_cache_manager.py +736 -0
  1429. vllm/v1/cudagraph_dispatcher.py +148 -0
  1430. vllm/v1/engine/__init__.py +206 -0
  1431. vllm/v1/engine/async_llm.py +797 -0
  1432. vllm/v1/engine/coordinator.py +377 -0
  1433. vllm/v1/engine/core.py +1420 -0
  1434. vllm/v1/engine/core_client.py +1400 -0
  1435. vllm/v1/engine/detokenizer.py +351 -0
  1436. vllm/v1/engine/exceptions.py +18 -0
  1437. vllm/v1/engine/llm_engine.py +408 -0
  1438. vllm/v1/engine/logprobs.py +182 -0
  1439. vllm/v1/engine/output_processor.py +642 -0
  1440. vllm/v1/engine/parallel_sampling.py +145 -0
  1441. vllm/v1/engine/processor.py +621 -0
  1442. vllm/v1/engine/utils.py +1072 -0
  1443. vllm/v1/executor/__init__.py +6 -0
  1444. vllm/v1/executor/abstract.py +352 -0
  1445. vllm/v1/executor/multiproc_executor.py +877 -0
  1446. vllm/v1/executor/ray_distributed_executor.py +8 -0
  1447. vllm/v1/executor/ray_executor.py +626 -0
  1448. vllm/v1/executor/ray_utils.py +465 -0
  1449. vllm/v1/executor/uniproc_executor.py +183 -0
  1450. vllm/v1/kv_cache_interface.py +403 -0
  1451. vllm/v1/kv_offload/__init__.py +0 -0
  1452. vllm/v1/kv_offload/abstract.py +161 -0
  1453. vllm/v1/kv_offload/arc_manager.py +237 -0
  1454. vllm/v1/kv_offload/backend.py +97 -0
  1455. vllm/v1/kv_offload/backends/__init__.py +0 -0
  1456. vllm/v1/kv_offload/backends/cpu.py +62 -0
  1457. vllm/v1/kv_offload/cpu.py +93 -0
  1458. vllm/v1/kv_offload/factory.py +56 -0
  1459. vllm/v1/kv_offload/lru_manager.py +139 -0
  1460. vllm/v1/kv_offload/mediums.py +39 -0
  1461. vllm/v1/kv_offload/spec.py +62 -0
  1462. vllm/v1/kv_offload/worker/__init__.py +0 -0
  1463. vllm/v1/kv_offload/worker/cpu_gpu.py +185 -0
  1464. vllm/v1/kv_offload/worker/worker.py +144 -0
  1465. vllm/v1/metrics/__init__.py +0 -0
  1466. vllm/v1/metrics/loggers.py +1238 -0
  1467. vllm/v1/metrics/prometheus.py +82 -0
  1468. vllm/v1/metrics/ray_wrappers.py +169 -0
  1469. vllm/v1/metrics/reader.py +257 -0
  1470. vllm/v1/metrics/stats.py +420 -0
  1471. vllm/v1/outputs.py +249 -0
  1472. vllm/v1/pool/__init__.py +0 -0
  1473. vllm/v1/pool/metadata.py +82 -0
  1474. vllm/v1/request.py +259 -0
  1475. vllm/v1/sample/__init__.py +0 -0
  1476. vllm/v1/sample/logits_processor/__init__.py +352 -0
  1477. vllm/v1/sample/logits_processor/builtin.py +274 -0
  1478. vllm/v1/sample/logits_processor/interface.py +106 -0
  1479. vllm/v1/sample/logits_processor/state.py +165 -0
  1480. vllm/v1/sample/metadata.py +44 -0
  1481. vllm/v1/sample/ops/__init__.py +0 -0
  1482. vllm/v1/sample/ops/bad_words.py +52 -0
  1483. vllm/v1/sample/ops/logprobs.py +25 -0
  1484. vllm/v1/sample/ops/penalties.py +57 -0
  1485. vllm/v1/sample/ops/topk_topp_sampler.py +290 -0
  1486. vllm/v1/sample/rejection_sampler.py +793 -0
  1487. vllm/v1/sample/sampler.py +316 -0
  1488. vllm/v1/sample/tpu/__init__.py +0 -0
  1489. vllm/v1/sample/tpu/metadata.py +120 -0
  1490. vllm/v1/sample/tpu/sampler.py +215 -0
  1491. vllm/v1/serial_utils.py +532 -0
  1492. vllm/v1/spec_decode/__init__.py +0 -0
  1493. vllm/v1/spec_decode/eagle.py +1225 -0
  1494. vllm/v1/spec_decode/medusa.py +73 -0
  1495. vllm/v1/spec_decode/metadata.py +66 -0
  1496. vllm/v1/spec_decode/metrics.py +224 -0
  1497. vllm/v1/spec_decode/ngram_proposer.py +291 -0
  1498. vllm/v1/spec_decode/suffix_decoding.py +103 -0
  1499. vllm/v1/spec_decode/utils.py +16 -0
  1500. vllm/v1/structured_output/__init__.py +338 -0
  1501. vllm/v1/structured_output/backend_guidance.py +265 -0
  1502. vllm/v1/structured_output/backend_lm_format_enforcer.py +177 -0
  1503. vllm/v1/structured_output/backend_outlines.py +324 -0
  1504. vllm/v1/structured_output/backend_types.py +136 -0
  1505. vllm/v1/structured_output/backend_xgrammar.py +362 -0
  1506. vllm/v1/structured_output/request.py +94 -0
  1507. vllm/v1/structured_output/utils.py +469 -0
  1508. vllm/v1/utils.py +414 -0
  1509. vllm/v1/worker/__init__.py +0 -0
  1510. vllm/v1/worker/block_table.py +327 -0
  1511. vllm/v1/worker/cpu_model_runner.py +122 -0
  1512. vllm/v1/worker/cpu_worker.py +206 -0
  1513. vllm/v1/worker/dp_utils.py +230 -0
  1514. vllm/v1/worker/ec_connector_model_runner_mixin.py +87 -0
  1515. vllm/v1/worker/gpu_input_batch.py +975 -0
  1516. vllm/v1/worker/gpu_model_runner.py +5102 -0
  1517. vllm/v1/worker/gpu_ubatch_wrapper.py +466 -0
  1518. vllm/v1/worker/gpu_worker.py +894 -0
  1519. vllm/v1/worker/kv_connector_model_runner_mixin.py +144 -0
  1520. vllm/v1/worker/lora_model_runner_mixin.py +213 -0
  1521. vllm/v1/worker/tpu_input_batch.py +593 -0
  1522. vllm/v1/worker/tpu_model_runner.py +2173 -0
  1523. vllm/v1/worker/tpu_worker.py +355 -0
  1524. vllm/v1/worker/ubatch_utils.py +73 -0
  1525. vllm/v1/worker/ubatching.py +231 -0
  1526. vllm/v1/worker/utils.py +366 -0
  1527. vllm/v1/worker/worker_base.py +375 -0
  1528. vllm/v1/worker/xpu_model_runner.py +55 -0
  1529. vllm/v1/worker/xpu_worker.py +189 -0
  1530. vllm/version.py +39 -0
  1531. vllm/vllm_flash_attn/.gitkeep +0 -0
  1532. vllm_cpu_amxbf16-0.11.2.post2.dist-info/METADATA +345 -0
  1533. vllm_cpu_amxbf16-0.11.2.post2.dist-info/RECORD +1536 -0
  1534. vllm_cpu_amxbf16-0.11.2.post2.dist-info/WHEEL +5 -0
  1535. vllm_cpu_amxbf16-0.11.2.post2.dist-info/entry_points.txt +5 -0
  1536. vllm_cpu_amxbf16-0.11.2.post2.dist-info/top_level.txt +1 -0
vllm/envs.py ADDED
@@ -0,0 +1,1659 @@
1
+ # SPDX-License-Identifier: Apache-2.0
2
+ # SPDX-FileCopyrightText: Copyright contributors to the vLLM project
3
+
4
+ import functools
5
+ import hashlib
6
+ import json
7
+ import os
8
+ import sys
9
+ import tempfile
10
+ from collections.abc import Callable
11
+ from typing import TYPE_CHECKING, Any, Literal
12
+
13
+ if TYPE_CHECKING:
14
+ VLLM_HOST_IP: str = ""
15
+ VLLM_PORT: int | None = None
16
+ VLLM_RPC_BASE_PATH: str = tempfile.gettempdir()
17
+ VLLM_USE_MODELSCOPE: bool = False
18
+ VLLM_RINGBUFFER_WARNING_INTERVAL: int = 60
19
+ VLLM_NCCL_SO_PATH: str | None = None
20
+ LD_LIBRARY_PATH: str | None = None
21
+ VLLM_ROCM_SLEEP_MEM_CHUNK_SIZE: int = 256
22
+ VLLM_V1_USE_PREFILL_DECODE_ATTENTION: bool = False
23
+ VLLM_FLASH_ATTN_VERSION: int | None = None
24
+ LOCAL_RANK: int = 0
25
+ CUDA_VISIBLE_DEVICES: str | None = None
26
+ VLLM_ENGINE_ITERATION_TIMEOUT_S: int = 60
27
+ VLLM_API_KEY: str | None = None
28
+ VLLM_DEBUG_LOG_API_SERVER_RESPONSE: bool = False
29
+ S3_ACCESS_KEY_ID: str | None = None
30
+ S3_SECRET_ACCESS_KEY: str | None = None
31
+ S3_ENDPOINT_URL: str | None = None
32
+ VLLM_MODEL_REDIRECT_PATH: str | None = None
33
+ VLLM_CACHE_ROOT: str = os.path.expanduser("~/.cache/vllm")
34
+ VLLM_CONFIG_ROOT: str = os.path.expanduser("~/.config/vllm")
35
+ VLLM_USAGE_STATS_SERVER: str = "https://stats.vllm.ai"
36
+ VLLM_NO_USAGE_STATS: bool = False
37
+ VLLM_DISABLE_FLASHINFER_PREFILL: bool = False
38
+ VLLM_DO_NOT_TRACK: bool = False
39
+ VLLM_USAGE_SOURCE: str = ""
40
+ VLLM_CONFIGURE_LOGGING: int = 1
41
+ VLLM_LOGGING_LEVEL: str = "INFO"
42
+ VLLM_LOGGING_PREFIX: str = ""
43
+ VLLM_LOGGING_STREAM: str = "ext://sys.stdout"
44
+ VLLM_LOGGING_CONFIG_PATH: str | None = None
45
+ VLLM_LOG_STATS_INTERVAL: float = 10.0
46
+ VLLM_TRACE_FUNCTION: int = 0
47
+ VLLM_ATTENTION_BACKEND: str | None = None
48
+ VLLM_USE_FLASHINFER_SAMPLER: bool | None = None
49
+ VLLM_PP_LAYER_PARTITION: str | None = None
50
+ VLLM_CPU_KVCACHE_SPACE: int | None = 0
51
+ VLLM_CPU_OMP_THREADS_BIND: str = ""
52
+ VLLM_CPU_NUM_OF_RESERVED_CPU: int | None = None
53
+ VLLM_CPU_MOE_PREPACK: bool = True
54
+ VLLM_CPU_SGL_KERNEL: bool = False
55
+ VLLM_XLA_CACHE_PATH: str = os.path.join(VLLM_CACHE_ROOT, "xla_cache")
56
+ VLLM_XLA_CHECK_RECOMPILATION: bool = False
57
+ VLLM_FUSED_MOE_CHUNK_SIZE: int = 64 * 1024
58
+ VLLM_ENABLE_FUSED_MOE_ACTIVATION_CHUNKING: bool = True
59
+ VLLM_USE_RAY_COMPILED_DAG_CHANNEL_TYPE: Literal["auto", "nccl", "shm"] = "auto"
60
+ VLLM_USE_RAY_COMPILED_DAG_OVERLAP_COMM: bool = False
61
+ VLLM_USE_RAY_WRAPPED_PP_COMM: bool = True
62
+ VLLM_XLA_USE_SPMD: bool = False
63
+ VLLM_WORKER_MULTIPROC_METHOD: Literal["fork", "spawn"] = "fork"
64
+ VLLM_ASSETS_CACHE: str = os.path.join(VLLM_CACHE_ROOT, "assets")
65
+ VLLM_ASSETS_CACHE_MODEL_CLEAN: bool = False
66
+ VLLM_IMAGE_FETCH_TIMEOUT: int = 5
67
+ VLLM_VIDEO_FETCH_TIMEOUT: int = 30
68
+ VLLM_AUDIO_FETCH_TIMEOUT: int = 10
69
+ VLLM_MEDIA_URL_ALLOW_REDIRECTS: bool = True
70
+ VLLM_MEDIA_LOADING_THREAD_COUNT: int = 8
71
+ VLLM_MAX_AUDIO_CLIP_FILESIZE_MB: int = 25
72
+ VLLM_VIDEO_LOADER_BACKEND: str = "opencv"
73
+ VLLM_MEDIA_CONNECTOR: str = "http"
74
+ VLLM_MM_INPUT_CACHE_GIB: int = 4
75
+ VLLM_TARGET_DEVICE: str = "cuda"
76
+ VLLM_MAIN_CUDA_VERSION: str = "12.8"
77
+ MAX_JOBS: str | None = None
78
+ NVCC_THREADS: str | None = None
79
+ VLLM_USE_PRECOMPILED: bool = False
80
+ VLLM_DOCKER_BUILD_CONTEXT: bool = False
81
+ VLLM_TEST_USE_PRECOMPILED_NIGHTLY_WHEEL: bool = False
82
+ VLLM_KEEP_ALIVE_ON_ENGINE_DEATH: bool = False
83
+ CMAKE_BUILD_TYPE: Literal["Debug", "Release", "RelWithDebInfo"] | None = None
84
+ VERBOSE: bool = False
85
+ VLLM_ALLOW_LONG_MAX_MODEL_LEN: bool = False
86
+ VLLM_RPC_TIMEOUT: int = 10000 # ms
87
+ VLLM_HTTP_TIMEOUT_KEEP_ALIVE: int = 5 # seconds
88
+ VLLM_PLUGINS: list[str] | None = None
89
+ VLLM_LORA_RESOLVER_CACHE_DIR: str | None = None
90
+ VLLM_TORCH_CUDA_PROFILE: bool = False
91
+ VLLM_TORCH_PROFILER_DIR: str | None = None
92
+ VLLM_TORCH_PROFILER_RECORD_SHAPES: bool = False
93
+ VLLM_TORCH_PROFILER_WITH_PROFILE_MEMORY: bool = False
94
+ VLLM_USE_AOT_COMPILE: bool = False
95
+ VLLM_USE_BYTECODE_HOOK: bool = False
96
+ VLLM_FORCE_AOT_LOAD: bool = False
97
+ VLLM_TORCH_PROFILER_WITH_STACK: bool = True
98
+ VLLM_TORCH_PROFILER_WITH_FLOPS: bool = False
99
+ VLLM_USE_TRITON_AWQ: bool = False
100
+ VLLM_ALLOW_RUNTIME_LORA_UPDATING: bool = False
101
+ VLLM_SKIP_P2P_CHECK: bool = False
102
+ VLLM_DISABLED_KERNELS: list[str] = []
103
+ VLLM_DISABLE_PYNCCL: bool = False
104
+ VLLM_ROCM_USE_AITER: bool = False
105
+ VLLM_ROCM_USE_AITER_PAGED_ATTN: bool = False
106
+ VLLM_ROCM_USE_AITER_LINEAR: bool = True
107
+ VLLM_ROCM_USE_AITER_MOE: bool = True
108
+ VLLM_ROCM_USE_AITER_RMSNORM: bool = True
109
+ VLLM_ROCM_USE_AITER_MLA: bool = True
110
+ VLLM_ROCM_USE_AITER_MHA: bool = True
111
+ VLLM_ROCM_USE_AITER_FP4_ASM_GEMM: bool = False
112
+ VLLM_ROCM_USE_AITER_TRITON_ROPE: bool = False
113
+ VLLM_ROCM_USE_AITER_FP8BMM: bool = True
114
+ VLLM_ROCM_USE_AITER_UNIFIED_ATTENTION: bool = False
115
+ VLLM_ROCM_USE_AITER_FUSION_SHARED_EXPERTS: bool = True
116
+ VLLM_ROCM_USE_AITER_TRITON_GEMM: bool = True
117
+ VLLM_ROCM_USE_SKINNY_GEMM: bool = True
118
+ VLLM_ROCM_FP8_PADDING: bool = True
119
+ VLLM_ROCM_MOE_PADDING: bool = True
120
+ VLLM_ROCM_CUSTOM_PAGED_ATTN: bool = True
121
+ VLLM_ENABLE_V1_MULTIPROCESSING: bool = True
122
+ VLLM_LOG_BATCHSIZE_INTERVAL: float = -1
123
+ VLLM_DISABLE_COMPILE_CACHE: bool = False
124
+ Q_SCALE_CONSTANT: int = 200
125
+ K_SCALE_CONSTANT: int = 200
126
+ V_SCALE_CONSTANT: int = 100
127
+ VLLM_SERVER_DEV_MODE: bool = False
128
+ VLLM_V1_OUTPUT_PROC_CHUNK_SIZE: int = 128
129
+ VLLM_MLA_DISABLE: bool = False
130
+ VLLM_FLASH_ATTN_MAX_NUM_SPLITS_FOR_CUDA_GRAPH: int = 32
131
+ VLLM_RAY_PER_WORKER_GPUS: float = 1.0
132
+ VLLM_RAY_BUNDLE_INDICES: str = ""
133
+ VLLM_CUDART_SO_PATH: str | None = None
134
+ VLLM_DP_RANK: int = 0
135
+ VLLM_DP_RANK_LOCAL: int = -1
136
+ VLLM_DP_SIZE: int = 1
137
+ VLLM_USE_STANDALONE_COMPILE: bool = True
138
+ VLLM_DP_MASTER_IP: str = ""
139
+ VLLM_DP_MASTER_PORT: int = 0
140
+ VLLM_MOE_DP_CHUNK_SIZE: int = 256
141
+ VLLM_RANDOMIZE_DP_DUMMY_INPUTS: bool = False
142
+ VLLM_RAY_DP_PACK_STRATEGY: Literal["strict", "fill", "span"] = "strict"
143
+ VLLM_MARLIN_USE_ATOMIC_ADD: bool = False
144
+ VLLM_MXFP4_USE_MARLIN: bool | None = None
145
+ VLLM_V1_USE_OUTLINES_CACHE: bool = False
146
+ VLLM_TPU_BUCKET_PADDING_GAP: int = 0
147
+ VLLM_TPU_MOST_MODEL_LEN: int | None = None
148
+ VLLM_TPU_USING_PATHWAYS: bool = False
149
+ VLLM_USE_DEEP_GEMM: bool = True
150
+ VLLM_MOE_USE_DEEP_GEMM: bool = True
151
+ VLLM_USE_DEEP_GEMM_E8M0: bool = True
152
+ VLLM_DEEP_GEMM_WARMUP: Literal[
153
+ "skip",
154
+ "full",
155
+ "relax",
156
+ ] = "relax"
157
+ VLLM_USE_FUSED_MOE_GROUPED_TOPK: bool = True
158
+ VLLM_USE_FLASHINFER_MOE_FP16: bool = False
159
+ VLLM_USE_FLASHINFER_MOE_FP8: bool = False
160
+ VLLM_USE_FLASHINFER_MOE_FP4: bool = False
161
+ VLLM_FLASHINFER_MOE_BACKEND: Literal["throughput", "latency"] = "latency"
162
+ VLLM_FLASHINFER_WORKSPACE_BUFFER_SIZE: int = 394 * 1024 * 1024
163
+ VLLM_XGRAMMAR_CACHE_MB: int = 0
164
+ VLLM_MSGPACK_ZERO_COPY_THRESHOLD: int = 256
165
+ VLLM_ALLOW_INSECURE_SERIALIZATION: bool = False
166
+ VLLM_NIXL_SIDE_CHANNEL_HOST: str = "localhost"
167
+ VLLM_NIXL_SIDE_CHANNEL_PORT: int = 5600
168
+ VLLM_ALL2ALL_BACKEND: Literal[
169
+ "naive",
170
+ "pplx",
171
+ "deepep_high_throughput",
172
+ "deepep_low_latency",
173
+ "allgather_reducescatter",
174
+ "flashinfer_all2allv",
175
+ ] = "allgather_reducescatter"
176
+ VLLM_MAX_TOKENS_PER_EXPERT_FP4_MOE: int = 163840
177
+ VLLM_TOOL_PARSE_REGEX_TIMEOUT_SECONDS: int = 1
178
+ VLLM_SLEEP_WHEN_IDLE: bool = False
179
+ VLLM_MQ_MAX_CHUNK_BYTES_MB: int = 16
180
+ VLLM_EXECUTE_MODEL_TIMEOUT_SECONDS: int = 300
181
+ VLLM_KV_CACHE_LAYOUT: Literal["NHD", "HND"] | None = None
182
+ VLLM_COMPUTE_NANS_IN_LOGITS: bool = False
183
+ VLLM_USE_NVFP4_CT_EMULATIONS: bool = False
184
+ VLLM_ROCM_QUICK_REDUCE_QUANTIZATION: Literal[
185
+ "FP", "INT8", "INT6", "INT4", "NONE"
186
+ ] = "NONE"
187
+ VLLM_ROCM_QUICK_REDUCE_CAST_BF16_TO_FP16: bool = True
188
+ VLLM_ROCM_QUICK_REDUCE_MAX_SIZE_BYTES_MB: int | None = None
189
+ VLLM_NIXL_ABORT_REQUEST_TIMEOUT: int = 480
190
+ VLLM_USE_CUDNN_PREFILL: bool = False
191
+ VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL: bool = False
192
+ VLLM_ENABLE_CUDAGRAPH_GC: bool = False
193
+ VLLM_LOOPBACK_IP: str = ""
194
+ VLLM_ALLOW_CHUNKED_LOCAL_ATTN_WITH_HYBRID_KV_CACHE: bool = False
195
+ VLLM_ENABLE_RESPONSES_API_STORE: bool = False
196
+ VLLM_USE_TRTLLM_ATTENTION: str | None = None
197
+ VLLM_NVFP4_GEMM_BACKEND: str | None = None
198
+ VLLM_FLASHINFER_DISABLE_Q_QUANTIZATION: bool = False
199
+ VLLM_HAS_FLASHINFER_CUBIN: bool = False
200
+ VLLM_USE_FLASHINFER_MOE_MXFP4_MXFP8: bool = False
201
+ VLLM_USE_FLASHINFER_MOE_MXFP4_BF16: bool = False
202
+ VLLM_ROCM_FP8_MFMA_PAGE_ATTN: bool = False
203
+ VLLM_USE_FLASHINFER_MOE_MXFP4_MXFP8_CUTLASS: bool = False
204
+ VLLM_ALLREDUCE_USE_SYMM_MEM: bool = True
205
+ VLLM_TUNED_CONFIG_FOLDER: str | None = None
206
+ VLLM_GPT_OSS_SYSTEM_TOOL_MCP_LABELS: set[str] = set()
207
+ VLLM_GPT_OSS_HARMONY_SYSTEM_INSTRUCTIONS: bool = False
208
+ VLLM_TOOL_JSON_ERROR_AUTOMATIC_RETRY: bool = False
209
+ VLLM_CUSTOM_SCOPES_FOR_PROFILING: bool = False
210
+ VLLM_NVTX_SCOPES_FOR_PROFILING: bool = False
211
+ VLLM_KV_EVENTS_USE_INT_BLOCK_HASHES: bool = True
212
+ VLLM_OBJECT_STORAGE_SHM_BUFFER_NAME: str = "VLLM_OBJECT_STORAGE_SHM_BUFFER"
213
+ VLLM_DEEPEP_BUFFER_SIZE_MB: int = 1024
214
+ VLLM_DEEPEP_HIGH_THROUGHPUT_FORCE_INTRA_NODE: bool = False
215
+ VLLM_DEEPEP_LOW_LATENCY_USE_MNNVL: bool = False
216
+ VLLM_DBO_COMM_SMS: int = 20
217
+ VLLM_PATTERN_MATCH_DEBUG: str | None = None
218
+ VLLM_DEBUG_DUMP_PATH: str | None = None
219
+ VLLM_ENABLE_INDUCTOR_MAX_AUTOTUNE: bool = True
220
+ VLLM_ENABLE_INDUCTOR_COORDINATE_DESCENT_TUNING: bool = True
221
+ VLLM_USE_NCCL_SYMM_MEM: bool = False
222
+ VLLM_NCCL_INCLUDE_PATH: str | None = None
223
+ VLLM_USE_FBGEMM: bool = False
224
+ VLLM_GC_DEBUG: str = ""
225
+ VLLM_DISABLE_SHARED_EXPERTS_STREAM: bool = False
226
+ VLLM_SHARED_EXPERTS_STREAM_TOKEN_THRESHOLD: int = 256
227
+ VLLM_COMPILE_CACHE_SAVE_FORMAT: Literal["binary", "unpacked"] = "binary"
228
+ VLLM_FLAT_LOGPROBS: bool = False
229
+
230
+
231
+ def get_default_cache_root():
232
+ return os.getenv(
233
+ "XDG_CACHE_HOME",
234
+ os.path.join(os.path.expanduser("~"), ".cache"),
235
+ )
236
+
237
+
238
+ def get_default_config_root():
239
+ return os.getenv(
240
+ "XDG_CONFIG_HOME",
241
+ os.path.join(os.path.expanduser("~"), ".config"),
242
+ )
243
+
244
+
245
+ def maybe_convert_int(value: str | None) -> int | None:
246
+ if value is None:
247
+ return None
248
+ return int(value)
249
+
250
+
251
+ def maybe_convert_bool(value: str | None) -> bool | None:
252
+ if value is None:
253
+ return None
254
+ return bool(int(value))
255
+
256
+
257
+ def disable_compile_cache() -> bool:
258
+ return bool(int(os.getenv("VLLM_DISABLE_COMPILE_CACHE", "0")))
259
+
260
+
261
+ def use_aot_compile() -> bool:
262
+ from vllm.model_executor.layers.batch_invariant import (
263
+ vllm_is_batch_invariant,
264
+ )
265
+ from vllm.utils.torch_utils import is_torch_equal_or_newer
266
+
267
+ default_value = (
268
+ "1"
269
+ if is_torch_equal_or_newer("2.10.0.dev") and not disable_compile_cache()
270
+ else "0"
271
+ )
272
+
273
+ return (
274
+ not vllm_is_batch_invariant()
275
+ and os.environ.get("VLLM_USE_AOT_COMPILE", default_value) == "1"
276
+ )
277
+
278
+
279
+ def env_with_choices(
280
+ env_name: str,
281
+ default: str | None,
282
+ choices: list[str] | Callable[[], list[str]],
283
+ case_sensitive: bool = True,
284
+ ) -> Callable[[], str | None]:
285
+ """
286
+ Create a lambda that validates environment variable against allowed choices
287
+
288
+ Args:
289
+ env_name: Name of the environment variable
290
+ default: Default value if not set (can be None)
291
+ choices: List of valid string options or callable that returns list
292
+ case_sensitive: Whether validation should be case sensitive
293
+
294
+ Returns:
295
+ Lambda function for environment_variables dict
296
+ """
297
+
298
+ def _get_validated_env() -> str | None:
299
+ value = os.getenv(env_name)
300
+ if value is None:
301
+ return default
302
+
303
+ # Resolve choices if it's a callable (for lazy loading)
304
+ actual_choices = choices() if callable(choices) else choices
305
+
306
+ if not case_sensitive:
307
+ check_value = value.lower()
308
+ check_choices = [choice.lower() for choice in actual_choices]
309
+ else:
310
+ check_value = value
311
+ check_choices = actual_choices
312
+
313
+ if check_value not in check_choices:
314
+ raise ValueError(
315
+ f"Invalid value '{value}' for {env_name}. "
316
+ f"Valid options: {actual_choices}."
317
+ )
318
+
319
+ return value
320
+
321
+ return _get_validated_env
322
+
323
+
324
+ def env_list_with_choices(
325
+ env_name: str,
326
+ default: list[str],
327
+ choices: list[str] | Callable[[], list[str]],
328
+ case_sensitive: bool = True,
329
+ ) -> Callable[[], list[str]]:
330
+ """
331
+ Create a lambda that validates environment variable
332
+ containing comma-separated values against allowed choices
333
+
334
+ Args:
335
+ env_name: Name of the environment variable
336
+ default: Default list of values if not set
337
+ choices: List of valid string options or callable that returns list
338
+ case_sensitive: Whether validation should be case sensitive
339
+
340
+ Returns:
341
+ Lambda function for environment_variables
342
+ dict that returns list of strings
343
+ """
344
+
345
+ def _get_validated_env_list() -> list[str]:
346
+ value = os.getenv(env_name)
347
+ if value is None:
348
+ return default
349
+
350
+ # Split comma-separated values and strip whitespace
351
+ values = [v.strip() for v in value.split(",") if v.strip()]
352
+
353
+ if not values:
354
+ return default
355
+
356
+ # Resolve choices if it's a callable (for lazy loading)
357
+ actual_choices = choices() if callable(choices) else choices
358
+
359
+ # Validate each value
360
+ for val in values:
361
+ if not case_sensitive:
362
+ check_value = val.lower()
363
+ check_choices = [choice.lower() for choice in actual_choices]
364
+ else:
365
+ check_value = val
366
+ check_choices = actual_choices
367
+
368
+ if check_value not in check_choices:
369
+ raise ValueError(
370
+ f"Invalid value '{val}' in {env_name}. "
371
+ f"Valid options: {actual_choices}."
372
+ )
373
+
374
+ return values
375
+
376
+ return _get_validated_env_list
377
+
378
+
379
+ def env_set_with_choices(
380
+ env_name: str,
381
+ default: list[str],
382
+ choices: list[str] | Callable[[], list[str]],
383
+ case_sensitive: bool = True,
384
+ ) -> Callable[[], set[str]]:
385
+ """
386
+ Creates a lambda which that validates environment variable
387
+ containing comma-separated values against allowed choices which
388
+ returns choices as a set.
389
+ """
390
+
391
+ def _get_validated_env_set() -> set[str]:
392
+ return set(env_list_with_choices(env_name, default, choices, case_sensitive)())
393
+
394
+ return _get_validated_env_set
395
+
396
+
397
+ def get_vllm_port() -> int | None:
398
+ """Get the port from VLLM_PORT environment variable.
399
+
400
+ Returns:
401
+ The port number as an integer if VLLM_PORT is set, None otherwise.
402
+
403
+ Raises:
404
+ ValueError: If VLLM_PORT is a URI, suggest k8s service discovery issue.
405
+ """
406
+ if "VLLM_PORT" not in os.environ:
407
+ return None
408
+
409
+ port = os.getenv("VLLM_PORT", "0")
410
+
411
+ try:
412
+ return int(port)
413
+ except ValueError as err:
414
+ from urllib.parse import urlparse
415
+
416
+ parsed = urlparse(port)
417
+ if parsed.scheme:
418
+ raise ValueError(
419
+ f"VLLM_PORT '{port}' appears to be a URI. "
420
+ "This may be caused by a Kubernetes service discovery issue,"
421
+ "check the warning in: https://docs.vllm.ai/en/stable/serving/env_vars.html"
422
+ ) from None
423
+ raise ValueError(f"VLLM_PORT '{port}' must be a valid integer") from err
424
+
425
+
426
+ # The start-* and end* here are used by the documentation generator
427
+ # to extract the used env vars.
428
+
429
+ # --8<-- [start:env-vars-definition]
430
+
431
+ environment_variables: dict[str, Callable[[], Any]] = {
432
+ # ================== Installation Time Env Vars ==================
433
+ # Target device of vLLM, supporting [cuda (by default),
434
+ # rocm, cpu]
435
+ "VLLM_TARGET_DEVICE": lambda: os.getenv("VLLM_TARGET_DEVICE", "cuda").lower(),
436
+ # Main CUDA version of vLLM, supporting [12.6, 12.8, 12.9],
437
+ # 12.8 is the default. This follows PyTorch but can be overridden.
438
+ "VLLM_MAIN_CUDA_VERSION": lambda: os.getenv("VLLM_MAIN_CUDA_VERSION", "").lower()
439
+ or "12.8",
440
+ # Maximum number of compilation jobs to run in parallel.
441
+ # By default this is the number of CPUs
442
+ "MAX_JOBS": lambda: os.getenv("MAX_JOBS", None),
443
+ # Number of threads to use for nvcc
444
+ # By default this is 1.
445
+ # If set, `MAX_JOBS` will be reduced to avoid oversubscribing the CPU.
446
+ "NVCC_THREADS": lambda: os.getenv("NVCC_THREADS", None),
447
+ # If set, vllm will use precompiled binaries (*.so)
448
+ "VLLM_USE_PRECOMPILED": lambda: os.environ.get("VLLM_USE_PRECOMPILED", "")
449
+ .strip()
450
+ .lower()
451
+ in ("1", "true")
452
+ or bool(os.environ.get("VLLM_PRECOMPILED_WHEEL_LOCATION")),
453
+ # Used to mark that setup.py is running in a Docker build context,
454
+ # in order to force the use of precompiled binaries.
455
+ "VLLM_DOCKER_BUILD_CONTEXT": lambda: os.environ.get("VLLM_DOCKER_BUILD_CONTEXT", "")
456
+ .strip()
457
+ .lower()
458
+ in ("1", "true"),
459
+ # Whether to force using nightly wheel in python build.
460
+ # This is used for testing the nightly wheel in python build.
461
+ "VLLM_TEST_USE_PRECOMPILED_NIGHTLY_WHEEL": lambda: bool(
462
+ int(os.getenv("VLLM_TEST_USE_PRECOMPILED_NIGHTLY_WHEEL", "0"))
463
+ ),
464
+ # CMake build type
465
+ # If not set, defaults to "Debug" or "RelWithDebInfo"
466
+ # Available options: "Debug", "Release", "RelWithDebInfo"
467
+ "CMAKE_BUILD_TYPE": env_with_choices(
468
+ "CMAKE_BUILD_TYPE", None, ["Debug", "Release", "RelWithDebInfo"]
469
+ ),
470
+ # If set, vllm will print verbose logs during installation
471
+ "VERBOSE": lambda: bool(int(os.getenv("VERBOSE", "0"))),
472
+ # Root directory for vLLM configuration files
473
+ # Defaults to `~/.config/vllm` unless `XDG_CONFIG_HOME` is set
474
+ # Note that this not only affects how vllm finds its configuration files
475
+ # during runtime, but also affects how vllm installs its configuration
476
+ # files during **installation**.
477
+ "VLLM_CONFIG_ROOT": lambda: os.path.expanduser(
478
+ os.getenv(
479
+ "VLLM_CONFIG_ROOT",
480
+ os.path.join(get_default_config_root(), "vllm"),
481
+ )
482
+ ),
483
+ # ================== Runtime Env Vars ==================
484
+ # Root directory for vLLM cache files
485
+ # Defaults to `~/.cache/vllm` unless `XDG_CACHE_HOME` is set
486
+ "VLLM_CACHE_ROOT": lambda: os.path.expanduser(
487
+ os.getenv(
488
+ "VLLM_CACHE_ROOT",
489
+ os.path.join(get_default_cache_root(), "vllm"),
490
+ )
491
+ ),
492
+ # used in distributed environment to determine the ip address
493
+ # of the current node, when the node has multiple network interfaces.
494
+ # If you are using multi-node inference, you should set this differently
495
+ # on each node.
496
+ "VLLM_HOST_IP": lambda: os.getenv("VLLM_HOST_IP", ""),
497
+ # used in distributed environment to manually set the communication port
498
+ # Note: if VLLM_PORT is set, and some code asks for multiple ports, the
499
+ # VLLM_PORT will be used as the first port, and the rest will be generated
500
+ # by incrementing the VLLM_PORT value.
501
+ "VLLM_PORT": get_vllm_port,
502
+ # path used for ipc when the frontend api server is running in
503
+ # multi-processing mode to communicate with the backend engine process.
504
+ "VLLM_RPC_BASE_PATH": lambda: os.getenv(
505
+ "VLLM_RPC_BASE_PATH", tempfile.gettempdir()
506
+ ),
507
+ # If true, will load models from ModelScope instead of Hugging Face Hub.
508
+ # note that the value is true or false, not numbers
509
+ "VLLM_USE_MODELSCOPE": lambda: os.environ.get(
510
+ "VLLM_USE_MODELSCOPE", "False"
511
+ ).lower()
512
+ == "true",
513
+ # Interval in seconds to log a warning message when the ring buffer is full
514
+ "VLLM_RINGBUFFER_WARNING_INTERVAL": lambda: int(
515
+ os.environ.get("VLLM_RINGBUFFER_WARNING_INTERVAL", "60")
516
+ ),
517
+ # path to cudatoolkit home directory, under which should be bin, include,
518
+ # and lib directories.
519
+ "CUDA_HOME": lambda: os.environ.get("CUDA_HOME", None),
520
+ # Path to the NCCL library file. It is needed because nccl>=2.19 brought
521
+ # by PyTorch contains a bug: https://github.com/NVIDIA/nccl/issues/1234
522
+ "VLLM_NCCL_SO_PATH": lambda: os.environ.get("VLLM_NCCL_SO_PATH", None),
523
+ # when `VLLM_NCCL_SO_PATH` is not set, vllm will try to find the nccl
524
+ # library file in the locations specified by `LD_LIBRARY_PATH`
525
+ "LD_LIBRARY_PATH": lambda: os.environ.get("LD_LIBRARY_PATH", None),
526
+ # flag to control the chunk size (in MB) for sleeping memory allocations under ROCm
527
+ "VLLM_ROCM_SLEEP_MEM_CHUNK_SIZE": lambda: int(
528
+ os.environ.get("VLLM_ROCM_SLEEP_MEM_CHUNK_SIZE", "256")
529
+ ),
530
+ # Use separate prefill and decode kernels for V1 attention instead of
531
+ # the unified triton kernel.
532
+ "VLLM_V1_USE_PREFILL_DECODE_ATTENTION": lambda: (
533
+ os.getenv("VLLM_V1_USE_PREFILL_DECODE_ATTENTION", "False").lower()
534
+ in ("true", "1")
535
+ ),
536
+ # Force vllm to use a specific flash-attention version (2 or 3), only valid
537
+ # when using the flash-attention backend.
538
+ "VLLM_FLASH_ATTN_VERSION": lambda: maybe_convert_int(
539
+ os.environ.get("VLLM_FLASH_ATTN_VERSION", None)
540
+ ),
541
+ # Feature flag to enable/disable Inductor standalone compile.
542
+ # In torch <= 2.7 we ignore this flag; in torch >= 2.9 this is
543
+ # enabled by default.
544
+ "VLLM_USE_STANDALONE_COMPILE": lambda: os.environ.get(
545
+ "VLLM_USE_STANDALONE_COMPILE", "1"
546
+ )
547
+ == "1",
548
+ # Debug pattern matching inside custom passes.
549
+ # Should be set to the fx.Node name (e.g. 'getitem_34' or 'scaled_mm_3').
550
+ "VLLM_PATTERN_MATCH_DEBUG": lambda: os.environ.get(
551
+ "VLLM_PATTERN_MATCH_DEBUG", None
552
+ ),
553
+ # Dump fx graphs to the given directory.
554
+ # It will override CompilationConfig.debug_dump_path if set.
555
+ "VLLM_DEBUG_DUMP_PATH": lambda: os.environ.get("VLLM_DEBUG_DUMP_PATH", None),
556
+ # Feature flag to enable/disable AOT compilation. This will ensure
557
+ # compilation is done in warmup phase and the compilation will be
558
+ # reused in subsequent calls.
559
+ "VLLM_USE_AOT_COMPILE": use_aot_compile,
560
+ # Feature flag to enable/disable bytecode in
561
+ # TorchCompileWithNoGuardsWrapper.
562
+ "VLLM_USE_BYTECODE_HOOK": lambda: bool(
563
+ int(os.environ.get("VLLM_USE_BYTECODE_HOOK", "1"))
564
+ ),
565
+ # Force vllm to always load AOT compiled models from disk. Failure
566
+ # to load will result in a hard error when this is enabled.
567
+ # Will be ignored when VLLM_USE_AOT_COMPILE is disabled.
568
+ "VLLM_FORCE_AOT_LOAD": lambda: os.environ.get("VLLM_FORCE_AOT_LOAD", "0") == "1",
569
+ # local rank of the process in the distributed setting, used to determine
570
+ # the GPU device id
571
+ "LOCAL_RANK": lambda: int(os.environ.get("LOCAL_RANK", "0")),
572
+ # used to control the visible devices in the distributed setting
573
+ "CUDA_VISIBLE_DEVICES": lambda: os.environ.get("CUDA_VISIBLE_DEVICES", None),
574
+ # timeout for each iteration in the engine
575
+ "VLLM_ENGINE_ITERATION_TIMEOUT_S": lambda: int(
576
+ os.environ.get("VLLM_ENGINE_ITERATION_TIMEOUT_S", "60")
577
+ ),
578
+ # API key for vLLM API server
579
+ "VLLM_API_KEY": lambda: os.environ.get("VLLM_API_KEY", None),
580
+ # Whether to log responses from API Server for debugging
581
+ "VLLM_DEBUG_LOG_API_SERVER_RESPONSE": lambda: os.environ.get(
582
+ "VLLM_DEBUG_LOG_API_SERVER_RESPONSE", "False"
583
+ ).lower()
584
+ == "true",
585
+ # S3 access information, used for tensorizer to load model from S3
586
+ "S3_ACCESS_KEY_ID": lambda: os.environ.get("S3_ACCESS_KEY_ID", None),
587
+ "S3_SECRET_ACCESS_KEY": lambda: os.environ.get("S3_SECRET_ACCESS_KEY", None),
588
+ "S3_ENDPOINT_URL": lambda: os.environ.get("S3_ENDPOINT_URL", None),
589
+ # Usage stats collection
590
+ "VLLM_USAGE_STATS_SERVER": lambda: os.environ.get(
591
+ "VLLM_USAGE_STATS_SERVER", "https://stats.vllm.ai"
592
+ ),
593
+ "VLLM_NO_USAGE_STATS": lambda: os.environ.get("VLLM_NO_USAGE_STATS", "0") == "1",
594
+ "VLLM_DISABLE_FLASHINFER_PREFILL": lambda: os.environ.get(
595
+ "VLLM_DISABLE_FLASHINFER_PREFILL", "0"
596
+ )
597
+ == "1",
598
+ "VLLM_DO_NOT_TRACK": lambda: (
599
+ os.environ.get("VLLM_DO_NOT_TRACK", None)
600
+ or os.environ.get("DO_NOT_TRACK", None)
601
+ or "0"
602
+ )
603
+ == "1",
604
+ "VLLM_USAGE_SOURCE": lambda: os.environ.get("VLLM_USAGE_SOURCE", "production"),
605
+ # Logging configuration
606
+ # If set to 0, vllm will not configure logging
607
+ # If set to 1, vllm will configure logging using the default configuration
608
+ # or the configuration file specified by VLLM_LOGGING_CONFIG_PATH
609
+ "VLLM_CONFIGURE_LOGGING": lambda: int(os.getenv("VLLM_CONFIGURE_LOGGING", "1")),
610
+ "VLLM_LOGGING_CONFIG_PATH": lambda: os.getenv("VLLM_LOGGING_CONFIG_PATH"),
611
+ # this is used for configuring the default logging level
612
+ "VLLM_LOGGING_LEVEL": lambda: os.getenv("VLLM_LOGGING_LEVEL", "INFO").upper(),
613
+ # this is used for configuring the default logging stream
614
+ "VLLM_LOGGING_STREAM": lambda: os.getenv("VLLM_LOGGING_STREAM", "ext://sys.stdout"),
615
+ # if set, VLLM_LOGGING_PREFIX will be prepended to all log messages
616
+ "VLLM_LOGGING_PREFIX": lambda: os.getenv("VLLM_LOGGING_PREFIX", ""),
617
+ # If set, vllm will log stats at this interval in seconds
618
+ # If not set, vllm will log stats every 10 seconds.
619
+ "VLLM_LOG_STATS_INTERVAL": lambda: val
620
+ if (val := float(os.getenv("VLLM_LOG_STATS_INTERVAL", "10."))) > 0.0
621
+ else 10.0,
622
+ # Trace function calls
623
+ # If set to 1, vllm will trace function calls
624
+ # Useful for debugging
625
+ "VLLM_TRACE_FUNCTION": lambda: int(os.getenv("VLLM_TRACE_FUNCTION", "0")),
626
+ # Backend for attention computation
627
+ # Example options:
628
+ # - "TORCH_SDPA": use torch.nn.MultiheadAttention
629
+ # - "FLASH_ATTN": use FlashAttention
630
+ # - "XFORMERS": use XFormers
631
+ # - "FLASHINFER": use flashinfer
632
+ # - "FLASHMLA": use FlashMLA
633
+ # - "FLASH_ATTN_MLA": use FlashAttention for MLA
634
+ # - "FLASHINFER_MLA": use FlashInfer for MLA
635
+ # - "CUTLASS_MLA": use CUTLASS for MLA
636
+ # All possible options loaded dynamically from AttentionBackendEnum
637
+ "VLLM_ATTENTION_BACKEND": env_with_choices(
638
+ "VLLM_ATTENTION_BACKEND",
639
+ None,
640
+ lambda: list(
641
+ __import__(
642
+ "vllm.attention.backends.registry", fromlist=["AttentionBackendEnum"]
643
+ ).AttentionBackendEnum.__members__.keys()
644
+ ),
645
+ ),
646
+ # If set, vllm will use flashinfer sampler
647
+ "VLLM_USE_FLASHINFER_SAMPLER": lambda: bool(
648
+ int(os.environ["VLLM_USE_FLASHINFER_SAMPLER"])
649
+ )
650
+ if "VLLM_USE_FLASHINFER_SAMPLER" in os.environ
651
+ else None,
652
+ # Pipeline stage partition strategy
653
+ "VLLM_PP_LAYER_PARTITION": lambda: os.getenv("VLLM_PP_LAYER_PARTITION", None),
654
+ # (CPU backend only) CPU key-value cache space.
655
+ # default is None and will be set as 4 GB
656
+ "VLLM_CPU_KVCACHE_SPACE": lambda: int(os.getenv("VLLM_CPU_KVCACHE_SPACE", "0"))
657
+ if "VLLM_CPU_KVCACHE_SPACE" in os.environ
658
+ else None,
659
+ # (CPU backend only) CPU core ids bound by OpenMP threads, e.g., "0-31",
660
+ # "0,1,2", "0-31,33". CPU cores of different ranks are separated by '|'.
661
+ "VLLM_CPU_OMP_THREADS_BIND": lambda: os.getenv("VLLM_CPU_OMP_THREADS_BIND", "auto"),
662
+ # (CPU backend only) CPU cores not used by OMP threads .
663
+ # Those CPU cores will not be used by OMP threads of a rank.
664
+ "VLLM_CPU_NUM_OF_RESERVED_CPU": lambda: int(
665
+ os.getenv("VLLM_CPU_NUM_OF_RESERVED_CPU", "0")
666
+ )
667
+ if "VLLM_CPU_NUM_OF_RESERVED_CPU" in os.environ
668
+ else None,
669
+ # (CPU backend only) whether to use prepack for MoE layer. This will be
670
+ # passed to ipex.llm.modules.GatedMLPMOE. On unsupported CPUs, you might
671
+ # need to set this to "0" (False).
672
+ "VLLM_CPU_MOE_PREPACK": lambda: bool(int(os.getenv("VLLM_CPU_MOE_PREPACK", "1"))),
673
+ # (CPU backend only) whether to use SGL kernels, optimized for small batch.
674
+ "VLLM_CPU_SGL_KERNEL": lambda: bool(int(os.getenv("VLLM_CPU_SGL_KERNEL", "0"))),
675
+ # If the env var is set, Ray Compiled Graph uses the specified
676
+ # channel type to communicate between workers belonging to
677
+ # different pipeline-parallel stages.
678
+ # Available options:
679
+ # - "auto": use the default channel type
680
+ # - "nccl": use NCCL for communication
681
+ # - "shm": use shared memory and gRPC for communication
682
+ "VLLM_USE_RAY_COMPILED_DAG_CHANNEL_TYPE": env_with_choices(
683
+ "VLLM_USE_RAY_COMPILED_DAG_CHANNEL_TYPE", "auto", ["auto", "nccl", "shm"]
684
+ ),
685
+ # If the env var is set, it enables GPU communication overlap
686
+ # (experimental feature) in Ray's Compiled Graph.
687
+ "VLLM_USE_RAY_COMPILED_DAG_OVERLAP_COMM": lambda: bool(
688
+ int(os.getenv("VLLM_USE_RAY_COMPILED_DAG_OVERLAP_COMM", "0"))
689
+ ),
690
+ # If the env var is set, it uses a Ray Communicator wrapping
691
+ # vLLM's pipeline parallelism communicator to interact with Ray's
692
+ # Compiled Graph. Otherwise, it uses Ray's NCCL communicator.
693
+ "VLLM_USE_RAY_WRAPPED_PP_COMM": lambda: bool(
694
+ int(os.getenv("VLLM_USE_RAY_WRAPPED_PP_COMM", "1"))
695
+ ),
696
+ # Use dedicated multiprocess context for workers.
697
+ # Both spawn and fork work
698
+ "VLLM_WORKER_MULTIPROC_METHOD": env_with_choices(
699
+ "VLLM_WORKER_MULTIPROC_METHOD", "fork", ["spawn", "fork"]
700
+ ),
701
+ # Path to the cache for storing downloaded assets
702
+ "VLLM_ASSETS_CACHE": lambda: os.path.expanduser(
703
+ os.getenv(
704
+ "VLLM_ASSETS_CACHE",
705
+ os.path.join(get_default_cache_root(), "vllm", "assets"),
706
+ )
707
+ ),
708
+ # If the env var is set, we will clean model file in
709
+ # this path $VLLM_ASSETS_CACHE/model_streamer/$model_name
710
+ "VLLM_ASSETS_CACHE_MODEL_CLEAN": lambda: bool(
711
+ int(os.getenv("VLLM_ASSETS_CACHE_MODEL_CLEAN", "0"))
712
+ ),
713
+ # Timeout for fetching images when serving multimodal models
714
+ # Default is 5 seconds
715
+ "VLLM_IMAGE_FETCH_TIMEOUT": lambda: int(os.getenv("VLLM_IMAGE_FETCH_TIMEOUT", "5")),
716
+ # Timeout for fetching videos when serving multimodal models
717
+ # Default is 30 seconds
718
+ "VLLM_VIDEO_FETCH_TIMEOUT": lambda: int(
719
+ os.getenv("VLLM_VIDEO_FETCH_TIMEOUT", "30")
720
+ ),
721
+ # Timeout for fetching audio when serving multimodal models
722
+ # Default is 10 seconds
723
+ "VLLM_AUDIO_FETCH_TIMEOUT": lambda: int(
724
+ os.getenv("VLLM_AUDIO_FETCH_TIMEOUT", "10")
725
+ ),
726
+ # Whether to allow HTTP redirects when fetching from media URLs.
727
+ # Default to True
728
+ "VLLM_MEDIA_URL_ALLOW_REDIRECTS": lambda: bool(
729
+ int(os.getenv("VLLM_MEDIA_URL_ALLOW_REDIRECTS", "1"))
730
+ ),
731
+ # Max number of workers for the thread pool handling
732
+ # media bytes loading. Set to 1 to disable parallel processing.
733
+ # Default is 8
734
+ "VLLM_MEDIA_LOADING_THREAD_COUNT": lambda: int(
735
+ os.getenv("VLLM_MEDIA_LOADING_THREAD_COUNT", "8")
736
+ ),
737
+ # Maximum filesize in MB for a single audio file when processing
738
+ # speech-to-text requests. Files larger than this will be rejected.
739
+ # Default is 25 MB
740
+ "VLLM_MAX_AUDIO_CLIP_FILESIZE_MB": lambda: int(
741
+ os.getenv("VLLM_MAX_AUDIO_CLIP_FILESIZE_MB", "25")
742
+ ),
743
+ # Backend for Video IO
744
+ # - "opencv": Default backend that uses OpenCV stream buffered backend.
745
+ #
746
+ # Custom backend implementations can be registered
747
+ # via `@VIDEO_LOADER_REGISTRY.register("my_custom_video_loader")` and
748
+ # imported at runtime.
749
+ # If a non-existing backend is used, an AssertionError will be thrown.
750
+ "VLLM_VIDEO_LOADER_BACKEND": lambda: os.getenv(
751
+ "VLLM_VIDEO_LOADER_BACKEND", "opencv"
752
+ ),
753
+ # Media connector implementation.
754
+ # - "http": Default connector that supports fetching media via HTTP.
755
+ #
756
+ # Custom implementations can be registered
757
+ # via `@MEDIA_CONNECTOR_REGISTRY.register("my_custom_media_connector")` and
758
+ # imported at runtime.
759
+ # If a non-existing backend is used, an AssertionError will be thrown.
760
+ "VLLM_MEDIA_CONNECTOR": lambda: os.getenv("VLLM_MEDIA_CONNECTOR", "http"),
761
+ # [DEPRECATED] Cache size (in GiB per process) for multimodal input cache
762
+ # Default is 4 GiB per API process + 4 GiB per engine core process
763
+ "VLLM_MM_INPUT_CACHE_GIB": lambda: int(os.getenv("VLLM_MM_INPUT_CACHE_GIB", "4")),
764
+ # Path to the XLA persistent cache directory.
765
+ # Only used for XLA devices such as TPUs.
766
+ "VLLM_XLA_CACHE_PATH": lambda: os.path.expanduser(
767
+ os.getenv(
768
+ "VLLM_XLA_CACHE_PATH",
769
+ os.path.join(get_default_cache_root(), "vllm", "xla_cache"),
770
+ )
771
+ ),
772
+ # If set, assert on XLA recompilation after each execution step.
773
+ "VLLM_XLA_CHECK_RECOMPILATION": lambda: bool(
774
+ int(os.getenv("VLLM_XLA_CHECK_RECOMPILATION", "0"))
775
+ ),
776
+ # Enable SPMD mode for TPU backend.
777
+ "VLLM_XLA_USE_SPMD": lambda: bool(int(os.getenv("VLLM_XLA_USE_SPMD", "0"))),
778
+ "VLLM_FUSED_MOE_CHUNK_SIZE": lambda: int(
779
+ os.getenv("VLLM_FUSED_MOE_CHUNK_SIZE", "32768")
780
+ ),
781
+ # Control whether to use fused MoE activation chunking. Current chunking
782
+ # logic is incompatible with torch.compile and causes IMA. See issue
783
+ # https://github.com/vllm-project/vllm/issues/19631.
784
+ "VLLM_ENABLE_FUSED_MOE_ACTIVATION_CHUNKING": lambda: bool(
785
+ int(os.getenv("VLLM_ENABLE_FUSED_MOE_ACTIVATION_CHUNKING", "1"))
786
+ ),
787
+ # If set, the OpenAI API server will stay alive even after the underlying
788
+ # AsyncLLMEngine errors and stops serving requests
789
+ "VLLM_KEEP_ALIVE_ON_ENGINE_DEATH": lambda: bool(
790
+ int(os.getenv("VLLM_KEEP_ALIVE_ON_ENGINE_DEATH", "0"))
791
+ ),
792
+ # If the env var VLLM_ALLOW_LONG_MAX_MODEL_LEN is set, it allows
793
+ # the user to specify a max sequence length greater than
794
+ # the max length derived from the model's config.json.
795
+ # To enable this, set VLLM_ALLOW_LONG_MAX_MODEL_LEN=1.
796
+ "VLLM_ALLOW_LONG_MAX_MODEL_LEN": lambda: (
797
+ os.environ.get("VLLM_ALLOW_LONG_MAX_MODEL_LEN", "0").strip().lower()
798
+ in ("1", "true")
799
+ ),
800
+ # If set, forces FP8 Marlin to be used for FP8 quantization regardless
801
+ # of the hardware support for FP8 compute.
802
+ "VLLM_TEST_FORCE_FP8_MARLIN": lambda: (
803
+ os.environ.get("VLLM_TEST_FORCE_FP8_MARLIN", "0").strip().lower()
804
+ in ("1", "true")
805
+ ),
806
+ "VLLM_TEST_FORCE_LOAD_FORMAT": lambda: os.getenv(
807
+ "VLLM_TEST_FORCE_LOAD_FORMAT", "dummy"
808
+ ),
809
+ # Time in ms for the zmq client to wait for a response from the backend
810
+ # server for simple data operations
811
+ "VLLM_RPC_TIMEOUT": lambda: int(os.getenv("VLLM_RPC_TIMEOUT", "10000")),
812
+ # Timeout in seconds for keeping HTTP connections alive in API server
813
+ "VLLM_HTTP_TIMEOUT_KEEP_ALIVE": lambda: int(
814
+ os.environ.get("VLLM_HTTP_TIMEOUT_KEEP_ALIVE", "5")
815
+ ),
816
+ # a list of plugin names to load, separated by commas.
817
+ # if this is not set, it means all plugins will be loaded
818
+ # if this is set to an empty string, no plugins will be loaded
819
+ "VLLM_PLUGINS": lambda: None
820
+ if "VLLM_PLUGINS" not in os.environ
821
+ else os.environ["VLLM_PLUGINS"].split(","),
822
+ # a local directory to look in for unrecognized LoRA adapters.
823
+ # only works if plugins are enabled and
824
+ # VLLM_ALLOW_RUNTIME_LORA_UPDATING is enabled.
825
+ "VLLM_LORA_RESOLVER_CACHE_DIR": lambda: os.getenv(
826
+ "VLLM_LORA_RESOLVER_CACHE_DIR", None
827
+ ),
828
+ # Enables torch CUDA profiling if set.
829
+ # On NVIDIA GPUs, this will start/stop cudaProfilerApi when triggered.
830
+ "VLLM_TORCH_CUDA_PROFILE": lambda: bool(
831
+ os.getenv("VLLM_TORCH_CUDA_PROFILE", "0") != "0"
832
+ ),
833
+ # Enables torch profiler if set.
834
+ # Both AsyncLLM's CPU traces as well as workers'
835
+ # traces (CPU & GPU) will be saved under this directory.
836
+ # Note that it must be an absolute path.
837
+ "VLLM_TORCH_PROFILER_DIR": lambda: (
838
+ None
839
+ if (val := os.getenv("VLLM_TORCH_PROFILER_DIR")) is None
840
+ else (
841
+ val
842
+ if val.startswith("gs://") and val[5:] and val[5] != "/"
843
+ else os.path.abspath(os.path.expanduser(val))
844
+ )
845
+ ),
846
+ # Enable torch profiler to record shapes if set
847
+ # VLLM_TORCH_PROFILER_RECORD_SHAPES=1. If not set, torch profiler will
848
+ # not record shapes.
849
+ "VLLM_TORCH_PROFILER_RECORD_SHAPES": lambda: bool(
850
+ os.getenv("VLLM_TORCH_PROFILER_RECORD_SHAPES", "0") != "0"
851
+ ),
852
+ # Enable torch profiler to profile memory if set
853
+ # VLLM_TORCH_PROFILER_WITH_PROFILE_MEMORY=1. If not set, torch profiler
854
+ # will not profile memory.
855
+ "VLLM_TORCH_PROFILER_WITH_PROFILE_MEMORY": lambda: bool(
856
+ os.getenv("VLLM_TORCH_PROFILER_WITH_PROFILE_MEMORY", "0") != "0"
857
+ ),
858
+ # Enable torch profiler to profile stack if set
859
+ # VLLM_TORCH_PROFILER_WITH_STACK=1. If not set, torch profiler WILL
860
+ # profile stack by default.
861
+ "VLLM_TORCH_PROFILER_WITH_STACK": lambda: bool(
862
+ os.getenv("VLLM_TORCH_PROFILER_WITH_STACK", "1") != "0"
863
+ ),
864
+ # Enable torch profiler to profile flops if set
865
+ # VLLM_TORCH_PROFILER_WITH_FLOPS=1. If not set, torch profiler will
866
+ # not profile flops.
867
+ "VLLM_TORCH_PROFILER_WITH_FLOPS": lambda: bool(
868
+ os.getenv("VLLM_TORCH_PROFILER_WITH_FLOPS", "0") != "0"
869
+ ),
870
+ # If set, vLLM will use Triton implementations of AWQ.
871
+ "VLLM_USE_TRITON_AWQ": lambda: bool(int(os.getenv("VLLM_USE_TRITON_AWQ", "0"))),
872
+ # If set, allow loading or unloading lora adapters in runtime,
873
+ "VLLM_ALLOW_RUNTIME_LORA_UPDATING": lambda: (
874
+ os.environ.get("VLLM_ALLOW_RUNTIME_LORA_UPDATING", "0").strip().lower()
875
+ in ("1", "true")
876
+ ),
877
+ # We assume drivers can report p2p status correctly.
878
+ # If the program hangs when using custom allreduce,
879
+ # potantially caused by a bug in the driver (535 series),
880
+ # if might be helpful to set VLLM_SKIP_P2P_CHECK=0
881
+ # so that vLLM can verify if p2p is actually working.
882
+ # See https://github.com/vllm-project/vllm/blob/a9b15c606fea67a072416ea0ea115261a2756058/vllm/distributed/device_communicators/custom_all_reduce_utils.py#L101-L108 for details. # noqa
883
+ "VLLM_SKIP_P2P_CHECK": lambda: os.getenv("VLLM_SKIP_P2P_CHECK", "1") == "1",
884
+ # List of quantization kernels that should be disabled, used for testing
885
+ # and performance comparisons. Currently only affects MPLinearKernel
886
+ # selection
887
+ # (kernels: MacheteLinearKernel, MarlinLinearKernel, ExllamaLinearKernel)
888
+ "VLLM_DISABLED_KERNELS": lambda: []
889
+ if "VLLM_DISABLED_KERNELS" not in os.environ
890
+ else os.environ["VLLM_DISABLED_KERNELS"].split(","),
891
+ # Disable pynccl (using torch.distributed instead)
892
+ "VLLM_DISABLE_PYNCCL": lambda: (
893
+ os.getenv("VLLM_DISABLE_PYNCCL", "False").lower() in ("true", "1")
894
+ ),
895
+ # Disable aiter ops unless specifically enabled.
896
+ # Acts as a parent switch to enable the rest of the other operations.
897
+ "VLLM_ROCM_USE_AITER": lambda: (
898
+ os.getenv("VLLM_ROCM_USE_AITER", "False").lower() in ("true", "1")
899
+ ),
900
+ # Whether to use aiter paged attention.
901
+ # By default is disabled.
902
+ "VLLM_ROCM_USE_AITER_PAGED_ATTN": lambda: (
903
+ os.getenv("VLLM_ROCM_USE_AITER_PAGED_ATTN", "False").lower() in ("true", "1")
904
+ ),
905
+ # use aiter linear op if aiter ops are enabled
906
+ # The following list of related ops
907
+ # - scaled_mm (per-tensor / rowwise)
908
+ "VLLM_ROCM_USE_AITER_LINEAR": lambda: (
909
+ os.getenv("VLLM_ROCM_USE_AITER_LINEAR", "True").lower() in ("true", "1")
910
+ ),
911
+ # Whether to use aiter moe ops.
912
+ # By default is enabled.
913
+ "VLLM_ROCM_USE_AITER_MOE": lambda: (
914
+ os.getenv("VLLM_ROCM_USE_AITER_MOE", "True").lower() in ("true", "1")
915
+ ),
916
+ # use aiter rms norm op if aiter ops are enabled.
917
+ "VLLM_ROCM_USE_AITER_RMSNORM": lambda: (
918
+ os.getenv("VLLM_ROCM_USE_AITER_RMSNORM", "True").lower() in ("true", "1")
919
+ ),
920
+ # Whether to use aiter mla ops.
921
+ # By default is enabled.
922
+ "VLLM_ROCM_USE_AITER_MLA": lambda: (
923
+ os.getenv("VLLM_ROCM_USE_AITER_MLA", "True").lower() in ("true", "1")
924
+ ),
925
+ # Whether to use aiter mha ops.
926
+ # By default is enabled.
927
+ "VLLM_ROCM_USE_AITER_MHA": lambda: (
928
+ os.getenv("VLLM_ROCM_USE_AITER_MHA", "True").lower() in ("true", "1")
929
+ ),
930
+ # Whether to use aiter fp4 gemm asm.
931
+ # By default is disabled.
932
+ "VLLM_ROCM_USE_AITER_FP4_ASM_GEMM": lambda: (
933
+ os.getenv("VLLM_ROCM_USE_AITER_FP4_ASM_GEMM", "False").lower() in ("true", "1")
934
+ ),
935
+ # Whether to use aiter rope.
936
+ # By default is disabled.
937
+ "VLLM_ROCM_USE_AITER_TRITON_ROPE": lambda: (
938
+ os.getenv("VLLM_ROCM_USE_AITER_TRITON_ROPE", "False").lower() in ("true", "1")
939
+ ),
940
+ # Whether to use aiter triton fp8 bmm kernel
941
+ # By default is enabled.
942
+ "VLLM_ROCM_USE_AITER_FP8BMM": lambda: (
943
+ os.getenv("VLLM_ROCM_USE_AITER_FP8BMM", "True").lower() in ("true", "1")
944
+ ),
945
+ # Use AITER triton unified attention for V1 attention
946
+ "VLLM_ROCM_USE_AITER_UNIFIED_ATTENTION": lambda: (
947
+ os.getenv("VLLM_ROCM_USE_AITER_UNIFIED_ATTENTION", "False").lower()
948
+ in ("true", "1")
949
+ ),
950
+ # Whether to use aiter fusion shared experts ops.
951
+ # By default is enabled.
952
+ "VLLM_ROCM_USE_AITER_FUSION_SHARED_EXPERTS": lambda: (
953
+ os.getenv("VLLM_ROCM_USE_AITER_FUSION_SHARED_EXPERTS", "True").lower()
954
+ in ("true", "1")
955
+ ),
956
+ # Whether to use aiter triton kernels for gemm ops.
957
+ # By default is enabled.
958
+ "VLLM_ROCM_USE_AITER_TRITON_GEMM": lambda: (
959
+ os.getenv("VLLM_ROCM_USE_AITER_TRITON_GEMM", "True").lower() in ("true", "1")
960
+ ),
961
+ # use rocm skinny gemms
962
+ "VLLM_ROCM_USE_SKINNY_GEMM": lambda: (
963
+ os.getenv("VLLM_ROCM_USE_SKINNY_GEMM", "True").lower() in ("true", "1")
964
+ ),
965
+ # Pad the fp8 weights to 256 bytes for ROCm
966
+ "VLLM_ROCM_FP8_PADDING": lambda: bool(int(os.getenv("VLLM_ROCM_FP8_PADDING", "1"))),
967
+ # Pad the weights for the moe kernel
968
+ "VLLM_ROCM_MOE_PADDING": lambda: bool(int(os.getenv("VLLM_ROCM_MOE_PADDING", "1"))),
969
+ # custom paged attention kernel for MI3* cards
970
+ "VLLM_ROCM_CUSTOM_PAGED_ATTN": lambda: (
971
+ os.getenv("VLLM_ROCM_CUSTOM_PAGED_ATTN", "True").lower() in ("true", "1")
972
+ ),
973
+ # Custom quick allreduce kernel for MI3* cards
974
+ # Choice of quantization level: FP, INT8, INT6, INT4 or NONE
975
+ # Recommended for large models to get allreduce
976
+ "VLLM_ROCM_QUICK_REDUCE_QUANTIZATION": env_with_choices(
977
+ "VLLM_ROCM_QUICK_REDUCE_QUANTIZATION",
978
+ "NONE",
979
+ ["FP", "INT8", "INT6", "INT4", "NONE"],
980
+ ),
981
+ # Custom quick allreduce kernel for MI3* cards
982
+ # Due to the lack of the bfloat16 asm instruction, bfloat16
983
+ # kernels are slower than fp16,
984
+ # If environment variable is set to 1, the input is converted to fp16
985
+ "VLLM_ROCM_QUICK_REDUCE_CAST_BF16_TO_FP16": lambda: (
986
+ os.getenv("VLLM_ROCM_QUICK_REDUCE_CAST_BF16_TO_FP16", "True").lower()
987
+ in ("true", "1")
988
+ ),
989
+ # Custom quick allreduce kernel for MI3* cards.
990
+ # Controls the maximum allowed number of data bytes(MB) for custom quick
991
+ # allreduce communication.
992
+ # Default: 2048 MB.
993
+ # Data exceeding this size will use either custom allreduce or RCCL
994
+ # communication.
995
+ "VLLM_ROCM_QUICK_REDUCE_MAX_SIZE_BYTES_MB": lambda: maybe_convert_int(
996
+ os.environ.get("VLLM_ROCM_QUICK_REDUCE_MAX_SIZE_BYTES_MB", None)
997
+ ),
998
+ # Divisor for dynamic query scale factor calculation for FP8 KV Cache
999
+ "Q_SCALE_CONSTANT": lambda: int(os.getenv("Q_SCALE_CONSTANT", "200")),
1000
+ # Divisor for dynamic key scale factor calculation for FP8 KV Cache
1001
+ "K_SCALE_CONSTANT": lambda: int(os.getenv("K_SCALE_CONSTANT", "200")),
1002
+ # Divisor for dynamic value scale factor calculation for FP8 KV Cache
1003
+ "V_SCALE_CONSTANT": lambda: int(os.getenv("V_SCALE_CONSTANT", "100")),
1004
+ # If set, enable multiprocessing in LLM for the V1 code path.
1005
+ "VLLM_ENABLE_V1_MULTIPROCESSING": lambda: bool(
1006
+ int(os.getenv("VLLM_ENABLE_V1_MULTIPROCESSING", "1"))
1007
+ ),
1008
+ "VLLM_LOG_BATCHSIZE_INTERVAL": lambda: float(
1009
+ os.getenv("VLLM_LOG_BATCHSIZE_INTERVAL", "-1")
1010
+ ),
1011
+ "VLLM_DISABLE_COMPILE_CACHE": disable_compile_cache,
1012
+ # If set, vllm will run in development mode, which will enable
1013
+ # some additional endpoints for developing and debugging,
1014
+ # e.g. `/reset_prefix_cache`
1015
+ "VLLM_SERVER_DEV_MODE": lambda: bool(int(os.getenv("VLLM_SERVER_DEV_MODE", "0"))),
1016
+ # Controls the maximum number of requests to handle in a
1017
+ # single asyncio task when processing per-token outputs in the
1018
+ # V1 AsyncLLM interface. It is applicable when handling a high
1019
+ # concurrency of streaming requests.
1020
+ # Setting this too high can result in a higher variance of
1021
+ # inter-message latencies. Setting it too low can negatively impact
1022
+ # TTFT and overall throughput.
1023
+ "VLLM_V1_OUTPUT_PROC_CHUNK_SIZE": lambda: int(
1024
+ os.getenv("VLLM_V1_OUTPUT_PROC_CHUNK_SIZE", "128")
1025
+ ),
1026
+ # If set, vLLM will disable the MLA attention optimizations.
1027
+ "VLLM_MLA_DISABLE": lambda: bool(int(os.getenv("VLLM_MLA_DISABLE", "0"))),
1028
+ # If set, vLLM will pick up the provided Flash Attention MLA
1029
+ # max number splits for cuda graph decode
1030
+ "VLLM_FLASH_ATTN_MAX_NUM_SPLITS_FOR_CUDA_GRAPH": lambda: int(
1031
+ os.getenv("VLLM_FLASH_ATTN_MAX_NUM_SPLITS_FOR_CUDA_GRAPH", "32")
1032
+ ),
1033
+ # Number of GPUs per worker in Ray, if it is set to be a fraction,
1034
+ # it allows ray to schedule multiple actors on a single GPU,
1035
+ # so that users can colocate other actors on the same GPUs as vLLM.
1036
+ "VLLM_RAY_PER_WORKER_GPUS": lambda: float(
1037
+ os.getenv("VLLM_RAY_PER_WORKER_GPUS", "1.0")
1038
+ ),
1039
+ # Bundle indices for Ray, if it is set, it can control precisely
1040
+ # which indices are used for the Ray bundle, for every worker.
1041
+ # Format: comma-separated list of integers, e.g. "0,1,2,3"
1042
+ "VLLM_RAY_BUNDLE_INDICES": lambda: os.getenv("VLLM_RAY_BUNDLE_INDICES", ""),
1043
+ # In some system, find_loaded_library() may not work. So we allow users to
1044
+ # specify the path through environment variable VLLM_CUDART_SO_PATH.
1045
+ "VLLM_CUDART_SO_PATH": lambda: os.getenv("VLLM_CUDART_SO_PATH", None),
1046
+ # Rank of the process in the data parallel setting
1047
+ "VLLM_DP_RANK": lambda: int(os.getenv("VLLM_DP_RANK", "0")),
1048
+ # Rank of the process in the data parallel setting.
1049
+ # Defaults to VLLM_DP_RANK when not set.
1050
+ "VLLM_DP_RANK_LOCAL": lambda: int(
1051
+ os.getenv("VLLM_DP_RANK_LOCAL", sys.modules[__name__].VLLM_DP_RANK)
1052
+ ),
1053
+ # World size of the data parallel setting
1054
+ "VLLM_DP_SIZE": lambda: int(os.getenv("VLLM_DP_SIZE", "1")),
1055
+ # IP address of the master node in the data parallel setting
1056
+ "VLLM_DP_MASTER_IP": lambda: os.getenv("VLLM_DP_MASTER_IP", "127.0.0.1"),
1057
+ # Port of the master node in the data parallel setting
1058
+ "VLLM_DP_MASTER_PORT": lambda: int(os.getenv("VLLM_DP_MASTER_PORT", "0")),
1059
+ # In the context of executing MoE models with Data-Parallel, Expert-Parallel
1060
+ # and Batched All-to-All dispatch/combine kernels, VLLM_MOE_DP_CHUNK_SIZE
1061
+ # dictates the quantum of tokens that can be dispatched from a DP
1062
+ # rank. All DP ranks process the activations in VLLM_MOE_DP_CHUNK_SIZE
1063
+ # units.
1064
+ "VLLM_MOE_DP_CHUNK_SIZE": lambda: int(os.getenv("VLLM_MOE_DP_CHUNK_SIZE", "256")),
1065
+ # Randomize inputs during dummy runs when using Data Parallel
1066
+ "VLLM_RANDOMIZE_DP_DUMMY_INPUTS": lambda: os.environ.get(
1067
+ "VLLM_RANDOMIZE_DP_DUMMY_INPUTS", "0"
1068
+ )
1069
+ == "1",
1070
+ # Strategy to pack the data parallel ranks for Ray.
1071
+ # Available options:
1072
+ # - "fill":
1073
+ # for DP master node, allocate exactly data-parallel-size-local DP ranks,
1074
+ # for non-master nodes, allocate as many DP ranks as can fit;
1075
+ # - "strict":
1076
+ # allocate exactly data-parallel-size-local DP ranks to each picked node;
1077
+ # - "span":
1078
+ # Should be used only when a single DP rank requires multiple nodes.
1079
+ # allocate one DP rank over as many nodes as required for set world_size;
1080
+ # This environment variable is ignored if data-parallel-backend is not Ray.
1081
+ "VLLM_RAY_DP_PACK_STRATEGY": lambda: os.getenv(
1082
+ "VLLM_RAY_DP_PACK_STRATEGY", "strict"
1083
+ ),
1084
+ # Whether to use S3 path for model loading in CI via RunAI Streamer
1085
+ "VLLM_CI_USE_S3": lambda: os.environ.get("VLLM_CI_USE_S3", "0") == "1",
1086
+ # Use model_redirect to redirect the model name to a local folder.
1087
+ # `model_redirect` can be a json file mapping the model between
1088
+ # repo_id and local folder:
1089
+ # {"meta-llama/Llama-3.2-1B": "/tmp/Llama-3.2-1B"}
1090
+ # or a space separated values table file:
1091
+ # meta-llama/Llama-3.2-1B /tmp/Llama-3.2-1B
1092
+ "VLLM_MODEL_REDIRECT_PATH": lambda: os.environ.get(
1093
+ "VLLM_MODEL_REDIRECT_PATH", None
1094
+ ),
1095
+ # Whether to use atomicAdd reduce in gptq/awq marlin kernel.
1096
+ "VLLM_MARLIN_USE_ATOMIC_ADD": lambda: os.environ.get(
1097
+ "VLLM_MARLIN_USE_ATOMIC_ADD", "0"
1098
+ )
1099
+ == "1",
1100
+ # Whether to use marlin kernel in mxfp4 quantization method
1101
+ "VLLM_MXFP4_USE_MARLIN": lambda: maybe_convert_bool(
1102
+ os.environ.get("VLLM_MXFP4_USE_MARLIN", None)
1103
+ ),
1104
+ # Whether to turn on the outlines cache for V1
1105
+ # This cache is unbounded and on disk, so it's not safe to use in
1106
+ # an environment with potentially malicious users.
1107
+ "VLLM_V1_USE_OUTLINES_CACHE": lambda: os.environ.get(
1108
+ "VLLM_V1_USE_OUTLINES_CACHE", "0"
1109
+ )
1110
+ == "1",
1111
+ # Gap between padding buckets for the forward pass. So we have
1112
+ # 8, we will run forward pass with [16, 24, 32, ...].
1113
+ "VLLM_TPU_BUCKET_PADDING_GAP": lambda: int(
1114
+ os.environ["VLLM_TPU_BUCKET_PADDING_GAP"]
1115
+ )
1116
+ if "VLLM_TPU_BUCKET_PADDING_GAP" in os.environ
1117
+ else 0,
1118
+ "VLLM_TPU_MOST_MODEL_LEN": lambda: maybe_convert_int(
1119
+ os.environ.get("VLLM_TPU_MOST_MODEL_LEN", None)
1120
+ ),
1121
+ # Whether using Pathways
1122
+ "VLLM_TPU_USING_PATHWAYS": lambda: bool(
1123
+ "proxy" in os.getenv("JAX_PLATFORMS", "").lower()
1124
+ ),
1125
+ # Allow use of DeepGemm kernels for fused moe ops.
1126
+ "VLLM_USE_DEEP_GEMM": lambda: bool(int(os.getenv("VLLM_USE_DEEP_GEMM", "1"))),
1127
+ # Allow use of DeepGemm specifically for MoE fused ops (overrides only MoE).
1128
+ "VLLM_MOE_USE_DEEP_GEMM": lambda: bool(
1129
+ int(os.getenv("VLLM_MOE_USE_DEEP_GEMM", "1"))
1130
+ ),
1131
+ # Whether to use E8M0 scaling when DeepGEMM is used on Blackwell GPUs.
1132
+ "VLLM_USE_DEEP_GEMM_E8M0": lambda: bool(
1133
+ int(os.getenv("VLLM_USE_DEEP_GEMM_E8M0", "1"))
1134
+ ),
1135
+ # DeepGemm JITs the kernels on-demand. The warmup attempts to make DeepGemm
1136
+ # JIT all the required kernels before model execution so there is no
1137
+ # JIT'ing in the hot-path. However, this warmup increases the engine
1138
+ # startup time by a couple of minutes.
1139
+ # Available options:
1140
+ # - "skip" : Skip warmup.
1141
+ # - "full" : Warmup deepgemm by running all possible gemm shapes the
1142
+ # engine could encounter.
1143
+ # - "relax" : Select gemm shapes to run based on some heuristics. The
1144
+ # heuristic aims to have the same effect as running all possible gemm
1145
+ # shapes, but provides no guarantees.
1146
+ "VLLM_DEEP_GEMM_WARMUP": env_with_choices(
1147
+ "VLLM_DEEP_GEMM_WARMUP",
1148
+ "relax",
1149
+ [
1150
+ "skip",
1151
+ "full",
1152
+ "relax",
1153
+ ],
1154
+ ),
1155
+ # Whether to use fused grouped_topk used for MoE expert selection.
1156
+ "VLLM_USE_FUSED_MOE_GROUPED_TOPK": lambda: bool(
1157
+ int(os.getenv("VLLM_USE_FUSED_MOE_GROUPED_TOPK", "1"))
1158
+ ),
1159
+ # Allow use of FlashInfer MoE kernels for fused moe ops.
1160
+ "VLLM_USE_FLASHINFER_MOE_FP16": lambda: bool(
1161
+ int(os.getenv("VLLM_USE_FLASHINFER_MOE_FP16", "0"))
1162
+ ),
1163
+ # Allow use of FlashInfer MoE kernels for fused moe ops.
1164
+ "VLLM_USE_FLASHINFER_MOE_FP8": lambda: bool(
1165
+ int(os.getenv("VLLM_USE_FLASHINFER_MOE_FP8", "0"))
1166
+ ),
1167
+ # Allow use of FlashInfer CUTLASS kernels for fused moe ops.
1168
+ "VLLM_USE_FLASHINFER_MOE_FP4": lambda: bool(
1169
+ int(os.getenv("VLLM_USE_FLASHINFER_MOE_FP4", "0"))
1170
+ ),
1171
+ # If set to 1, use the FlashInfer
1172
+ # MXFP8 (activation) x MXFP4 (weight) MoE backend.
1173
+ "VLLM_USE_FLASHINFER_MOE_MXFP4_MXFP8": lambda: bool(
1174
+ int(os.getenv("VLLM_USE_FLASHINFER_MOE_MXFP4_MXFP8", "0"))
1175
+ ),
1176
+ # If set to 1, use the FlashInfer CUTLASS backend for
1177
+ # MXFP8 (activation) x MXFP4 (weight) MoE.
1178
+ # This is separate from the TRTLLMGEN path controlled by
1179
+ # VLLM_USE_FLASHINFER_MOE_MXFP4_MXFP8.
1180
+ "VLLM_USE_FLASHINFER_MOE_MXFP4_MXFP8_CUTLASS": lambda: bool(
1181
+ int(os.getenv("VLLM_USE_FLASHINFER_MOE_MXFP4_MXFP8_CUTLASS", "0"))
1182
+ ),
1183
+ # If set to 1, use the FlashInfer
1184
+ # BF16 (activation) x MXFP4 (weight) MoE backend.
1185
+ "VLLM_USE_FLASHINFER_MOE_MXFP4_BF16": lambda: bool(
1186
+ int(os.getenv("VLLM_USE_FLASHINFER_MOE_MXFP4_BF16", "0"))
1187
+ ),
1188
+ # Control the cache sized used by the xgrammar compiler. The default
1189
+ # of 512 MB should be enough for roughly 1000 JSON schemas.
1190
+ # It can be changed with this variable if needed for some reason.
1191
+ "VLLM_XGRAMMAR_CACHE_MB": lambda: int(os.getenv("VLLM_XGRAMMAR_CACHE_MB", "512")),
1192
+ # Control the threshold for msgspec to use 'zero copy' for
1193
+ # serialization/deserialization of tensors. Tensors below
1194
+ # this limit will be encoded into the msgpack buffer, and
1195
+ # tensors above will instead be sent via a separate message.
1196
+ # While the sending side still actually copies the tensor
1197
+ # in all cases, on the receiving side, tensors above this
1198
+ # limit will actually be zero-copy decoded.
1199
+ "VLLM_MSGPACK_ZERO_COPY_THRESHOLD": lambda: int(
1200
+ os.getenv("VLLM_MSGPACK_ZERO_COPY_THRESHOLD", "256")
1201
+ ),
1202
+ # If set, allow insecure serialization using pickle.
1203
+ # This is useful for environments where it is deemed safe to use the
1204
+ # insecure method and it is needed for some reason.
1205
+ "VLLM_ALLOW_INSECURE_SERIALIZATION": lambda: bool(
1206
+ int(os.getenv("VLLM_ALLOW_INSECURE_SERIALIZATION", "0"))
1207
+ ),
1208
+ # IP address used for NIXL handshake between remote agents.
1209
+ "VLLM_NIXL_SIDE_CHANNEL_HOST": lambda: os.getenv(
1210
+ "VLLM_NIXL_SIDE_CHANNEL_HOST", "localhost"
1211
+ ),
1212
+ # Port used for NIXL handshake between remote agents.
1213
+ "VLLM_NIXL_SIDE_CHANNEL_PORT": lambda: int(
1214
+ os.getenv("VLLM_NIXL_SIDE_CHANNEL_PORT", "5600")
1215
+ ),
1216
+ # all2all backend for vllm's expert parallel communication
1217
+ # Available options:
1218
+ # - "naive": naive all2all implementation using broadcasts
1219
+ # - "allgather_reducescatter": all2all implementation based on allgather and
1220
+ # reducescatter
1221
+ # - "pplx": use pplx kernels
1222
+ # - "deepep_high_throughput", use deepep high-throughput kernels
1223
+ # - "deepep_low_latency", use deepep low-latency kernels
1224
+ # - "flashinfer_all2allv", use flashinfer alltoallv kernels for mnnvl
1225
+ "VLLM_ALL2ALL_BACKEND": env_with_choices(
1226
+ "VLLM_ALL2ALL_BACKEND",
1227
+ "allgather_reducescatter",
1228
+ [
1229
+ "naive",
1230
+ "pplx",
1231
+ "deepep_high_throughput",
1232
+ "deepep_low_latency",
1233
+ "allgather_reducescatter",
1234
+ "flashinfer_all2allv",
1235
+ ],
1236
+ ),
1237
+ # Flashinfer MoE backend for vLLM's fused Mixture-of-Experts support.
1238
+ # Both require compute capability 10.0 or above.
1239
+ # Available options:
1240
+ # - "throughput": [default]
1241
+ # Uses CUTLASS kernels optimized for high-throughput batch inference.
1242
+ # - "latency":
1243
+ # Uses TensorRT-LLM kernels optimized for low-latency inference.
1244
+ "VLLM_FLASHINFER_MOE_BACKEND": env_with_choices(
1245
+ "VLLM_FLASHINFER_MOE_BACKEND", "latency", ["throughput", "latency"]
1246
+ ),
1247
+ # Control the workspace buffer size for the FlashInfer backend.
1248
+ "VLLM_FLASHINFER_WORKSPACE_BUFFER_SIZE": lambda: int(
1249
+ os.getenv("VLLM_FLASHINFER_WORKSPACE_BUFFER_SIZE", str(394 * 1024 * 1024))
1250
+ ),
1251
+ # Control the maximum number of tokens per expert supported by the
1252
+ # NVFP4 MoE CUTLASS Kernel. This value is used to create a buffer for
1253
+ # the blockscale tensor of activations NVFP4 Quantization.
1254
+ # This is used to prevent the kernel from running out of memory.
1255
+ "VLLM_MAX_TOKENS_PER_EXPERT_FP4_MOE": lambda: int(
1256
+ os.getenv("VLLM_MAX_TOKENS_PER_EXPERT_FP4_MOE", "163840")
1257
+ ),
1258
+ # Specifies the thresholds of the communicated tensor sizes under which
1259
+ # vllm should use flashinfer fused allreduce. The variable should be a
1260
+ # JSON with the following format:
1261
+ # { <world size>: <max size in mb> }
1262
+ # Unspecified world sizes will fall back to
1263
+ # { 2: 64, 4: 1, <everything else>: 0.5 }
1264
+ "VLLM_FLASHINFER_ALLREDUCE_FUSION_THRESHOLDS_MB": lambda: json.loads(
1265
+ os.getenv("VLLM_FLASHINFER_ALLREDUCE_FUSION_THRESHOLDS_MB", "{}")
1266
+ ),
1267
+ # MoE routing strategy selector.
1268
+ # See `RoutingSimulator.get_available_strategies()` # for available
1269
+ # strategies.
1270
+ # Cutstom routing strategies can be registered by
1271
+ # RoutingSimulator.register_strategy()
1272
+ # Note: custom strategies may not produce correct model outputs
1273
+ "VLLM_MOE_ROUTING_SIMULATION_STRATEGY": lambda: os.environ.get(
1274
+ "VLLM_MOE_ROUTING_SIMULATION_STRATEGY", ""
1275
+ ).lower(),
1276
+ # Regex timeout for use by the vLLM tool parsing plugins.
1277
+ "VLLM_TOOL_PARSE_REGEX_TIMEOUT_SECONDS": lambda: int(
1278
+ os.getenv("VLLM_TOOL_PARSE_REGEX_TIMEOUT_SECONDS", "1")
1279
+ ),
1280
+ # Reduce CPU usage when vLLM is idle. Enabling this will incur small
1281
+ # latency penalty when a request eventually comes.
1282
+ "VLLM_SLEEP_WHEN_IDLE": lambda: bool(int(os.getenv("VLLM_SLEEP_WHEN_IDLE", "0"))),
1283
+ # Control the max chunk bytes (in MB) for the rpc message queue.
1284
+ # Object larger than this threshold will be broadcast to worker
1285
+ # processes via zmq.
1286
+ "VLLM_MQ_MAX_CHUNK_BYTES_MB": lambda: int(
1287
+ os.getenv("VLLM_MQ_MAX_CHUNK_BYTES_MB", "16")
1288
+ ),
1289
+ # Timeout in seconds for execute_model RPC calls in multiprocessing
1290
+ # executor (only applies when TP > 1).
1291
+ "VLLM_EXECUTE_MODEL_TIMEOUT_SECONDS": lambda: int(
1292
+ os.getenv("VLLM_EXECUTE_MODEL_TIMEOUT_SECONDS", "300")
1293
+ ),
1294
+ # KV Cache layout used throughout vllm.
1295
+ # Some common values are:
1296
+ # - NHD
1297
+ # - HND
1298
+ # Where N=num_blocks, H=num_heads and D=head_size. The default value will
1299
+ # leave the layout choice to the backend. Mind that backends may only
1300
+ # implement and support a subset of all possible layouts.
1301
+ "VLLM_KV_CACHE_LAYOUT": env_with_choices(
1302
+ "VLLM_KV_CACHE_LAYOUT", None, ["NHD", "HND"]
1303
+ ),
1304
+ # Enable checking whether the generated logits contain NaNs,
1305
+ # indicating corrupted output. Useful for debugging low level bugs
1306
+ # or bad hardware but it may add compute overhead.
1307
+ "VLLM_COMPUTE_NANS_IN_LOGITS": lambda: bool(
1308
+ int(os.getenv("VLLM_COMPUTE_NANS_IN_LOGITS", "0"))
1309
+ ),
1310
+ # Controls whether or not emulations are used for NVFP4
1311
+ # generations on machines < 100 for compressed-tensors
1312
+ # models
1313
+ "VLLM_USE_NVFP4_CT_EMULATIONS": lambda: bool(
1314
+ int(os.getenv("VLLM_USE_NVFP4_CT_EMULATIONS", "0"))
1315
+ ),
1316
+ # Time (in seconds) after which the KV cache on the producer side is
1317
+ # automatically cleared if no READ notification is received from the
1318
+ # consumer. This is only applicable when using NixlConnector in a
1319
+ # disaggregated decode-prefill setup.
1320
+ "VLLM_NIXL_ABORT_REQUEST_TIMEOUT": lambda: int(
1321
+ os.getenv("VLLM_NIXL_ABORT_REQUEST_TIMEOUT", "480")
1322
+ ),
1323
+ # Controls whether or not to use cudnn prefill
1324
+ "VLLM_USE_CUDNN_PREFILL": lambda: bool(
1325
+ int(os.getenv("VLLM_USE_CUDNN_PREFILL", "0"))
1326
+ ),
1327
+ # Controls whether to use TRT-LLM ragged DeepSeek prefill
1328
+ "VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL": lambda: bool(
1329
+ int(os.getenv("VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL", "0"))
1330
+ ),
1331
+ # If set to 1/True, use the TRTLLM attention backend in flashinfer.
1332
+ # If set to 0/False, use the default attention backend in flashinfer.
1333
+ # If not set, auto-detect the attention backend in flashinfer.
1334
+ "VLLM_USE_TRTLLM_ATTENTION": lambda: (
1335
+ None
1336
+ if "VLLM_USE_TRTLLM_ATTENTION" not in os.environ
1337
+ else os.environ["VLLM_USE_TRTLLM_ATTENTION"].lower() in ("1", "true")
1338
+ ),
1339
+ # If set to 1, when we use fp8 kv, we do not quantize Q to fp8
1340
+ "VLLM_FLASHINFER_DISABLE_Q_QUANTIZATION": lambda: bool(
1341
+ int(os.getenv("VLLM_FLASHINFER_DISABLE_Q_QUANTIZATION", "0"))
1342
+ ),
1343
+ # If set, it means we pre-downloaded cubin files and flashinfer will
1344
+ # read the cubin files directly.
1345
+ "VLLM_HAS_FLASHINFER_CUBIN": lambda: bool(
1346
+ int(os.getenv("VLLM_HAS_FLASHINFER_CUBIN", "0"))
1347
+ ),
1348
+ # Supported options:
1349
+ # - "flashinfer-cudnn": use flashinfer cudnn GEMM backend
1350
+ # - "flashinfer-trtllm": use flashinfer trtllm GEMM backend
1351
+ # - "flashinfer-cutlass": use flashinfer cutlass GEMM backend
1352
+ # - <none>: automatically pick an available backend
1353
+ "VLLM_NVFP4_GEMM_BACKEND": env_with_choices(
1354
+ "VLLM_NVFP4_GEMM_BACKEND",
1355
+ None,
1356
+ ["flashinfer-cudnn", "flashinfer-trtllm", "flashinfer-cutlass", "cutlass"],
1357
+ ),
1358
+ # Controls garbage collection during CUDA graph capture.
1359
+ # If set to 0 (default), enables GC freezing to speed up capture time.
1360
+ # If set to 1, allows GC to run during capture.
1361
+ "VLLM_ENABLE_CUDAGRAPH_GC": lambda: bool(
1362
+ int(os.getenv("VLLM_ENABLE_CUDAGRAPH_GC", "0"))
1363
+ ),
1364
+ # Used to force set up loopback IP
1365
+ "VLLM_LOOPBACK_IP": lambda: os.getenv("VLLM_LOOPBACK_IP", ""),
1366
+ # Used to set the process name prefix for vLLM processes.
1367
+ # This is useful for debugging and monitoring purposes.
1368
+ # The default value is "VLLM".
1369
+ "VLLM_PROCESS_NAME_PREFIX": lambda: os.getenv("VLLM_PROCESS_NAME_PREFIX", "VLLM"),
1370
+ # Allow chunked local attention with hybrid kv cache manager.
1371
+ # Currently using the Hybrid KV cache manager with chunked local attention
1372
+ # in the Llama4 models (the only models currently using chunked local attn)
1373
+ # causes a latency regression. For this reason, we disable it by default.
1374
+ # This flag is used to allow users to enable it if they want to (to save on
1375
+ # kv-cache memory usage and enable longer contexts)
1376
+ # TODO(lucas): Remove this flag once latency regression is resolved.
1377
+ "VLLM_ALLOW_CHUNKED_LOCAL_ATTN_WITH_HYBRID_KV_CACHE": lambda: bool(
1378
+ int(os.getenv("VLLM_ALLOW_CHUNKED_LOCAL_ATTN_WITH_HYBRID_KV_CACHE", "0"))
1379
+ ),
1380
+ # Enables support for the "store" option in the OpenAI Responses API.
1381
+ # When set to 1, vLLM's OpenAI server will retain the input and output
1382
+ # messages for those requests in memory. By default, this is disabled (0),
1383
+ # and the "store" option is ignored.
1384
+ # NOTE/WARNING:
1385
+ # 1. Messages are kept in memory only (not persisted to disk) and will be
1386
+ # lost when the vLLM server shuts down.
1387
+ # 2. Enabling this option will cause a memory leak, as stored messages are
1388
+ # never removed from memory until the server terminates.
1389
+ "VLLM_ENABLE_RESPONSES_API_STORE": lambda: bool(
1390
+ int(os.getenv("VLLM_ENABLE_RESPONSES_API_STORE", "0"))
1391
+ ),
1392
+ # If set, use the fp8 mfma in rocm paged attention.
1393
+ "VLLM_ROCM_FP8_MFMA_PAGE_ATTN": lambda: bool(
1394
+ int(os.getenv("VLLM_ROCM_FP8_MFMA_PAGE_ATTN", "0"))
1395
+ ),
1396
+ # Whether to use pytorch symmetric memory for allreduce
1397
+ "VLLM_ALLREDUCE_USE_SYMM_MEM": lambda: bool(
1398
+ int(os.getenv("VLLM_ALLREDUCE_USE_SYMM_MEM", "1"))
1399
+ ),
1400
+ # Allows vllm to find tuned config under customized folder
1401
+ "VLLM_TUNED_CONFIG_FOLDER": lambda: os.getenv("VLLM_TUNED_CONFIG_FOLDER", None),
1402
+ # Valid values are container,code_interpreter,web_search_preview
1403
+ # ex VLLM_GPT_OSS_SYSTEM_TOOL_MCP_LABELS=container,code_interpreter
1404
+ # If the server_label of your mcp tool is not in this list it will
1405
+ # be completely ignored.
1406
+ "VLLM_GPT_OSS_SYSTEM_TOOL_MCP_LABELS": env_set_with_choices(
1407
+ "VLLM_GPT_OSS_SYSTEM_TOOL_MCP_LABELS",
1408
+ default=[],
1409
+ choices=["container", "code_interpreter", "web_search_preview"],
1410
+ ),
1411
+ # Allows harmony instructions to be injected on system messages
1412
+ "VLLM_GPT_OSS_HARMONY_SYSTEM_INSTRUCTIONS": lambda: bool(
1413
+ int(os.getenv("VLLM_GPT_OSS_HARMONY_SYSTEM_INSTRUCTIONS", "0"))
1414
+ ),
1415
+ # Enable automatic retry when tool call JSON parsing fails
1416
+ # If enabled, returns an error message to the model to retry
1417
+ # If disabled (default), raises an exception and fails the request
1418
+ "VLLM_TOOL_JSON_ERROR_AUTOMATIC_RETRY": lambda: bool(
1419
+ int(os.getenv("VLLM_TOOL_JSON_ERROR_AUTOMATIC_RETRY", "0"))
1420
+ ),
1421
+ # Add optional custom scopes for profiling, disable to avoid overheads
1422
+ "VLLM_CUSTOM_SCOPES_FOR_PROFILING": lambda: bool(
1423
+ int(os.getenv("VLLM_CUSTOM_SCOPES_FOR_PROFILING", "0"))
1424
+ ),
1425
+ # Add optional nvtx scopes for profiling, disable to avoid overheads
1426
+ "VLLM_NVTX_SCOPES_FOR_PROFILING": lambda: bool(
1427
+ int(os.getenv("VLLM_NVTX_SCOPES_FOR_PROFILING", "0"))
1428
+ ),
1429
+ # Represent block hashes in KV cache events as 64-bit integers instead of
1430
+ # raw bytes. Defaults to True for backward compatibility.
1431
+ "VLLM_KV_EVENTS_USE_INT_BLOCK_HASHES": lambda: bool(
1432
+ int(os.getenv("VLLM_KV_EVENTS_USE_INT_BLOCK_HASHES", "1"))
1433
+ ),
1434
+ # Name of the shared memory buffer used for object storage.
1435
+ # Only effective when mm_config.mm_processor_cache_type == "shm".
1436
+ "VLLM_OBJECT_STORAGE_SHM_BUFFER_NAME": lambda: os.getenv(
1437
+ "VLLM_OBJECT_STORAGE_SHM_BUFFER_NAME", "VLLM_OBJECT_STORAGE_SHM_BUFFER"
1438
+ ),
1439
+ # The size in MB of the buffers (NVL and RDMA) used by DeepEP
1440
+ "VLLM_DEEPEP_BUFFER_SIZE_MB": lambda: int(
1441
+ os.getenv("VLLM_DEEPEP_BUFFER_SIZE_MB", "1024")
1442
+ ),
1443
+ # Force DeepEP to use intranode kernel for inter-node communication in
1444
+ # high throughput mode. This is useful archive higher prefill throuhgput
1445
+ # on system supports multi-node nvlink (e.g GB200).
1446
+ "VLLM_DEEPEP_HIGH_THROUGHPUT_FORCE_INTRA_NODE": lambda: bool(
1447
+ int(os.getenv("VLLM_DEEPEP_HIGH_THROUGHPUT_FORCE_INTRA_NODE", "0"))
1448
+ ),
1449
+ # Allow DeepEP to use MNNVL (multi-node nvlink) for internode_ll kernel,
1450
+ # turn this for better latency on GB200 like system
1451
+ "VLLM_DEEPEP_LOW_LATENCY_USE_MNNVL": lambda: bool(
1452
+ int(os.getenv("VLLM_DEEPEP_LOW_LATENCY_USE_MNNVL", "0"))
1453
+ ),
1454
+ # The number of SMs to allocate for communication kernels when running DBO
1455
+ # the rest of the SMs on the device will be allocated to compute
1456
+ "VLLM_DBO_COMM_SMS": lambda: int(os.getenv("VLLM_DBO_COMM_SMS", "20")),
1457
+ # Enable max_autotune & coordinate_descent_tuning in inductor_config
1458
+ # to compile static shapes passed from compile_sizes in compilation_config
1459
+ # If set to 1, enable max_autotune; By default, this is enabled (1)
1460
+ "VLLM_ENABLE_INDUCTOR_MAX_AUTOTUNE": lambda: bool(
1461
+ int(os.getenv("VLLM_ENABLE_INDUCTOR_MAX_AUTOTUNE", "1"))
1462
+ ),
1463
+ # If set to 1, enable coordinate_descent_tuning;
1464
+ # By default, this is enabled (1)
1465
+ "VLLM_ENABLE_INDUCTOR_COORDINATE_DESCENT_TUNING": lambda: bool(
1466
+ int(os.getenv("VLLM_ENABLE_INDUCTOR_COORDINATE_DESCENT_TUNING", "1"))
1467
+ ),
1468
+ # Flag to enable NCCL symmetric memory allocation and registration
1469
+ "VLLM_USE_NCCL_SYMM_MEM": lambda: bool(
1470
+ int(os.getenv("VLLM_USE_NCCL_SYMM_MEM", "0"))
1471
+ ),
1472
+ # NCCL header path
1473
+ "VLLM_NCCL_INCLUDE_PATH": lambda: os.environ.get("VLLM_NCCL_INCLUDE_PATH", None),
1474
+ # Flag to enable FBGemm kernels on model execution
1475
+ "VLLM_USE_FBGEMM": lambda: bool(int(os.getenv("VLLM_USE_FBGEMM", "0"))),
1476
+ # GC debug config
1477
+ # - VLLM_GC_DEBUG=0: disable GC debugger
1478
+ # - VLLM_GC_DEBUG=1: enable GC debugger with gc.collect elpased times
1479
+ # - VLLM_GC_DEBUG='{"top_objects":5}': enable GC debugger with
1480
+ # top 5 collected objects
1481
+ "VLLM_GC_DEBUG": lambda: os.getenv("VLLM_GC_DEBUG", ""),
1482
+ # Disables parallel execution of shared_experts via separate cuda stream
1483
+ "VLLM_DISABLE_SHARED_EXPERTS_STREAM": lambda: bool(
1484
+ int(os.getenv("VLLM_DISABLE_SHARED_EXPERTS_STREAM", "0"))
1485
+ ),
1486
+ # Limits when we run shared_experts in a separate stream.
1487
+ # We found out that for large batch sizes, the separate stream
1488
+ # execution is not beneficial (most likely because of the input clone)
1489
+ # TODO(alexm-redhat): Tune to be more dynamic based on GPU type
1490
+ "VLLM_SHARED_EXPERTS_STREAM_TOKEN_THRESHOLD": lambda: int(
1491
+ int(os.getenv("VLLM_SHARED_EXPERTS_STREAM_TOKEN_THRESHOLD", 256))
1492
+ ),
1493
+ # Format for saving torch.compile cache artifacts
1494
+ # - "binary": saves as binary file
1495
+ # Safe for multiple vllm serve processes accessing the same torch compile cache.
1496
+ # - "unpacked": saves as directory structure (for inspection/debugging)
1497
+ # NOT multiprocess safe - race conditions may occur with multiple processes.
1498
+ # Allows viewing and setting breakpoints in Inductor's code output files.
1499
+ "VLLM_COMPILE_CACHE_SAVE_FORMAT": env_with_choices(
1500
+ "VLLM_COMPILE_CACHE_SAVE_FORMAT", "binary", ["binary", "unpacked"]
1501
+ ),
1502
+ # Flag to enable FlatLogprobs whose GC overhead is significantly smaller than
1503
+ # the original list[dict[int, Logprob]] approach.
1504
+ # After enabled, PromptLogprobs and SampleLogprobs would populated as
1505
+ # FlatLogprobs.
1506
+ "VLLM_FLAT_LOGPROBS": lambda: bool(int(os.getenv("VLLM_FLAT_LOGPROBS", "0"))),
1507
+ }
1508
+
1509
+ # --8<-- [end:env-vars-definition]
1510
+
1511
+
1512
+ def __getattr__(name: str):
1513
+ """
1514
+ Gets environment variables lazily.
1515
+
1516
+ NOTE: After enable_envs_cache() invocation (which triggered after service
1517
+ initialization), all environment variables will be cached.
1518
+ """
1519
+ if name in environment_variables:
1520
+ return environment_variables[name]()
1521
+ raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
1522
+
1523
+
1524
+ def enable_envs_cache() -> None:
1525
+ """
1526
+ Enables caching of environment variables. This is useful for performance
1527
+ reasons, as it avoids the need to re-evaluate environment variables on
1528
+ every call.
1529
+
1530
+ NOTE: Currently, it's invoked after service initialization to reduce
1531
+ runtime overhead. This also means that environment variables should NOT
1532
+ be updated after the service is initialized.
1533
+ """
1534
+ # Tag __getattr__ with functools.cache
1535
+ global __getattr__
1536
+ __getattr__ = functools.cache(__getattr__)
1537
+
1538
+ # Cache all environment variables
1539
+ for key in environment_variables:
1540
+ __getattr__(key)
1541
+
1542
+
1543
+ def __dir__():
1544
+ return list(environment_variables.keys())
1545
+
1546
+
1547
+ def is_set(name: str):
1548
+ """Check if an environment variable is explicitly set."""
1549
+ if name in environment_variables:
1550
+ return name in os.environ
1551
+ raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
1552
+
1553
+
1554
+ def compute_hash() -> str:
1555
+ """
1556
+ WARNING: Whenever a new key is added to this environment
1557
+ variables, ensure that it is included in the factors list if
1558
+ it affects the computation graph. For example, different values
1559
+ of VLLM_PP_LAYER_PARTITION will generate different computation
1560
+ graphs, so it is included in the factors list. The env vars that
1561
+ affect the choice of different kernels or attention backends should
1562
+ also be included in the factors list.
1563
+ """
1564
+
1565
+ # The values of envs may affects the computation graph.
1566
+ # TODO(DefTruth): hash all environment variables?
1567
+ # for key in environment_variables:
1568
+ # factorize(key)
1569
+ environment_variables_to_hash = [
1570
+ "VLLM_PP_LAYER_PARTITION",
1571
+ "VLLM_MLA_DISABLE",
1572
+ "VLLM_FLASH_ATTN_MAX_NUM_SPLITS_FOR_CUDA_GRAPH",
1573
+ "VLLM_USE_TRITON_AWQ",
1574
+ "VLLM_DP_RANK",
1575
+ "VLLM_DP_SIZE",
1576
+ "VLLM_USE_STANDALONE_COMPILE",
1577
+ "VLLM_FUSED_MOE_CHUNK_SIZE",
1578
+ "VLLM_FLASHINFER_MOE_BACKEND",
1579
+ "VLLM_V1_USE_PREFILL_DECODE_ATTENTION",
1580
+ "VLLM_ATTENTION_BACKEND",
1581
+ "VLLM_USE_FLASHINFER_SAMPLER",
1582
+ "VLLM_DISABLED_KERNELS",
1583
+ "VLLM_USE_DEEP_GEMM",
1584
+ "VLLM_MOE_USE_DEEP_GEMM",
1585
+ "VLLM_USE_DEEP_GEMM_E8M0",
1586
+ "VLLM_USE_FUSED_MOE_GROUPED_TOPK",
1587
+ "VLLM_USE_FLASHINFER_MOE_FP16",
1588
+ "VLLM_USE_FLASHINFER_MOE_FP8",
1589
+ "VLLM_USE_FLASHINFER_MOE_FP4",
1590
+ "VLLM_USE_FLASHINFER_MOE_MXFP4_MXFP8",
1591
+ "VLLM_USE_FLASHINFER_MOE_MXFP4_MXFP8_CUTLASS",
1592
+ "VLLM_USE_FLASHINFER_MOE_MXFP4_BF16",
1593
+ "VLLM_FLASHINFER_WORKSPACE_BUFFER_SIZE",
1594
+ "VLLM_USE_CUDNN_PREFILL",
1595
+ "VLLM_USE_TRTLLM_RAGGED_DEEPSEEK_PREFILL",
1596
+ "VLLM_USE_TRTLLM_ATTENTION",
1597
+ "VLLM_FLASHINFER_DISABLE_Q_QUANTIZATION",
1598
+ "VLLM_ROCM_USE_AITER",
1599
+ "VLLM_ROCM_USE_AITER_PAGED_ATTN",
1600
+ "VLLM_ROCM_USE_AITER_LINEAR",
1601
+ "VLLM_ROCM_USE_AITER_MOE",
1602
+ "VLLM_ROCM_USE_AITER_RMSNORM",
1603
+ "VLLM_ROCM_USE_AITER_MLA",
1604
+ "VLLM_ROCM_USE_AITER_MHA",
1605
+ "VLLM_ROCM_USE_AITER_FP4_ASM_GEMM",
1606
+ "VLLM_ROCM_USE_AITER_TRITON_ROPE",
1607
+ "VLLM_ROCM_USE_AITER_FP8BMM",
1608
+ "VLLM_ROCM_USE_AITER_UNIFIED_ATTENTION",
1609
+ "VLLM_ROCM_USE_AITER_TRITON_GEMM",
1610
+ "VLLM_ROCM_USE_SKINNY_GEMM",
1611
+ "VLLM_ROCM_FP8_PADDING",
1612
+ "VLLM_ROCM_MOE_PADDING",
1613
+ "VLLM_ROCM_CUSTOM_PAGED_ATTN",
1614
+ "VLLM_ROCM_QUICK_REDUCE_QUANTIZATION",
1615
+ "VLLM_ROCM_QUICK_REDUCE_CAST_BF16_TO_FP16",
1616
+ "VLLM_ROCM_QUICK_REDUCE_MAX_SIZE_BYTES_MB",
1617
+ "VLLM_ROCM_FP8_MFMA_PAGE_ATTN",
1618
+ "VLLM_ENABLE_INDUCTOR_MAX_AUTOTUNE",
1619
+ "VLLM_ENABLE_INDUCTOR_COORDINATE_DESCENT_TUNING",
1620
+ "VLLM_NVFP4_GEMM_BACKEND",
1621
+ "VLLM_USE_FBGEMM",
1622
+ "VLLM_DEEPEP_HIGH_THROUGHPUT_FORCE_INTRA_NODE",
1623
+ "VLLM_DEEPEP_LOW_LATENCY_USE_MNNVL",
1624
+ ]
1625
+ for key in environment_variables_to_hash:
1626
+ # if this goes out of sync with environment_variables,
1627
+ # it's not a user error, it's a bug
1628
+ assert key in environment_variables, (
1629
+ "Please update environment_variables_to_hash in envs.py"
1630
+ )
1631
+
1632
+ factors = [environment_variables[key]() for key in environment_variables_to_hash]
1633
+
1634
+ ray_noset_env_vars = [
1635
+ # Refer to
1636
+ # https://github.com/ray-project/ray/blob/c584b1ea97b00793d1def71eaf81537d70efba42/python/ray/_private/accelerators/nvidia_gpu.py#L11
1637
+ # https://github.com/ray-project/ray/blob/c584b1ea97b00793d1def71eaf81537d70efba42/python/ray/_private/accelerators/amd_gpu.py#L11
1638
+ # https://github.com/ray-project/ray/blob/b97d21dab233c2bd8ed7db749a82a1e594222b5c/python/ray/_private/accelerators/amd_gpu.py#L10
1639
+ # https://github.com/ray-project/ray/blob/c584b1ea97b00793d1def71eaf81537d70efba42/python/ray/_private/accelerators/npu.py#L12
1640
+ # https://github.com/ray-project/ray/blob/c584b1ea97b00793d1def71eaf81537d70efba42/python/ray/_private/accelerators/hpu.py#L12
1641
+ # https://github.com/ray-project/ray/blob/c584b1ea97b00793d1def71eaf81537d70efba42/python/ray/_private/accelerators/neuron.py#L14
1642
+ # https://github.com/ray-project/ray/blob/c584b1ea97b00793d1def71eaf81537d70efba42/python/ray/_private/accelerators/tpu.py#L38
1643
+ # https://github.com/ray-project/ray/blob/c584b1ea97b00793d1def71eaf81537d70efba42/python/ray/_private/accelerators/intel_gpu.py#L10
1644
+ # https://github.com/ray-project/ray/blob/c584b1ea97b00793d1def71eaf81537d70efba42/python/ray/_private/accelerators/rbln.py#L10
1645
+ "RAY_EXPERIMENTAL_NOSET_CUDA_VISIBLE_DEVICES",
1646
+ "RAY_EXPERIMENTAL_NOSET_ROCR_VISIBLE_DEVICES",
1647
+ "RAY_EXPERIMENTAL_NOSET_HIP_VISIBLE_DEVICES",
1648
+ "RAY_EXPERIMENTAL_NOSET_ASCEND_RT_VISIBLE_DEVICES",
1649
+ "RAY_EXPERIMENTAL_NOSET_HABANA_VISIBLE_MODULES",
1650
+ "RAY_EXPERIMENTAL_NOSET_NEURON_RT_VISIBLE_CORES",
1651
+ "RAY_EXPERIMENTAL_NOSET_TPU_VISIBLE_CHIPS",
1652
+ "RAY_EXPERIMENTAL_NOSET_ONEAPI_DEVICE_SELECTOR",
1653
+ "RAY_EXPERIMENTAL_NOSET_RBLN_RT_VISIBLE_DEVICES",
1654
+ ]
1655
+ factors.extend([os.getenv(var) for var in ray_noset_env_vars])
1656
+
1657
+ hash_str = hashlib.md5(str(factors).encode(), usedforsecurity=False).hexdigest()
1658
+
1659
+ return hash_str