class_docstr: Configuration for the distributed execution.
  
  Args:
      pipeline_parallel_size: Number of pipeline parallel groups.
      tensor_parallel_size: Number of tensor parallel groups.
      worker_use_ray: Whether to use Ray for model workers. Will be set to
          True if either pipeline_parallel_size or tensor_parallel_size is
          greater than 1.
class_docstr_tok: ["Configuration","for","the","distributed","execution",".","Args",":","pipeline_parallel_size",":","Number","of","pipeline","parallel","groups",".","tensor_parallel_size",":","Number","of","tensor","parallel","groups",".","worker_use_ray",":","Whether","to","use","Ray","for","model","workers",".","Will","be","set","to","True","if","either","pipeline_parallel_size","or","tensor_parallel_size","is","greater","than","1","."]
code: def __init__(
      self,
      pipeline_parallel_size: int,
      tensor_parallel_size: int,
      worker_use_ray: bool,
  ) -> None:
      self.pipeline_parallel_size = pipeline_parallel_size
      self.tensor_parallel_size = tensor_parallel_size
      self.worker_use_ray = worker_use_ray
  
      self.world_size = pipeline_parallel_size * tensor_parallel_size
      if self.world_size > 1:
          self.worker_use_ray = True
      self._verify_args()
  
imports: from typing import Optional
  import torch
  from transformers import AutoConfig, PretrainedConfig
  from bigdl.llm.vllm.logger import init_logger
  from bigdl.llm.utils.common import invalidInputError
label_desc: Use image node_id 1 to create a new ParallelConfig object  with example: obj = ParallelConfig(pipeline_parallel_size, tensor_parallel_size, worker_use_ray)