class_docstr: PlaceholderGenerator is a generic class to generate strategies for placeholder node.
class_docstr_tok: ["PlaceholderGenerator","is","a","generic","class","to","generate","strategies","for","placeholder","node","."]
docstr: Generate distributed strategy for placeholder node.
docstr_tok: ["Generate","distributed","strategy","for","placeholder","node","."]
code: def distributed_placeholder(self, mesh_list) -> ShardingStrategy:
      """
      Generate distributed strategy for placeholder node.
      """
      dim_partition_dict_mapping = {
          "output": {0: mesh_list},
      }
      communication_action_mapping = {}
      sharding_spec_mapping = self.to_sharding_spec_mapping(
          dim_partition_dict_mapping
      )
  
      name = "Distributed Placeholder"
  
      strategy = self.get_sharding_strategy(
          name=name,
          sharding_spec_mapping=sharding_spec_mapping,
          communication_action_mapping=communication_action_mapping,
      )
  
      return strategy
  
file_path: colossalai/colossalai/auto_parallel/tensor_shard/node_handler/strategy/placeholder_generator.py
imports: from typing import Dict, List
  from colossalai.auto_parallel.tensor_shard.sharding_strategy import MemoryCost, OperationData, ShardingStrategy, TrainCycleItem
  from colossalai.device.device_mesh import DeviceMesh
  from .strategy_generator import StrategyGenerator
label_desc: Use image node_id 6 for calling the PlaceholderGenerator obj's underlying member method code with example usage: obj.distributed_placeholder(mesh_list) and returns: strategy