Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: 序列化报错 #13

Open
Kkiiiiiiiiiiiiiiii opened this issue Aug 21, 2024 · 1 comment
Open

[Bug]: 序列化报错 #13

Kkiiiiiiiiiiiiiiii opened this issue Aug 21, 2024 · 1 comment
Labels
bug Something isn't working

Comments

@Kkiiiiiiiiiiiiiiii
Copy link

Bug

Traceback (most recent call last):
File "D:\BaiduNetdiskDownload\Relation-DETR-main\main.py", line 213, in
train()
File "D:\BaiduNetdiskDownload\Relation-DETR-main\main.py", line 186, in train
Traceback (most recent call last):
File "", line 1, in
train_one_epoch_acc(
File "D:\BaiduNetdiskDownload\Relation-DETR-main\util\engine.py", line 37, in train_one_epoch_acc
prefetcher = DataPrefetcher(data_loader, accelerator.device)
File "D:\BaiduNetdiskDownload\Relation-DETR-main\util\collate_fn.py", line 23, in init
self.preload()
File "D:\ProgramFiles\miniconda3\envs\tang\lib\multiprocessing\spawn.py", line 116, in spawn_main
File "D:\BaiduNetdiskDownload\Relation-DETR-main\util\collate_fn.py", line 27, in preload
self.next_batch = next(self.loader)
File "D:\ProgramFiles\miniconda3\envs\tang\lib\site-packages\accelerate\data_loader.py", line 445, in iter
exitcode = _main(fd, parent_sentinel)
File "D:\ProgramFiles\miniconda3\envs\tang\lib\multiprocessing\spawn.py", line 126, in _main
self = reduction.pickle.load(from_parent)
EOFError: Ran out of input
dataloader_iter = super().iter()
File "D:\ProgramFiles\miniconda3\envs\tang\lib\site-packages\torch\utils\data\dataloader.py", line 439, in iter
self._iterator = self._get_iterator()
File "D:\ProgramFiles\miniconda3\envs\tang\lib\site-packages\torch\utils\data\dataloader.py", line 390, in _get_iterator
return _MultiProcessingDataLoaderIter(self)
File "D:\ProgramFiles\miniconda3\envs\tang\lib\site-packages\torch\utils\data\dataloader.py", line 1077, in init
w.start()
File "D:\ProgramFiles\miniconda3\envs\tang\lib\multiprocessing\process.py", line 121, in start
self._popen = self._Popen(self)
File "D:\ProgramFiles\miniconda3\envs\tang\lib\multiprocessing\context.py", line 224, in _Popen
return _default_context.get_context().Process._Popen(process_obj)
File "D:\ProgramFiles\miniconda3\envs\tang\lib\multiprocessing\context.py", line 327, in _Popen
return Popen(process_obj)
File "D:\ProgramFiles\miniconda3\envs\tang\lib\multiprocessing\popen_spawn_win32.py", line 93, in init
reduction.dump(process_obj, to_child)
File "D:\ProgramFiles\miniconda3\envs\tang\lib\multiprocessing\reduction.py", line 60, in dump
ForkingPickler(file, protocol).dump(obj)
_pickle.PicklingError: Can't pickle <function at 0x000001B54CA11670>: attribute lookup on transforms.presets failed
我想请问下这个报错怎么解决?

环境信息

No response

补充信息

No response

@Kkiiiiiiiiiiiiiiii Kkiiiiiiiiiiiiiiii added the bug Something isn't working label Aug 21, 2024
@xiuqhou
Copy link
Owner

xiuqhou commented Aug 21, 2024

这是因为presets.py文件用了lambda函数,多进程情况下linux可以运行但windows会报错,目前已经修正过来了,您可以拉取最新的代码跑试试

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants