`use_stateful_dataloader` under multi-process training restores the cursor, not the shuffle order — sampler permutation is never serialized

在 Accelerate 多进程(DDP/Gloo,num_processes > 1)训练中启用 use_stateful_dataloader=True 且 DataLoader 使用 shuffle=True 时,保存/恢复 dataloader 状态只还原了“消费到第几批(cursor)”,






![[Bug]: failed /v1/audio/speech calls write no LiteLLM_SpendLogs row (success rows and other routes' failure rows are written)](https://www.chat-gpts.plus/wp-content/uploads/2026/10/41521-51f8d6b9-768x403.jpg)

