
    ir                     *    d dl mZ ddlmZ defdZdS )    )
DataLoader   )is_torch_xla_available
dataloaderc                     t                      redd lmc m} t	          | |j                  s
J d            dd lmc m} |                    |	                                d          }|| j
        d<   | S | S )Nr   zPThe dataloader must be a `torch_xla.distributed.parallel_loader.MpDeviceLoader`.)fsdpNinput_sharding)r   %torch_xla.distributed.parallel_loaderdistributedparallel_loader
isinstanceMpDeviceLoadertorch_xla.distributed.spmdspmdShardingSpecget_global_mesh_parallel_loader_kwargs)r   plxssharding_specs       P/var/www/icac/venv/lib/python3.11/site-packages/transformers/integrations/tpu.pytpu_spmd_dataloaderr      s     :::::::::*b&788 	
 	
^	
 	
 	
 	0////////(:(:(<(<nMM?L
*+;<    N)torch.utils.datar   utilsr   r    r   r   <module>r      sP    ( ' ' ' ' ' * * * * * *J      r   