我正在尝试运行 StyleGan3 代码,但我不断收到此错误:
RuntimeError: Ninja is required to load C++ extensions
我确实 pip install Ninja 并获得了版本 1.10.2.3,并且我在 Windows 10 上,所以我使用以下说明安装、构建和运行 docker:https://hangzhang.org/PyTorch-Encoding/notes/compile.html#using-docker
这是我得到的完整回溯:
Generating image for seed 2 (0/1) ...
Setting up PyTorch plugin "bias_act_plugin"... Failed!
Traceback (most recent call last):
File "D:\Python\stylegan3\stylegan3-main\gen_images.py", line 143, in <module>
generate_images() # pylint: disable=no-value-for-parameter
File "C:\Users\a\AppData\Local\Programs\Python\Python39\lib\site-packages\click\core.py", line 829, in __call__
return self.main(*args, **kwargs)
File "C:\Users\a\AppData\Local\Programs\Python\Python39\lib\site-packages\click\core.py", line 782, in main
rv = self.invoke(ctx)
File "C:\Users\a\AppData\Local\Programs\Python\Python39\lib\site-packages\click\core.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "C:\Users\aAppData\Local\Programs\Python\Python39\lib\site-packages\click\core.py", line 610, in invoke
return callback(*args, **kwargs)
File "D:\Python\stylegan3\stylegan3-main\gen_images.py", line 135, in generate_images
img = G(z, label, truncation_psi=truncation_psi, noise_mode=noise_mode)
File "C:\Users\a\AppData\Local\Programs\Python\Python39\lib\site-packages\torch\nn\modules\module.py", line 727, in _call_impl
result = self.forward(*input, **kwargs)
File "<string>", line 503, in forward
File "C:\Users\a\AppData\Local\Programs\Python\Python39\lib\site-packages\torch\nn\modules\module.py", line 727, in _call_impl
result = self.forward(*input, **kwargs)
File "<string>", line 143, in forward
File "C:\Users\a\AppData\Local\Programs\Python\Python39\lib\site-packages\torch\nn\modules\module.py", line 727, in _call_impl
result = self.forward(*input, **kwargs)
File "<string>", line 92, in forward
File "D:\Python\stylegan3\stylegan3-main\torch_utils\ops\bias_act.py", line 84, in bias_act
if impl == 'cuda' and x.device.type == 'cuda' and _init():
File "D:\Python\stylegan3\stylegan3-main\torch_utils\ops\bias_act.py", line 41, in _init
_plugin = custom_ops.get_plugin(
File "D:\Python\stylegan3\stylegan3-main\torch_utils\custom_ops.py", line 136, in get_plugin
torch.utils.cpp_extension.load(name=module_name, build_directory=cached_build_dir,
File "C:\Users\a\AppData\Local\Programs\Python\Python39\lib\site-packages\torch\utils\cpp_extension.py", line 986, in load
return _jit_compile(
File "C:\Users\a\AppData\Local\Programs\Python\Python39\lib\site-packages\torch\utils\cpp_extension.py", line 1193, in _jit_compile
_write_ninja_file_and_build_library(
File "C:\Users\a\AppData\Local\Programs\Python\Python39\lib\site-packages\torch\utils\cpp_extension.py", line 1268, in _write_ninja_file_and_build_library
verify_ninja_availability()
File "C:\Users\a\AppData\Local\Programs\Python\Python39\lib\site-packages\torch\utils\cpp_extension.py", line 1323, in verify_ninja_availability
raise RuntimeError("Ninja is required to load C++ extensions")
RuntimeError: Ninja is required to load C++ extensions```
回答1
添加这可能会解决您的问题
sudo apt-get install ninja-build
回答2
您可以通过 https://github.com/ninja-build/ninja/releases 在 windows 上获得 ninja-build,它是 ninja-win.zip。根据您安装它的位置,您可能必须将其添加到 Windows PATH。
编辑:有关于构建 https://github.com/ninja-build/ninja#building-ninja-itself 的说明
回答3
我遇到了同样的问题,我通过使用 pip 安装 ninja 解决了它:
pip install Ninja
我也建议你注意这个https://github.com/zhanghang1989/PyTorch-Encoding/issues/167