o
    * iT                     @   s  d dl Z ddlmZ e  d dlmZmZ d dlmZmZ d dl	m
Z
mZ ddlmZmZmZ ddlmZ dd	lmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z# dd
l$m%Z% ddl&m'Z'm(Z( ddl)m*Z*m+Z+ ddl,m-Z- ddl.m/Z/ ddl0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9 ddl:m;Z; ddl<m=Z= ddl>m?Z?m@Z@mAZA ddlBmCZC ddlDmEZEmFZFmGZGmHZHmIZI ddlJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZRmSZSmTZTmUZUmVZVmWZWmXZXmYZYmZZZm[Z[m\Z\m]Z]m^Z^m_Z_m`Z`maZambZbmcZcmdZdmeZemfZf ddlgmhZhmiZimjZj ddlkmlZl ddlmmnZnmoZo ddlpmqZq ddlrmsZsmtZtmuZumvZv ddlwmxZx ddlymzZzm{Z{m|Z|m}Z}m~Z~ ddlmZmZmZ ddlmZmZ ddlmZ g d ZdS )!    N   )monkey_patch_value_in_dist)	Placement
ReduceType)ParallelModecreate_nccl_config)InMemoryDatasetQueueDataset)cloud_utilsiorpc)shard_op)DistAttr	DistModelShardingStage1ShardingStage2ShardingStage3Strategydtensor_from_fnenable_auto_dpin_auto_parallel_align_modereshardshard_dataloadershard_layershard_optimizershard_scalershard_tensor	to_staticunshard_dtensor)to_distributed)get_meshset_mesh)ContextParallelPrepareContextParallel)parallelize)
SplitPoint)	ColWiseParallelConvParallelPrepareLayerInputPrepareLayerOutputRowWiseParallelSequenceParallelBeginSequenceParallelDisableSequenceParallelEnableSequenceParallelEnd)
LocalLayer)	local_map)Partial	ReplicateShard)ProcessMesh)is_available	new_grouprestart_process_groupshutdown_process_groupsplit)P2POpReduceOp
all_gatherall_gather_object
all_reducealltoallalltoall_singlebarrierbatch_isend_irecv	broadcastbroadcast_object_listdestroy_process_groupgatherget_backend	get_groupirecvis_initializedisendrecvrecv_object_listreducereduce_scatterscatterscatter_object_listsendsend_object_liststreamwait)CountFilterEntryProbabilityEntryShowClickEntry)BoxPSDataset)load_merged_state_dictload_state_dict)save_state_dict)ShardedStateDictShardedWeightbuild_sharded_state_dictshard_weight)launch)DataParallelParallelEnvget_rankget_world_sizeinit_parallel_env)gloo_barriergloo_init_parallel_envgloo_release)group_sharded_parallelsave_group_sharded_model)spawn)]r   rl   ra   rP   rF   rQ   rC   rD   rc   r6   r8   r7   rf   rh   rg   ri   r	   r9   rV   rX   re   rH   r<   r=   r   rA   r>   r?   r@   rR   rN   rL   r;   rU   rd   rW   r   rJ   rE   rK   rI   rS   rM   rO   r5   rG   r4   r   r   r   r   r   r   r   r   r3   r2   r1   r\   r[   rZ   r   r   r   r   r   r   r   r   r/   r0   r   r$   r.   r+   r-   r,   r&   r*   r)   r(   r%   r!   r    r   r'   r"   r#   r   r^   r]   r`   r_   )atexitZvalue_patchr   Zpaddle.base.corer   r   Z&paddle.distributed.fleet.base.topologyr   r   Z paddle.distributed.fleet.datasetr   r	    r
   r   r   Zauto_parallelr   Zauto_parallel.apir   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   Zauto_parallel.high_level_apir   Zauto_parallel.interfacer    r!   Z+auto_parallel.intermediate.context_parallelr"   r#   Z&auto_parallel.intermediate.parallelizer$   Z,auto_parallel.intermediate.pipeline_parallelr%   Z*auto_parallel.intermediate.tensor_parallelr&   r'   r(   r)   r*   r+   r,   r-   r.   Zauto_parallel.local_layerr/   Zauto_parallel.local_mapr0   Zauto_parallel.placement_typer1   r2   r3   Zauto_parallel.process_meshr4   Z
collectiver5   r6   r7   r8   r9   Zcommunicationr:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   Z
entry_attrrV   rW   rX   ZfleetrY   Z#flex_checkpoint.dcp.load_state_dictrZ   r[   Z#flex_checkpoint.dcp.save_state_dictr\   Z"flex_checkpoint.dcp.sharded_weightr]   r^   r_   r`   Zlaunch.mainra   Zparallelrb   rc   rd   re   rf   Zparallel_with_gloorg   rh   ri   Zshardingrj   rk   rl   __all__ rp   rp   g/home/app/PaddleOCR-VL-test/.venv_paddleocr/lib/python3.10/site-packages/paddle/distributed/__init__.py<module>   s@   L,x