python - StyleGan3 错误:需要 Ninja 才能加载 C++ 扩展

我正在尝试运行 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

相似文章

随机推荐

最新文章