class_docstr: Shards sequence (unpooled) row-wise, i.e.. a given embedding table is evenly
  distributed by rows and table slices are placed on all ranks for inference.
class_docstr_tok: ["Shards","sequence","(","unpooled",")","row-wise",",","i.e","..","a","given","embedding","table","is","evenly","distributed","by","rows","and","table","slices","are","placed","on","all","ranks","for","inference","."]
code: def create_output_dist(
      self,
      device: Optional[torch.device] = None,
  ) -> BaseEmbeddingDist[
      InferSequenceShardingContext,
      List[torch.Tensor],
      List[torch.Tensor],
  ]:
      return InferRwSequenceEmbeddingDist(
          device if device is not None else self._device,
          self._world_size,
      )
  
imports: from typing import Any, Dict, List, Optional
  import torch
  import torch.distributed
  from torchrec.distributed.dist_data import SeqEmbeddingsAllToOne, SequenceEmbeddingsAllToAll
  from torchrec.distributed.embedding_lookup import GroupedEmbeddingsLookup, InferGroupedEmbeddingsLookup
  from torchrec.distributed.embedding_sharding import BaseEmbeddingDist, BaseEmbeddingLookup, BaseSparseFeaturesDist
  from torchrec.distributed.embedding_types import BaseGroupedFeatureProcessor, KJTList
  from torchrec.distributed.sharding.rw_sharding import BaseRwEmbeddingSharding, InferRwSparseFeaturesDist, RwSparseFeaturesDist
  from torchrec.distributed.sharding.sequence_sharding import InferSequenceShardingContext, SequenceShardingContext
  from torchrec.distributed.types import Awaitable, CommOp, QuantizedCommCodecs
  from torchrec.sparse.jagged_tensor import KeyedJaggedTensor
label_desc: Use image node_id 3 for calling the InferRwSequenceEmbeddingSharding obj's underlying member method code with example usage: obj.create_output_dist(device) and returns: InferRwSequenceEmbeddingDist