o
    
۾i.                    @   s  U d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlmZ d dl	m
Z
mZmZ e
rdZeed< dZedB ed< e Zeed< dZeed	< d
Zeed< dZedB ed< dZedB ed< dZeed< d Zeed< dZedB ed< d
Zeed< dZeed< dZedB ed< dZeed< dZ edB ed< dZ!edB ed< dZ"edB ed< dZ#edB ed< ej$%dZ&eed< ej$%dZ'eed< dZ(eed < dZ)eed!< dZ*eed"< dZ+eed#< d$Z,eed%< d&Z-eed'< dZ.eed(< d)Z/eed*< dZ0edB ed+< d,Z1eed-< dZ2eed.< d/Z3e4ed0< d Z5eed1< dZ6edB ed2< dZ7edB ed3< d Z8edB ed4< dZ9eed5< dZ:edB ed6< dZ;eed7< ej$<e&d8Z=eed9< dZ>eed:< d;Z?eed<< d$Z@eed=< d,ZAed> ed?< dZBeed@< d$ZCeedA< dZDeedB< dCZEedD edE< ej$<e&dFZFeedG< dZGeedH< dIZHeedJ< dKZIeedL< dMZJeedN< d$ZKeedO< dPZLeedQ< dRZMeedS< dTZNeedU< dVZOeedW< dXZPeedY< dZZQeed[< d\ZReed]< d^ZSed_ ed`< dZTedB eda< dZUedB edb< dZVeedc< dZWeedd< dZXeede< dZYeedf< dZZedg dB edh< dZ[eedi< dZ\eedj< dkZ]eedl< dIZ^eedm< dZ_e`e dB edn< dZaedB edo< dZbedB edp< dZceedq< dZdeedr< dZeeeds< dZfeedt< dZgeedu< dZheedv< dZieedw< g Zje`e edx< dZkeedy< dZleedz< dZmeed{< d$Zneed|< d$Zoeed}< d$Zpeed~< d$Zqeed< d$Zreed< dZseed< dZteed< d$Zueed< d$Zveed< dZweed< dZxeed< d$Zyeed< d$Zzeed< d$Z{eed< d$Z|eed< d$Z}eed< dZ~eed< d$Zeed< dZe4ed< dZeed< dZeed< dZeed< dZeed< dZeed< dZeed< dZeed< dZe4ed< dZeed< dZedB ed< d Zeed< dZeed< dZeed< d$Zeed< dZeed< d Zeed< dZeed< d$Zeed< dZeed< dZed ed< dZeed< dZed dB ed< dZedB ed< dZeed< dZeed< d Zeed< dZedB ed< dZeed< d$Zeed< d$Zeed< d$Zeed< d$Zeed< dZed ed< d$Zeed< dZeed< dZeed< dZeed< dZeed< dZeed< dZed ed< dZeed< d Zeed< dZeed< dZeed< dZeed< dZeed< dZeed< dZeed< dZeed< dZeed< dZeed< dZeed< dZed dB ed< dZeed< dZeed< dZed ed< d$Zeed< dZedB ed< dZeed< dZeed< dZeed< dZeed< dZeed< dZeed< dZeed< dZeed< d$Zeed< dZeed< dZedB ed< dZeed< dZeed< dZeed< dZeed< dZeed< d$Zeed< dZedB ed< e̓ Zee ed< dZeed< dZeed< dZeed< dZeed< dZeed< d$Zeed< dZeed< dZeed< dZeed< dZeed< d Zeed< dZedB ed< dZedB ed< d$Zeed< d$Zeed< dZeed< dZedB ed< dZeed< dZeed	< dZeed
< dZeed< dZeed< dZed ed< dZeed< dZeed< dZeed< dZeed< dZeed< dd Zdd ZdedB dedB fddZdedB dedB fddZdefdd Zdefd!d"Z	$d d#ed$edB d%e`e eg e`e f B d&edeg edB f f
d'd(Z	$d d#ed$e`e d%e`e eg e`e f B d&edeg e`e f f
d)d*Z	$d d#ed$e`e d%e`e eg e`e f B d&edeg ee f f
d+d,ZdedB fd-d.Zd#ed/eg ef deg ef fd0d1ZeeZi d[d2d3 d]d4d3 d`ed`d^g d_dd5dad6d3 dbd7d3 dcd8d3 ddd9d3 ded:d3 dhedhdg dgdid;d3 dd<d3 dd=d3 dd>d3 dedd?d3 d	d@d3 ddAd3 i dBdCd3 ddDd3 ddEd3 ddFd3 ddGd3 ddHd3 ddId3 dqedrdJd3 dsdKd3 dtdLd3 ddMd3 ddNd3 ddOd3 ddPd3 ddQd3 ddRd3 i ddSd3 ddTd3 ddUd3 d dVd3 d!dWd3 d"dXd3 d#dYd3 d%dZd3 d+d[d3 d'd\d3 d*d]d3 d(d^d3 d-d_d3 d.d`d3 d0dad3 d1dbd3 d2dcd3 i d3ddd3 d4ded3 d5dfd3 d6dgd3 d7dhd3 d?ed?d,g d>d@did3 dAdjd3 dEedEdCdkdCgdGdld3 dHdmd3 dJdnd3 dLdod3 dNdpd3 dOdqd3 dQdrd3 dSdsd3 i dUdtd3 dWdud3 dYedYdXg dvdd5d9dwd3 d:dxd3 dBdyd3 d<dzd3 d=d{d3 dfd|d3 djd}d3 d~dd3 ddd3 dldd3 dmdd3 dndd3 dodd3 dpdd3 i dudd3 dvdd3 dwdd3 dxdd3 dydd3 dzdd3 d{dd3 d|dd3 d}dd3 d~dd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 i ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 deddg dܢdސdd3 dߐdd3 ddd3 ddd3 ddd3 ddd3 ddd3 deddd3 i ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 i ddd3 deddddgddd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddÐd3 ddĐd3 deddg dddŐd3 ddƐd3 ddǐd3 ddȐd3 ddɐd3 i ddʐd3 ddːd3 dd̐d3 dd͐d3 dƐdΐd3 dǐdϐd3 dȐdАd3 dʐdѐd3 d̐dҐd3 dΐdӐd3 deddg d¢dŐdԐd3 dАdՐd3 d֐dאd3 dؐdِd3 dѐdڐd3 dҐdېd3 i dԐdܐd3 d֐dݐd3 dedddސdgdِdd3 dڐdd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 ddd3 deddg dddd3 ddd3 ddd3 ddd3 i ddd3 ddd3 ddd3 ddd3 ddd3 dedg g ddddd3 ddd3 ddd3 ddd3 ddd3 deddd3 ddd3 ddd3 ddd3 ddd3 dd d3 dd3 dd3 dd3 dd3 dd3 dd3 dd3 dd3 edddd	gd
d3 dd3 dd3 dd3 dd3 dZeeeg ef f ed< defddadefddZd!ddZd!ddZdd ZdefddZ deeef fddZdS ("      N)Callable)TYPE_CHECKINGAnyLiteral VLLM_HOST_IP	VLLM_PORTVLLM_RPC_BASE_PATHFVLLM_USE_MODELSCOPE<    VLLM_RINGBUFFER_WARNING_INTERVALVLLM_NCCL_SO_PATHLD_LIBRARY_PATH   VLLM_ROCM_SLEEP_MEM_CHUNK_SIZE
LOCAL_RANKCUDA_VISIBLE_DEVICESVLLM_ENGINE_ITERATION_TIMEOUT_SiX  VLLM_ENGINE_READY_TIMEOUT_SVLLM_API_KEY"VLLM_DEBUG_LOG_API_SERVER_RESPONSES3_ACCESS_KEY_IDS3_SECRET_ACCESS_KEYS3_ENDPOINT_URLVLLM_MODEL_REDIRECT_PATHz~/.cache/vllmVLLM_CACHE_ROOTz~/.config/vllmVLLM_CONFIG_ROOThttps://stats.vllm.aiVLLM_USAGE_STATS_SERVERVLLM_NO_USAGE_STATSVLLM_DO_NOT_TRACKVLLM_USAGE_SOURCETVLLM_CONFIGURE_LOGGINGINFOVLLM_LOGGING_LEVELVLLM_LOGGING_PREFIXext://sys.stdoutVLLM_LOGGING_STREAMVLLM_LOGGING_CONFIG_PATHautoVLLM_LOGGING_COLORNO_COLOR      $@VLLM_LOG_STATS_INTERVALVLLM_TRACE_FUNCTIONVLLM_USE_FLASHINFER_SAMPLERVLLM_PP_LAYER_PARTITIONVLLM_CPU_KVCACHE_SPACEVLLM_CPU_OMP_THREADS_BINDVLLM_CPU_NUM_OF_RESERVED_CPUVLLM_CPU_SGL_KERNEL	xla_cacheVLLM_XLA_CACHE_PATHVLLM_XLA_CHECK_RECOMPILATION @  VLLM_FUSED_MOE_CHUNK_SIZE)VLLM_ENABLE_FUSED_MOE_ACTIVATION_CHUNKING)r)   ncclshm&VLLM_USE_RAY_COMPILED_DAG_CHANNEL_TYPE&VLLM_USE_RAY_COMPILED_DAG_OVERLAP_COMMVLLM_USE_RAY_WRAPPED_PP_COMMVLLM_XLA_USE_SPMDfork)rA   spawnVLLM_WORKER_MULTIPROC_METHODassetsVLLM_ASSETS_CACHEVLLM_ASSETS_CACHE_MODEL_CLEAN   VLLM_IMAGE_FETCH_TIMEOUT   VLLM_VIDEO_FETCH_TIMEOUT
   VLLM_AUDIO_FETCH_TIMEOUTVLLM_MEDIA_URL_ALLOW_REDIRECTS   VLLM_MEDIA_LOADING_THREAD_COUNT   VLLM_MAX_AUDIO_CLIP_FILESIZE_MBopencvVLLM_VIDEO_LOADER_BACKENDhttpVLLM_MEDIA_CONNECTORblake3VLLM_MM_HASHER_ALGORITHMcudaVLLM_TARGET_DEVICE12.9VLLM_MAIN_CUDA_VERSIONhighest)r\   highmediumVLLM_FLOAT32_MATMUL_PRECISIONMAX_JOBSNVCC_THREADSVLLM_USE_PRECOMPILED$VLLM_SKIP_PRECOMPILED_VERSION_SUFFIXVLLM_DOCKER_BUILD_CONTEXTVLLM_KEEP_ALIVE_ON_ENGINE_DEATH)DebugReleaseRelWithDebInfoCMAKE_BUILD_TYPEVERBOSEVLLM_ALLOW_LONG_MAX_MODEL_LENi'  VLLM_RPC_TIMEOUTVLLM_HTTP_TIMEOUT_KEEP_ALIVEVLLM_PLUGINSVLLM_LORA_RESOLVER_CACHE_DIRVLLM_LORA_RESOLVER_HF_REPO_LISTVLLM_USE_AOT_COMPILEVLLM_USE_BYTECODE_HOOKVLLM_FORCE_AOT_LOADVLLM_USE_MEGA_AOT_ARTIFACTVLLM_USE_TRITON_AWQ VLLM_ALLOW_RUNTIME_LORA_UPDATINGVLLM_SKIP_P2P_CHECKVLLM_DISABLED_KERNELSVLLM_DISABLE_PYNCCLVLLM_ROCM_USE_AITERVLLM_ROCM_USE_AITER_PAGED_ATTNVLLM_ROCM_USE_AITER_LINEARVLLM_ROCM_USE_AITER_MOEVLLM_ROCM_USE_AITER_RMSNORMVLLM_ROCM_USE_AITER_MLAVLLM_ROCM_USE_AITER_MHA VLLM_ROCM_USE_AITER_FP4_ASM_GEMMVLLM_ROCM_USE_AITER_TRITON_ROPEVLLM_ROCM_USE_AITER_FP8BMMVLLM_ROCM_USE_AITER_FP4BMM%VLLM_ROCM_USE_AITER_UNIFIED_ATTENTION)VLLM_ROCM_USE_AITER_FUSION_SHARED_EXPERTSVLLM_ROCM_USE_AITER_TRITON_GEMMVLLM_ROCM_USE_SKINNY_GEMMVLLM_ROCM_FP8_PADDINGVLLM_ROCM_MOE_PADDINGVLLM_ROCM_CUSTOM_PAGED_ATTN!VLLM_ROCM_SHUFFLE_KV_CACHE_LAYOUTVLLM_ENABLE_V1_MULTIPROCESSINGVLLM_LOG_BATCHSIZE_INTERVALVLLM_DISABLE_COMPILE_CACHE   Q_SCALE_CONSTANTK_SCALE_CONSTANTd   V_SCALE_CONSTANTVLLM_SERVER_DEV_MODE   VLLM_V1_OUTPUT_PROC_CHUNK_SIZEVLLM_MLA_DISABLEg      ?VLLM_RAY_PER_WORKER_GPUSVLLM_RAY_BUNDLE_INDICESVLLM_CUDART_SO_PATHVLLM_DP_RANKVLLM_DP_RANK_LOCAL   VLLM_DP_SIZEVLLM_USE_STANDALONE_COMPILEVLLM_DP_MASTER_IPVLLM_DP_MASTER_PORTVLLM_MOE_DP_CHUNK_SIZEVLLM_ENABLE_MOE_DP_CHUNKVLLM_RANDOMIZE_DP_DUMMY_INPUTSstrict)r   fillspanVLLM_RAY_DP_PACK_STRATEGYVLLM_MARLIN_USE_ATOMIC_ADD)int8fp8VLLM_MARLIN_INPUT_DTYPEVLLM_MXFP4_USE_MARLINVLLM_DEEPEPLL_NVFP4_DISPATCHVLLM_V1_USE_OUTLINES_CACHEVLLM_TPU_BUCKET_PADDING_GAPVLLM_TPU_MOST_MODEL_LENVLLM_TPU_USING_PATHWAYSVLLM_USE_DEEP_GEMMVLLM_MOE_USE_DEEP_GEMMVLLM_USE_DEEP_GEMM_E8M0%VLLM_USE_DEEP_GEMM_TMA_ALIGNED_SCALESrelax)skipfullr   VLLM_DEEP_GEMM_WARMUPVLLM_USE_FUSED_MOE_GROUPED_TOPK#VLLM_BLOCKSCALE_FP8_GEMM_FLASHINFERVLLM_USE_FLASHINFER_MOE_FP16VLLM_USE_FLASHINFER_MOE_FP8VLLM_USE_FLASHINFER_MOE_FP4VLLM_USE_FLASHINFER_MOE_INT4latency)
throughputr   masked_gemmVLLM_FLASHINFER_MOE_BACKEND  %VLLM_FLASHINFER_WORKSPACE_BUFFER_SIZEVLLM_XGRAMMAR_CACHE_MB VLLM_MSGPACK_ZERO_COPY_THRESHOLD!VLLM_ALLOW_INSECURE_SERIALIZATION	localhostVLLM_NIXL_SIDE_CHANNEL_HOSTi  VLLM_NIXL_SIDE_CHANNEL_PORTi&#  VLLM_MOONCAKE_BOOTSTRAP_PORTi  "VLLM_MAX_TOKENS_PER_EXPERT_FP4_MOE%VLLM_TOOL_PARSE_REGEX_TIMEOUT_SECONDSVLLM_SLEEP_WHEN_IDLE   VLLM_MQ_MAX_CHUNK_BYTES_MBi,  "VLLM_EXECUTE_MODEL_TIMEOUT_SECONDS)NHDHNDVLLM_KV_CACHE_LAYOUTVLLM_COMPUTE_NANS_IN_LOGITSVLLM_USE_NVFP4_CT_EMULATIONSNONE)FPINT8INT6INT4r   #VLLM_ROCM_QUICK_REDUCE_QUANTIZATION(VLLM_ROCM_QUICK_REDUCE_CAST_BF16_TO_FP16(VLLM_ROCM_QUICK_REDUCE_MAX_SIZE_BYTES_MBi  VLLM_NIXL_ABORT_REQUEST_TIMEOUTVLLM_MORIIO_CONNECTOR_READ_MODEVLLM_MORIIO_QP_PER_TRANSFERVLLM_MORIIO_POST_BATCH_SIZEVLLM_MORIIO_NUM_WORKERS#VLLM_MOONCAKE_ABORT_REQUEST_TIMEOUTVLLM_ENABLE_CUDAGRAPH_GCVLLM_LOOPBACK_IP2VLLM_ALLOW_CHUNKED_LOCAL_ATTN_WITH_HYBRID_KV_CACHEVLLM_ENABLE_RESPONSES_API_STOREVLLM_NVFP4_GEMM_BACKENDVLLM_HAS_FLASHINFER_CUBIN#VLLM_USE_FLASHINFER_MOE_MXFP4_MXFP8"VLLM_USE_FLASHINFER_MOE_MXFP4_BF16VLLM_ROCM_FP8_MFMA_PAGE_ATTN+VLLM_USE_FLASHINFER_MOE_MXFP4_MXFP8_CUTLASSVLLM_ALLREDUCE_USE_SYMM_MEMVLLM_TUNED_CONFIG_FOLDER#VLLM_GPT_OSS_SYSTEM_TOOL_MCP_LABELS$VLLM_USE_EXPERIMENTAL_PARSER_CONTEXT(VLLM_GPT_OSS_HARMONY_SYSTEM_INSTRUCTIONS$VLLM_TOOL_JSON_ERROR_AUTOMATIC_RETRY VLLM_CUSTOM_SCOPES_FOR_PROFILINGVLLM_NVTX_SCOPES_FOR_PROFILING#VLLM_KV_EVENTS_USE_INT_BLOCK_HASHESVLLM_OBJECT_STORAGE_SHM_BUFFER#VLLM_OBJECT_STORAGE_SHM_BUFFER_NAMEi   VLLM_DEEPEP_BUFFER_SIZE_MB,VLLM_DEEPEP_HIGH_THROUGHPUT_FORCE_INTRA_NODE!VLLM_DEEPEP_LOW_LATENCY_USE_MNNVL   VLLM_DBO_COMM_SMSVLLM_PATTERN_MATCH_DEBUGVLLM_DEBUG_DUMP_PATH!VLLM_ENABLE_INDUCTOR_MAX_AUTOTUNE.VLLM_ENABLE_INDUCTOR_COORDINATE_DESCENT_TUNINGVLLM_USE_NCCL_SYMM_MEMVLLM_NCCL_INCLUDE_PATHVLLM_USE_FBGEMMVLLM_GC_DEBUGVLLM_DEBUG_WORKSPACE"VLLM_DISABLE_SHARED_EXPERTS_STREAM*VLLM_SHARED_EXPERTS_STREAM_TOKEN_THRESHOLDbinary)r  unpackedVLLM_COMPILE_CACHE_SAVE_FORMATVLLM_USE_V2_MODEL_RUNNERVLLM_LOG_MODEL_INSPECTIONVLLM_DEBUG_MFU_METRICSVLLM_DISABLE_LOG_LOGOVLLM_LORA_DISABLE_PDLc                   C      t dt jt jddS )NXDG_CACHE_HOME~z.cacheosgetenvpathjoin
expanduser r  r  =/home/ubuntu/.local/lib/python3.10/site-packages/vllm/envs.pyget_default_cache_root      r!  c                   C   r  )NXDG_CONFIG_HOMEr  z.configr  r  r  r  r   get_default_config_root   r"  r$  valuereturnc                 C   s   | d u rd S t | S N)intr%  r  r  r   maybe_convert_int   s   r*  c                 C   s   | d u rd S t t| S r'  )boolr(  r)  r  r  r   maybe_convert_bool   s   r,  c                   C      t ttddS )Nr   0r+  r(  r  r  r  r  r  r   disable_compile_cache     r0  c                  C   sH   ddl m}  ddlm} |drt sdnd}|   o#tjd|dkS )Nr   )vllm_is_batch_invariant)is_torch_equal_or_newerz
2.10.0.dev1r.  rq   )*vllm.model_executor.layers.batch_invariantr2  vllm.utils.torch_utilsr3  r0  r  environget)r2  r3  default_valuer  r  r   use_aot_compile
  s   r:  env_namedefaultchoicescase_sensitivec                    s    dt dB f fdd}|S )a  
    Create a lambda that validates environment variable against allowed choices

    Args:
        env_name: Name of the environment variable
        default: Default value if not set (can be None)
        choices: List of valid string options or callable that returns list
        case_sensitive: Whether validation should be case sensitive

    Returns:
        Lambda function for environment_variables dict
    r&  Nc                     st   t } | d u rS tr n} s"|  }dd |D }n| }|}||vr8td|  d d| d| S )Nc                 S      g | ]}|  qS r  lower.0choicer  r  r   
<listcomp>9      z@env_with_choices.<locals>._get_validated_env.<locals>.<listcomp>Invalid value 'z' for . Valid options: .)r  r  callablerA  
ValueError)r%  actual_choicescheck_valuecheck_choicesr>  r=  r<  r;  r  r   _get_validated_env/  s    
z,env_with_choices.<locals>._get_validated_envstr)r;  r<  r=  r>  rP  r  rO  r   env_with_choices  s   rS  c                        dt t f fdd}|S )a  
    Create a lambda that validates environment variable
    containing comma-separated values against allowed choices

    Args:
        env_name: Name of the environment variable
        default: Default list of values if not set
        choices: List of valid string options or callable that returns list
        case_sensitive: Whether validation should be case sensitive

    Returns:
        Lambda function for environment_variables
        dict that returns list of strings
    r&  c               	      s   t } | d u rS dd | dD }|sS tr  n}|D ]&} s4| }dd |D }n|}|}||vrJtd| d d| dq$|S )	Nc                 S   s   g | ]
}|  r|  qS r  )strip)rC  vr  r  r   rE  d  s    zJenv_list_with_choices.<locals>._get_validated_env_list.<locals>.<listcomp>,c                 S   r?  r  r@  rB  r  r  r   rE  p  rF  rG  z' in rH  rI  )r  r  splitrJ  rA  rK  )r%  valuesrL  valrM  rN  rO  r  r   _get_validated_env_list^  s*   
z6env_list_with_choices.<locals>._get_validated_env_list)listrR  )r;  r<  r=  r>  r[  r  rO  r   env_list_with_choicesI  s   r]  c                    rT  )z
    Creates a lambda which that validates environment variable
    containing comma-separated values against allowed choices which
    returns choices as a set.
    r&  c                      s   t t  S r'  )setr]  r  rO  r  r   _get_validated_env_set  r1  z4env_set_with_choices.<locals>._get_validated_env_set)r^  rR  )r;  r<  r=  r>  r_  r  rO  r   env_set_with_choices  s   r`  c               
   C   s|   dt jvrdS t dd} zt| W S  ty= } zddlm} || }|jr0td|  ddtd|  d|d}~ww )	zGet the port from VLLM_PORT environment variable.

    Returns:
        The port number as an integer if VLLM_PORT is set, None otherwise.

    Raises:
        ValueError: If VLLM_PORT is a URI, suggest k8s service discovery issue.
    r   Nr.  r   )	parse_urlzVLLM_PORT 'z' appears to be a URI. This may be caused by a Kubernetes service discovery issue,check the warning in: https://docs.vllm.ai/en/stable/serving/env_vars.htmlz' must be a valid integer)r  r7  r  r(  rK  urllib3.utilra  scheme)porterrra  parsedr  r  r   get_vllm_port  s"   
	

rg  default_factoryc                    s   dt f fdd}|S )z
    Create a lambda that returns an environment variable value if set,
    or generates and sets a default value using the provided factory function.
    r&  c                     s*   t } | d ur| S   }|t j< |S r'  )r  r  r7  )r%  r9  rh  r;  r  r   _get_or_set_default  s   

z3get_env_or_set_default.<locals>._get_or_set_defaultrQ  )r;  rh  rj  r  ri  r   get_env_or_set_default  s   		rk  c                   C      t dd S )NrY   rX   r  r  rA  r  r  r  r   <lambda>      rn  c                   C   s   t dd p	dS )Nr[   r   rZ   rm  r  r  r  r   rn    s    )r>  c                   C      t dd S )Nr`   r  r  r  r  r  r   rn        c                   C   rp  )Nra   rq  r  r  r  r   rn    rr  c                   C   s*   t jdd  dv ptt jdS )Nrb   r   r4  trueVLLM_PRECOMPILED_WHEEL_LOCATION)r  r7  r8  rU  rA  r+  r  r  r  r   rn    s    c                   C      t ttjddS )Nrc   r.  r+  r(  r  r7  r8  r  r  r  r   rn        c                   C      t jdd  dv S )Nrd   r   rs  r  r7  r8  rU  rA  r  r  r  r   rn    s
    c                   C   r-  )Nrj   r.  r/  r  r  r  r   rn    rF  c                	   C       t jt dt jt dS )Nr   vllm)r  r  r  r  r  r$  r  r  r  r   rn        c                	   C   r{  )Nr   r|  r  r  r  r  r  r!  r  r  r  r   rn    r}  c                   C      t ddS )Nr   r   rq  r  r  r  r   rn    rr  c                   C   s   t dt S )Nr	   )r  r  tempfile
gettempdirr  r  r  r   rn    s    c                   C      t jdd dkS )Nr
   Falsert  r  r7  r8  rA  r  r  r  r   rn        c                   C      t tjddS )Nr   60r(  r  r7  r8  r  r  r  r   rn  $      	CUDA_HOMEc                   C      t jdd S )Nr  r  r7  r8  r  r  r  r   rn  )      c                   C   r  )Nr   r  r  r  r  r   rn  ,  r  c                   C   r  )Nr   r  r  r  r  r   rn  /  r  c                   C   r  )Nr   256r  r  r  r  r   rn  1  r  c                   C   s   t jdddkS )Nr   r4  r  r  r  r  r   rn  7  
    c                   C   r  )Nr  r  r  r  r  r   rn  =      c                   C   r  )Nr  r  r  r  r  r   rn  B  r  c                   C   rv  )Nrr   r4  rw  r  r  r  r   rn  I  rx  c                   C      t jdddkS )Nrs   r.  r4  r  r  r  r  r   rn  O      c                   C   r  )Nrt   r.  r4  r  r  r  r  r   rn  S  r  c                   C   r  )Nr   r.  r  r  r  r  r   rn  Y  r  c                   C   r  )Nr   r  r  r  r  r   rn  [  r  c                   C   r  )Nr   r  r  r  r  r  r   rn  ]  r  c                   C   r  )Nr   600r  r  r  r  r   rn  b  r  c                   C   r  )Nr   r  r  r  r  r   rn  f  r  c                   C   r  )Nr   r  rt  r  r  r  r  r   rn  h  r  c                   C   r  )Nr   r  r  r  r  r   rn  m  r  c                   C   r  )Nr   r  r  r  r  r   rn  n  r  c                   C   r  )Nr   r  r  r  r  r   rn  o  r  c                   C      t jddS )Nr   r   r  r  r  r  r   rn  q  r  c                   C   r  )Nr   r.  r4  r  r  r  r  r   rn  t  r  c                   C   s$   t jdd pt jdd pddkS )Nr    DO_NOT_TRACKr.  r4  r  r  r  r  r   rn  u  s   c                   C   r  )Nr!   
productionr  r  r  r  r   rn  {  r  c                   C   r-  )Nr"   r4  r/  r  r  r  r   rn        c                   C   s
   t dS )Nr(   rq  r  r  r  r   rn    s   
 c                   C   rl  )Nr$   r#   )r  r  upperr  r  r  r   rn    ro  c                   C   r  )Nr'   r&   rq  r  r  r  r   rn    rr  c                   C   r  )Nr%   r   rq  r  r  r  r   rn    rr  c                   C   r  )Nr*   r)   rq  r  r  r  r   rn    rr  c                   C   s   t dddkS )Nr+   r.  rq  r  r  r  r   rn    ro  c                  C   s    t tdd } dkr| S dS )Nr-   z10.g        r,   floatr  r  )rZ  r  r  r   rn    s   c                   C      t tddS )Nr.   r.  r(  r  r  r  r  r  r   rn    ro  c                   C   s    dt jv rttt jd S d S )Nr/   )r  r7  r+  r(  r  r  r  r   rn    s
   
c                   C   rp  )Nr0   rq  r  r  r  r   rn    rr  c                   C      dt jv rtt ddS d S )Nr1   r.  r  r7  r(  r  r  r  r  r   rn    s   
c                   C   r  )Nr2   r)   rq  r  r  r  r   rn    rr  c                   C   r  )Nr3   r.  r  r  r  r  r   rn    s
   

c                   C   r-  )Nr4   r.  r/  r  r  r  r   rn    rF  c                   C   r-  )Nr>   r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr?   r4  r/  r  r  r  r   rn    r  rB   c                
   C   "   t jt dt jt ddS )NrE   r|  rD   r~  r  r  r  r   rn        c                   C   r-  )NrF   r.  r/  r  r  r  r   rn    r  c                   C   r  )NrH   5r  r  r  r  r   rn    ro  c                   C   r  )NrJ   30r  r  r  r  r   rn        
c                   C   r  )NrL   10r  r  r  r  r   rn    r  c                   C   r-  )NrM   r4  r/  r  r  r  r   rn    r  c                   C   r  )NrO   8r  r  r  r  r   rn    r  c                   C   r  )NrQ   25r  r  r  r  r   rn    r  c                   C   r  )NrS   rR   rq  r  r  r  r   rn        c                   C   r  )NrU   rT   rq  r  r  r  r   rn    rr  )rV   sha256sha512c                
   C   r  )Nr6   r|  r5   r~  r  r  r  r   rn    r  c                   C   r-  )Nr7   r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr@   r.  r/  r  r  r  r   rn     rF  c                   C      t tdtdS )Nr9   r8   r(  r  r  rR  r  r  r  r   rn  !  r  c                   C   r-  )Nr:   r4  r/  r  r  r  r   rn  '  r  c                   C   r-  )Nre   r.  r/  r  r  r  r   rn  ,  r  c                   C   ry  )Nrk   r.  rs  rz  r  r  r  r   rn  3     VLLM_TEST_FORCE_FP8_MARLINc                   C   ry  )Nr  r.  rs  rz  r  r  r  r   rn  9  r  VLLM_TEST_FORCE_LOAD_FORMATc                   C   r  )Nr  dummyrq  r  r  r  r   rn  =  r  c                   C   r  )Nrl   10000r  r  r  r  r   rn  B  ro  c                   C   r  )Nrm   r  r  r  r  r  r   rn  D  r  c                   C   s   dt jvrd S t jd dS )Nrn   rW  r  r7  rX  r  r  r  r   rn  J     
c                   C   rp  )Nro   rq  r  r  r  r   rn  P  r  c                   C   rp  )Nrp   rq  r  r  r  r   rn  W  r  c                   C   r-  )Nru   r.  r/  r  r  r  r   rn  [  rF  c                   C   ry  )Nrv   r.  rs  rz  r  r  r  r   rn  ]  r  c                   C   s   t dddkS )Nrw   r4  rq  r  r  r  r   rn  g  ro  c                   C   s   dt jvrg S t jd dS )Nrx   rW  r  r  r  r  r   rn  l  r  c                   C      t dd dv S )Nry   r  rt  r4  rm  r  r  r  r   rn  p  r1  c                   C   r  )Nrz   r  r  rm  r  r  r  r   rn  u  r1  c                   C   r  )Nr{   r  r  rm  r  r  r  r   rn  z  r1  c                   C   r  )Nr|   Truer  rm  r  r  r  r   rn    r1  c                   C   r  )Nr}   r  r  rm  r  r  r  r   rn    r1  c                   C   r  )Nr~   r  r  rm  r  r  r  r   rn    r1  c                   C   r  )Nr   r  r  rm  r  r  r  r   rn    r1  c                   C   r  )Nr   r  r  rm  r  r  r  r   rn    r1  c                   C   r  )Nr   r  r  rm  r  r  r  r   rn    r1  c                   C   r  )Nr   r  r  rm  r  r  r  r   rn    r1  c                   C   r  )Nr   r  r  rm  r  r  r  r   rn    r1  c                   C   r  )Nr   r  r  rm  r  r  r  r   rn    r1  c                   C   r  )Nr   r  r  rm  r  r  r  r   rn       c                   C   r  )Nr   r  r  rm  r  r  r  r   rn    r  c                   C   r  )Nr   r  r  rm  r  r  r  r   rn    r1  c                   C   r  )Nr   r  r  rm  r  r  r  r   rn    r1  c                   C   r-  )Nr   r4  r/  r  r  r  r   rn    rF  c                   C   r-  )Nr   r4  r/  r  r  r  r   rn    rF  c                   C   r  )Nr   r  r  rm  r  r  r  r   rn    r1  c                   C   r  )Nr   r  r  rm  r  r  r  r   rn    r1  c                   C   r  )Nr   r  r  rm  r  r  r  r   rn    r  c                   C      t tjdd S )Nr   r*  r  r7  r8  r  r  r  r   rn    r  c                   C   r  )Nr   200r  r  r  r  r   rn    ro  c                   C   r  )Nr   r  r  r  r  r  r   rn    ro  c                   C   r  )Nr   100r  r  r  r  r   rn    ro  c                   C   r-  )Nr   r4  r/  r  r  r  r   rn    r  c                   C   r  )Nr   -1r  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    rF  c                   C   r  )Nr   128r  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn     rF  c                   C   r  )Nr   z1.0r  r  r  r  r   rn    r  c                   C   r  )Nr   r   rq  r  r  r  r   rn    rr  c                   C   rp  )Nr   rq  r  r  r  r   rn    rr  c                   C   r  )Nr   r.  r  r  r  r  r   rn    ro  c                   C   s   t tdtjt jS )Nr   )r(  r  r  sysmodules__name__r   r  r  r  r   rn        c                   C   r  )Nr   r4  r  r  r  r  r   rn    ro  c                   C   r  )Nr   z	127.0.0.1rq  r  r  r  r   rn    rr  c                   C   r  )Nr   r.  r  r  r  r  r   rn    ro  c                   C   r  )Nr   r  r  r  r  r  r   rn  !  ro  c                   C   r-  )Nr   r4  r/  r  r  r  r   rn  "  r  c                   C   r  )Nr   r.  r4  r  r  r  r  r   rn  &  r  c                   C   r  )Nr   r   rq  r  r  r  r   rn  5  r  VLLM_CI_USE_S3c                   C   r  )Nr  r.  r4  r  r  r  r  r   rn  9  r  c                   C   r  )Nr   r  r  r  r  r   rn  @  r  c                   C   r  )Nr   r.  r4  r  r  r  r  r   rn  D  r  c                   C   r  )Nr   )r,  r  r7  r8  r  r  r  r   rn  I  r  r   r   c                   C   r-  )Nr   r.  r/  r  r  r  r   rn  S  r  c                   C   r  )Nr   r.  r4  r  r  r  r  r   rn  Y  r  c                   C   s   dt jv rtt jd S dS )Nr   r   )r  r7  r(  r  r  r  r   rn  _  s
   
c                   C   r  )Nr   r  r  r  r  r   rn  d  r  c                   C   s   t dtdd v S )NproxyJAX_PLATFORMSr   )r+  r  r  rA  r  r  r  r   rn  h  r  c                   C   r-  )Nr   r4  r/  r  r  r  r   rn  l  rF  c                   C   r-  )Nr   r4  r/  r  r  r  r   rn  n  r  c                   C   r-  )Nr   r4  r/  r  r  r  r   rn  r  r  c                   C   r-  )Nr   r4  r/  r  r  r  r   rn  v  r  c                   C   r-  )Nr   r4  r/  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    r  c                   C   r  )Nr   512r  r  r  r  r   rn    ro  c                   C   r  )Nr   r  r  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    r  c                   C   r  )Nr   r   rq  r  r  r  r   rn    r  c                   C   r  )Nr   5600r  r  r  r  r   rn    r  c                   C   r  )Nr   8998r  r  r  r  r   rn    r  c                   C   r  )Nr   r   r  r  r  r  r   rn    r  c                   C   r  )Nr   163840r  r  r  r  r   rn    r  .VLLM_FLASHINFER_ALLREDUCE_FUSION_THRESHOLDS_MBc                   C   s   t tddS )Nr  z{})jsonloadsr  r  r  r  r  r   rn    s    
$VLLM_MOE_ROUTING_SIMULATION_STRATEGYc                   C   s   t jdd S )Nr  r   r  r  r  r  r   rn    s    c                   C   r  )Nr   r4  r  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    rF  c                   C   r  )Nr   16r  r  r  r  r   rn  
  r  c                   C   r  )Nr   300r  r  r  r  r   rn    r  r   r   c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn  %  r  c                   C   r  )Nr   480r  r  r  r  r   rn  ,  r  c                   C   r  )Nr   r  r  rm  r  r  r  r   rn  0  r1  c                   C   r  )Nr   r4  r  r  r  r  r   rn  4  r  c                   C   r  )Nr   r  r  r  r  r  r   rn  8  r  c                   C   r  )Nr   r4  r  r  r  r  r   rn  <  ro  c                   C   r  )Nr   r  r  r  r  r  r   rn  >  r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn  C  r  )zflashinfer-cudnnzflashinfer-trtllmzflashinfer-cutlasscutlassmarlinc                   C   r-  )Nr   r.  r/  r  r  r  r   rn  Z  r  c                   C   r  )Nr   r   rq  r  r  r  r   rn  ^  rr  VLLM_PROCESS_NAME_PREFIXc                   C   r  )Nr  VLLMrq  r  r  r  r   rn  b  rr  c                   C   r-  )Nr   r4  r/  r  r  r  r   rn  j  r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn  v  r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn  z  r  c                   C   r-  )Nr   r4  r/  r  r  r  r   rn  ~  r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    r  c                   C   rp  )Nr   rq  r  r  r  r   rn    rr  )	containercode_interpreterweb_search_preview)r<  r=  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr   r4  r/  r  r  r  r   rn    r  c                   C   s   dt  j S )NVLLM_OBJECT_STORAGE_SHM_BUFFER_)uuiduuid4hexr  r  r  r   rn    ro  c                   C   r  )Nr   1024r  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr   r.  r/  r  r  r  r   rn    r  c                   C   r  )Nr  20r  r  r  r  r   rn    ro  c                   C   r-  )Nr  r4  r/  r  r  r  r   rn    r  c                   C   r-  )Nr  r4  r/  r  r  r  r   rn    r  c                   C   r-  )Nr  r.  r/  r  r  r  r   rn    r  c                   C   r  )Nr  r  r  r  r  r   rn    r  c                   C   r-  )Nr	  r.  r/  r  r  r  r   rn    rF  c                   C   r  )Nr
  r   rq  r  r  r  r   rn    rr  c                   C   r-  )Nr  r.  r/  r  r  r  r   rn    rF  c                   C   r-  )Nr  r.  r/  r  r  r  r   rn    r  c                   C   s   t t tddS )Nr  r   r  r  r  r  r   rn    r  r  c                   C   r-  )Nr  r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr  r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr  r.  r/  r  r  r  r   rn    r  c                   C   r-  )Nr  r.  r/  r  r  r  r   rn     rF  c                   C   r-  )Nr  r.  r/  r  r  r  r   rn    rF  )r  r  r  r	  r
  r  r  r  r  r  r  r  r  r  environment_variablesnamec                 C   s&   | t v r	t |   S tdtd| )z
    Gets environment variables lazily.

    NOTE: After enable_envs_cache() invocation (which triggered after service
    initialization), all environment variables will be cached.
    module  has no attribute )r  AttributeErrorr  r  r  r  r   __getattr__
  s   
r  c                   C   s
   t tdS )z6Checked if __getattr__ is wrapped with functools.cachecache_clear)hasattrr  r  r  r  r   _is_envs_cache_enabled  s   
r  c                  C   s*   t  rdS ttatD ]} t|  qdS )at  
    Enables caching of environment variables. This is useful for performance
    reasons, as it avoids the need to re-evaluate environment variables on
    every call.

    NOTE: Currently, it's invoked after service initialization to reduce
    runtime overhead. This also means that environment variables should NOT
    be updated after the service is initialized.
    N)r  	functoolscacher  r  )keyr  r  r   enable_envs_cache  s   


r  c                   C   s"   t  rttds
J tjadS dS )zr
    Resets the environment variables cache. It could be used to isolate environments
    between unit tests.
    __wrapped__N)r  r  r  r  r  r  r  r   disable_envs_cache2  s   
r  c                   C   s   t t S r'  )r\  r  keysr  r  r  r   __dir__>  s   r  c                 C   s&   | t v r	| tjv S tdtd| )z3Check if an environment variable is explicitly set.r  r  )r  r  r7  r  r  r  r  r  r   is_setB  s   
r  c            	      C   s   h d} ddl m} i }t D ].\}}|| v rqz| }W n ty7 } ztd|| W Y d}~qd}~ww ||||< qg d}|D ]}|t|||< qE|S )zReturn env vars used for torch.compile cache keys.

    Start with every known vLLM env var; drop entries in `ignored_factors`;
    hash everything else. This keeps the cache key aligned across workers.>:   r`   r+   r   r   r   r  r   r   r   r   rE   r    r   r*   r$   r	   r4   r   rs   r%   r'   r   r
   r   r   VLLM_CPU_MOE_PREPACKr  rU   r   r   r1   r-   r   rL   rH   r(   r   r   rJ   r2   rS   r  r3   rm   rC   rF   r   rM   r   r   r   re   rQ   rO   r   r   r   r   r   )normalize_valuezBSkipping environment variable %s while hashing compile factors: %sN)	+RAY_EXPERIMENTAL_NOSET_CUDA_VISIBLE_DEVICES+RAY_EXPERIMENTAL_NOSET_ROCR_VISIBLE_DEVICES*RAY_EXPERIMENTAL_NOSET_HIP_VISIBLE_DEVICES0RAY_EXPERIMENTAL_NOSET_ASCEND_RT_VISIBLE_DEVICES-RAY_EXPERIMENTAL_NOSET_HABANA_VISIBLE_MODULES.RAY_EXPERIMENTAL_NOSET_NEURON_RT_VISIBLE_CORES(RAY_EXPERIMENTAL_NOSET_TPU_VISIBLE_CHIPS-RAY_EXPERIMENTAL_NOSET_ONEAPI_DEVICE_SELECTOR.RAY_EXPERIMENTAL_NOSET_RBLN_RT_VISIBLE_DEVICES)	vllm.config.utilsr  r  items	Exceptionloggerwarningr  r  )	ignored_factorsr  factorsfactorgetterrawexcray_noset_env_varsvarr  r  r   compile_factorsI  s,   =
r  )T)r&  N(  r  r  loggingr  r  r  r  collections.abcr   typingr   r   r   r   rR  __annotations__r   r(  r  r	   r
   r+  r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r   r   r   r   r    r!   r"   r$   r%   r'   r(   r*   r+   r-   r  r.   r/   r0   r1   r2   r3   r4   r  r6   r7   r9   r:   r=   r>   r?   r@   rC   rE   rF   rH   rJ   rL   rM   rO   rQ   rS   rU   rW   rY   r[   r_   r`   ra   rb   rc   rd   re   ri   rj   rk   rl   rm   rn   r\  ro   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r^  r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r  r  r	  r
  r  r  r  r  r  r  r  r  r  r!  r$  r*  r,  r0  r:  rS  r]  r`  rg  rk  	getLoggerr  r  r  dictr  r  r  r  r  r  objectr  r  r  r  r   <module>   s  
""1;



#*
.4=GLOTY^adflrw{~   	              #  $  %  '  *  +  1  6  9  ;  =  ?  B  D  G  M  O  U  X  ]  `  f  n
  s  y  ~                           #    )    4    >    D    L    S    W    X    ^    c    j    p    t    y    {                                         $      (      -      2      8      =      A      F      K      P      U      Z      _      c      i      o      s      w      y      {                                                     !        #        &        )        -        5        9        >        D        G        I        L        P        R        T        Z        [        _        n        r        y        }                                                                     "          &          (          ,          0          >          H          M          Q          U          Y          ]          b          i          n          t          |                                                                                   &            /            8            <            A            E            J            T            Z            `            g            k            o            s            w            y            ~                                                                     &              2              6              :              >              B              G              M              S              W              [              `              g
              l              r              w              |                               







	




        $        G$