
    &Vji.                         d dl mZ d dlZd dlmZ dZdej        dee         dee         dej        fd	Zdej        d
edej        fdZ	dS )    )SequenceN)ShardMetadataz@Please use DTensor instead and we are deprecating ShardedTensor.tensoroffsetssizesreturnc                     | }t          t          ||                    D ]8\  }\  }}||                     |          k     r|                    |||          }9|S )zC
    Narrow the tensor according to ``offsets`` and ``sizes``.
    )	enumeratezipsizenarrow)r   r   r   narrowed_tensoridxoffsetr   s          Y/root/voice-cloning/.venv/lib/python3.11/site-packages/torch/distributed/_shard/_utils.pynarrow_tensor_by_indexr   
   sl     O(We)<)<== H H^fd&++c"""" .44S&$GGO    metadatac                 8    t          | |j        |j                  S )z5
    Narrow the tensor according to the metadata
    )r   shard_offsetsshard_sizes)r   r   s     r   narrow_tensorr      s     "&(*@(BVWWWr   )
collections.abcr   torch!torch.distributed._shard.metadatar   DEPRECATE_MSGTensorintr   r    r   r   <module>r       s    $ $ $ $ $ $  ; ; ; ; ; ; SLc] C= \	   $X%, X- XEL X X X X X Xr   