class_docstr: Shards sequence (unpooled) embedding data-parallel, with no table sharding i.e.. a
  given embedding table is replicated across all ranks.
class_docstr_tok: ["Shards","sequence","(","unpooled",")","embedding","data-parallel",",","with","no","table","sharding","i.e","..","a","given","embedding","table","is","replicated","across","all","ranks","."]
code: def create_lookup(
      self,
      device: Optional[torch.device] = None,
      fused_params: Optional[Dict[str, Any]] = None,
      feature_processor: Optional[BaseGroupedFeatureProcessor] = None,
  ) -> BaseEmbeddingLookup:
      assert feature_processor is None
      return GroupedEmbeddingsLookup(
          grouped_configs=self._grouped_embedding_configs,
          pg=self._env.process_group,
          device=device if device is not None else self._device,
      )
  
file_path: torchrec/torchrec/distributed/sharding/dp_sequence_sharding.py
imports: from typing import Any, Dict, Optional
  import torch
  from torchrec.distributed.embedding_lookup import GroupedEmbeddingsLookup
  from torchrec.distributed.embedding_sharding import BaseEmbeddingDist, BaseEmbeddingLookup, BaseSparseFeaturesDist
  from torchrec.distributed.embedding_types import BaseGroupedFeatureProcessor
  from torchrec.distributed.sharding.dp_sharding import BaseDpEmbeddingSharding, DpSparseFeaturesDist
  from torchrec.distributed.sharding.sequence_sharding import SequenceShardingContext
  from torchrec.distributed.types import Awaitable, NoWait
  from torchrec.sparse.jagged_tensor import KeyedJaggedTensor
label_desc: Use image node_id 2 for calling the DpSequenceEmbeddingSharding obj's underlying member method code with example usage: obj.create_lookup(device, fused_params, feature_processor) and returns: GroupedEmbeddingsLookup