o
    `۷i:                     @   sj   d dl mZmZmZ d dlmZ d dlmZmZ d dl	m
Z
 deeeef  deeeef  fddZd	S )
    )AnyDictOptional)ray_option_utils)PlacementGroupcheck_placement_group_index) PlacementGroupSchedulingStrategykwargs_dictreturnc                 C   s   | d u rd S t | dkrd S i }|  D ]!\}}|tjvr(td| dtj tj| || |||< q|dd }|dd }|dd }t|t	rS|j
}|j}|d ury|d u r_t }|dkro|dd d u rot }t|tryt|| |S )	Nr   zInvalid option keyword: 'z'. placement_group_bundle_indexplacement_groupscheduling_strategydefault#placement_group_capture_child_tasks)lenitemsr   valid_options
ValueErrorremote_args_error_stringvalidateget
isinstancer   r   r   r   emptyr   )r	   outkvbundle_indexpgr    r   M/home/ubuntu/vllm_env/lib/python3.10/site-packages/ray/util/client/options.pyvalidate_options   s:   




r    N)typingr   r   r   ray._commonr   ray.util.placement_groupr   r   ray.util.scheduling_strategiesr   strr    r   r   r   r   <module>   s
    .