idiap / fast-transformers

Pytorch library for fast transformer implementations
1.63k stars 175 forks source link

[WinError 2] The system cannot find the file specified: build_ext #129

Open cliffordkleinsr opened 7 months ago

cliffordkleinsr commented 7 months ago

When I run the install command Install i get the traceback below:

pip install git+https://github.com/idiap/fast-transformers.git
Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com
Collecting git+https://github.com/idiap/fast-transformers.git
  Cloning https://github.com/idiap/fast-transformers.git to c:\users\cliffordkleinsr\appdata\local\temp\pip-req-build-7xknfxhp
  Running command git clone --filter=blob:none --quiet https://github.com/idiap/fast-transformers.git 'C:\Users\cliffordkleinsr\AppData\Local\Temp\pip-req-build-7xknfxhp'
  Resolved https://github.com/idiap/fast-transformers.git to commit 2ad36b97e64cb93862937bd21fcc9568d989561f
  Preparing metadata (setup.py) ... done
Requirement already satisfied: torch in c:\users\cliffordkleinsr\anaconda3\lib\site-packages (from pytorch-fast-transformers==0.4.0) (2.0.1+cu118)
Requirement already satisfied: filelock in c:\users\cliffordkleinsr\anaconda3\lib\site-packages (from torch->pytorch-fast-transformers==0.4.0) (3.9.0)
Requirement already satisfied: typing-extensions in c:\users\cliffordkleinsr\anaconda3\lib\site-packages (from torch->pytorch-fast-transformers==0.4.0) (4.7.1)
Requirement already satisfied: sympy in c:\users\cliffordkleinsr\anaconda3\lib\site-packages (from torch->pytorch-fast-transformers==0.4.0) (1.11.1)
Requirement already satisfied: networkx in c:\users\cliffordkleinsr\anaconda3\lib\site-packages (from torch->pytorch-fast-transformers==0.4.0) (3.1)
Requirement already satisfied: jinja2 in c:\users\cliffordkleinsr\anaconda3\lib\site-packages (from torch->pytorch-fast-transformers==0.4.0) (3.1.2)
Requirement already satisfied: MarkupSafe>=2.0 in c:\users\cliffordkleinsr\anaconda3\lib\site-packages (from jinja2->torch->pytorch-fast-transformers==0.4.0) (2.1.1)
Requirement already satisfied: mpmath>=0.19 in c:\users\cliffordkleinsr\anaconda3\lib\site-packages (from sympy->torch->pytorch-fast-transformers==0.4.0) (1.3.0)
Building wheels for collected packages: pytorch-fast-transformers
  Building wheel for pytorch-fast-transformers (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [144 lines of output]
      running bdist_wheel
      C:\Users\cliffordkleinsr\anaconda3\Lib\site-packages\torch\utils\cpp_extension.py:476: UserWarning: Attempted to use ninja as the BuildExtension backend but we could not find ninja.. Falling back to using the slow distutils backend.
        warnings.warn(msg.format('we could not find ninja.'))
      running build
      running build_py
      creating build
      creating build\lib.win-amd64-cpython-311
      creating build\lib.win-amd64-cpython-311\fast_transformers
      copying fast_transformers\masking.py -> build\lib.win-amd64-cpython-311\fast_transformers
      copying fast_transformers\transformers.py -> build\lib.win-amd64-cpython-311\fast_transformers
      copying fast_transformers\utils.py -> build\lib.win-amd64-cpython-311\fast_transformers
      copying fast_transformers\weight_mapper.py -> build\lib.win-amd64-cpython-311\fast_transformers
      copying fast_transformers\__init__.py -> build\lib.win-amd64-cpython-311\fast_transformers
      creating build\lib.win-amd64-cpython-311\fast_transformers\aggregate
      copying fast_transformers\aggregate\__init__.py -> build\lib.win-amd64-cpython-311\fast_transformers\aggregate
      creating build\lib.win-amd64-cpython-311\fast_transformers\attention
      copying fast_transformers\attention\aft_attention.py -> build\lib.win-amd64-cpython-311\fast_transformers\attention
      copying fast_transformers\attention\attention_layer.py -> build\lib.win-amd64-cpython-311\fast_transformers\attention
      copying fast_transformers\attention\causal_linear_attention.py -> build\lib.win-amd64-cpython-311\fast_transformers\attention
      copying fast_transformers\attention\clustered_attention.py -> build\lib.win-amd64-cpython-311\fast_transformers\attention
      copying fast_transformers\attention\conditional_full_attention.py -> build\lib.win-amd64-cpython-311\fast_transformers\attention
      copying fast_transformers\attention\exact_topk_attention.py -> build\lib.win-amd64-cpython-311\fast_transformers\attention
      copying fast_transformers\attention\full_attention.py -> build\lib.win-amd64-cpython-311\fast_transformers\attention
      copying fast_transformers\attention\improved_clustered_attention.py -> build\lib.win-amd64-cpython-311\fast_transformers\attention
      copying fast_transformers\attention\improved_clustered_causal_attention.py -> build\lib.win-amd64-cpython-311\fast_transformers\attention
      copying fast_transformers\attention\linear_attention.py -> build\lib.win-amd64-cpython-311\fast_transformers\attention
      copying fast_transformers\attention\local_attention.py -> build\lib.win-amd64-cpython-311\fast_transformers\attention
      copying fast_transformers\attention\reformer_attention.py -> build\lib.win-amd64-cpython-311\fast_transformers\attention
      copying fast_transformers\attention\__init__.py -> build\lib.win-amd64-cpython-311\fast_transformers\attention
      creating build\lib.win-amd64-cpython-311\fast_transformers\attention_registry
      copying fast_transformers\attention_registry\registry.py -> build\lib.win-amd64-cpython-311\fast_transformers\attention_registry
      copying fast_transformers\attention_registry\spec.py -> build\lib.win-amd64-cpython-311\fast_transformers\attention_registry
      copying fast_transformers\attention_registry\__init__.py -> build\lib.win-amd64-cpython-311\fast_transformers\attention_registry
      creating build\lib.win-amd64-cpython-311\fast_transformers\builders
      copying fast_transformers\builders\attention_builders.py -> build\lib.win-amd64-cpython-311\fast_transformers\builders
      copying fast_transformers\builders\base.py -> build\lib.win-amd64-cpython-311\fast_transformers\builders
      copying fast_transformers\builders\transformer_builders.py -> build\lib.win-amd64-cpython-311\fast_transformers\builders
      copying fast_transformers\builders\__init__.py -> build\lib.win-amd64-cpython-311\fast_transformers\builders
      creating build\lib.win-amd64-cpython-311\fast_transformers\causal_product
      copying fast_transformers\causal_product\__init__.py -> build\lib.win-amd64-cpython-311\fast_transformers\causal_product
      creating build\lib.win-amd64-cpython-311\fast_transformers\clustering
      copying fast_transformers\clustering\__init__.py -> build\lib.win-amd64-cpython-311\fast_transformers\clustering
      creating build\lib.win-amd64-cpython-311\fast_transformers\events
      copying fast_transformers\events\event.py -> build\lib.win-amd64-cpython-311\fast_transformers\events
      copying fast_transformers\events\event_dispatcher.py -> build\lib.win-amd64-cpython-311\fast_transformers\events
      copying fast_transformers\events\filters.py -> build\lib.win-amd64-cpython-311\fast_transformers\events
      copying fast_transformers\events\__init__.py -> build\lib.win-amd64-cpython-311\fast_transformers\events
      creating build\lib.win-amd64-cpython-311\fast_transformers\feature_maps
      copying fast_transformers\feature_maps\base.py -> build\lib.win-amd64-cpython-311\fast_transformers\feature_maps
      copying fast_transformers\feature_maps\fourier_features.py -> build\lib.win-amd64-cpython-311\fast_transformers\feature_maps
      copying fast_transformers\feature_maps\__init__.py -> build\lib.win-amd64-cpython-311\fast_transformers\feature_maps
      creating build\lib.win-amd64-cpython-311\fast_transformers\hashing
      copying fast_transformers\hashing\__init__.py -> build\lib.win-amd64-cpython-311\fast_transformers\hashing
      creating build\lib.win-amd64-cpython-311\fast_transformers\local_product
      copying fast_transformers\local_product\__init__.py -> build\lib.win-amd64-cpython-311\fast_transformers\local_product
      creating build\lib.win-amd64-cpython-311\fast_transformers\recurrent
      copying fast_transformers\recurrent\transformers.py -> build\lib.win-amd64-cpython-311\fast_transformers\recurrent
      copying fast_transformers\recurrent\_utils.py -> build\lib.win-amd64-cpython-311\fast_transformers\recurrent
      copying fast_transformers\recurrent\__init__.py -> build\lib.win-amd64-cpython-311\fast_transformers\recurrent
      creating build\lib.win-amd64-cpython-311\fast_transformers\sparse_product
      copying fast_transformers\sparse_product\__init__.py -> build\lib.win-amd64-cpython-311\fast_transformers\sparse_product
      creating build\lib.win-amd64-cpython-311\fast_transformers\clustering\hamming
      copying fast_transformers\clustering\hamming\__init__.py -> build\lib.win-amd64-cpython-311\fast_transformers\clustering\hamming
      creating build\lib.win-amd64-cpython-311\fast_transformers\recurrent\attention
      copying fast_transformers\recurrent\attention\__init__.py -> build\lib.win-amd64-cpython-311\fast_transformers\recurrent\attention
      creating build\lib.win-amd64-cpython-311\fast_transformers\recurrent\attention\cross_attention
      copying fast_transformers\recurrent\attention\cross_attention\attention_layer.py -> build\lib.win-amd64-cpython-311\fast_transformers\recurrent\attention\cross_attention
      copying fast_transformers\recurrent\attention\cross_attention\full_attention.py -> build\lib.win-amd64-cpython-311\fast_transformers\recurrent\attention\cross_attention
      copying fast_transformers\recurrent\attention\cross_attention\linear_attention.py -> build\lib.win-amd64-cpython-311\fast_transformers\recurrent\attention\cross_attention
      copying fast_transformers\recurrent\attention\cross_attention\__init__.py -> build\lib.win-amd64-cpython-311\fast_transformers\recurrent\attention\cross_attention
      creating build\lib.win-amd64-cpython-311\fast_transformers\recurrent\attention\self_attention
      copying fast_transformers\recurrent\attention\self_attention\attention_layer.py -> build\lib.win-amd64-cpython-311\fast_transformers\recurrent\attention\self_attention
      copying fast_transformers\recurrent\attention\self_attention\full_attention.py -> build\lib.win-amd64-cpython-311\fast_transformers\recurrent\attention\self_attention
      copying fast_transformers\recurrent\attention\self_attention\linear_attention.py -> build\lib.win-amd64-cpython-311\fast_transformers\recurrent\attention\self_attention
      copying fast_transformers\recurrent\attention\self_attention\__init__.py -> build\lib.win-amd64-cpython-311\fast_transformers\recurrent\attention\self_attention
      creating build\lib.win-amd64-cpython-311\tests
      creating build\lib.win-amd64-cpython-311\tests\aggregate
      copying tests\aggregate\test_aggregate_cpu.py -> build\lib.win-amd64-cpython-311\tests\aggregate
      copying tests\aggregate\test_aggregate_gpu.py -> build\lib.win-amd64-cpython-311\tests\aggregate
      copying tests\aggregate\test_clustered_aggregate_cpu.py -> build\lib.win-amd64-cpython-311\tests\aggregate
      copying tests\aggregate\test_clustered_aggregate_gpu.py -> build\lib.win-amd64-cpython-311\tests\aggregate
      copying tests\aggregate\test_clustered_broadcast_cpu.py -> build\lib.win-amd64-cpython-311\tests\aggregate
      copying tests\aggregate\test_clustered_broadcast_gpu.py -> build\lib.win-amd64-cpython-311\tests\aggregate
      copying tests\aggregate\__init__.py -> build\lib.win-amd64-cpython-311\tests\aggregate
      creating build\lib.win-amd64-cpython-311\tests\causal_product
      copying tests\causal_product\test_causal_product.py -> build\lib.win-amd64-cpython-311\tests\causal_product
      copying tests\causal_product\test_causal_product_cpu.py -> build\lib.win-amd64-cpython-311\tests\causal_product
      copying tests\causal_product\test_causal_product_gpu.py -> build\lib.win-amd64-cpython-311\tests\causal_product
      copying tests\causal_product\__init__.py -> build\lib.win-amd64-cpython-311\tests\causal_product
      creating build\lib.win-amd64-cpython-311\tests\clustering
      copying tests\clustering\__init__.py -> build\lib.win-amd64-cpython-311\tests\clustering
      creating build\lib.win-amd64-cpython-311\tests\events
      copying tests\events\test_events.py -> build\lib.win-amd64-cpython-311\tests\events
      copying tests\events\test_event_dispatcher.py -> build\lib.win-amd64-cpython-311\tests\events
      copying tests\events\test_event_filters.py -> build\lib.win-amd64-cpython-311\tests\events
      copying tests\events\__init__.py -> build\lib.win-amd64-cpython-311\tests\events
      creating build\lib.win-amd64-cpython-311\tests\feature_maps
      copying tests\feature_maps\test_fourier_features.py -> build\lib.win-amd64-cpython-311\tests\feature_maps
      copying tests\feature_maps\__init__.py -> build\lib.win-amd64-cpython-311\tests\feature_maps
      creating build\lib.win-amd64-cpython-311\tests\hashing
      copying tests\hashing\test_hash_cpu.py -> build\lib.win-amd64-cpython-311\tests\hashing
      copying tests\hashing\test_hash_gpu.py -> build\lib.win-amd64-cpython-311\tests\hashing
      copying tests\hashing\__init__.py -> build\lib.win-amd64-cpython-311\tests\hashing
      creating build\lib.win-amd64-cpython-311\tests\recurrent
      copying tests\recurrent\test_transformer_decoder.py -> build\lib.win-amd64-cpython-311\tests\recurrent
      copying tests\recurrent\test_transformer_encoder.py -> build\lib.win-amd64-cpython-311\tests\recurrent
      copying tests\recurrent\__init__.py -> build\lib.win-amd64-cpython-311\tests\recurrent
      creating build\lib.win-amd64-cpython-311\tests\sparse_product
      copying tests\sparse_product\test_clustered_sparse_product_backward_cpu.py -> build\lib.win-amd64-cpython-311\tests\sparse_product
      copying tests\sparse_product\test_clustered_sparse_product_backward_cpu_v2.py -> build\lib.win-amd64-cpython-311\tests\sparse_product
      copying tests\sparse_product\test_clustered_sparse_product_backward_gpu.py -> build\lib.win-amd64-cpython-311\tests\sparse_product
      copying tests\sparse_product\test_clustered_sparse_product_cpu.py -> build\lib.win-amd64-cpython-311\tests\sparse_product
      copying tests\sparse_product\test_clustered_sparse_product_cpu_v2.py -> build\lib.win-amd64-cpython-311\tests\sparse_product
      copying tests\sparse_product\test_clustered_sparse_product_gpu.py -> build\lib.win-amd64-cpython-311\tests\sparse_product
      copying tests\sparse_product\test_clustered_sparse_weighted_average_cpu.py -> build\lib.win-amd64-cpython-311\tests\sparse_product
      copying tests\sparse_product\test_clustered_sparse_weighted_average_cpu_v2.py -> build\lib.win-amd64-cpython-311\tests\sparse_product
      copying tests\sparse_product\test_clustered_sparse_weighted_average_gpu.py -> build\lib.win-amd64-cpython-311\tests\sparse_product
      copying tests\sparse_product\test_sparse_product_backward_cpu.py -> build\lib.win-amd64-cpython-311\tests\sparse_product
      copying tests\sparse_product\test_sparse_product_backward_gpu.py -> build\lib.win-amd64-cpython-311\tests\sparse_product
      copying tests\sparse_product\test_sparse_product_cpu.py -> build\lib.win-amd64-cpython-311\tests\sparse_product
      copying tests\sparse_product\test_sparse_product_gpu.py -> build\lib.win-amd64-cpython-311\tests\sparse_product
      copying tests\sparse_product\test_sparse_weighted_average_cpu.py -> build\lib.win-amd64-cpython-311\tests\sparse_product
      copying tests\sparse_product\test_sparse_weighted_average_gpu.py -> build\lib.win-amd64-cpython-311\tests\sparse_product
      copying tests\sparse_product\__init__.py -> build\lib.win-amd64-cpython-311\tests\sparse_product
      creating build\lib.win-amd64-cpython-311\tests\clustering\hamming
      copying tests\clustering\hamming\test_cluster_cpu.py -> build\lib.win-amd64-cpython-311\tests\clustering\hamming
      copying tests\clustering\hamming\test_cluster_gpu.py -> build\lib.win-amd64-cpython-311\tests\clustering\hamming
      copying tests\clustering\hamming\test_python_api_gpu.py -> build\lib.win-amd64-cpython-311\tests\clustering\hamming
      copying tests\clustering\hamming\time_python_api_gpu.py -> build\lib.win-amd64-cpython-311\tests\clustering\hamming
      copying tests\clustering\hamming\__init__.py -> build\lib.win-amd64-cpython-311\tests\clustering\hamming
      creating build\lib.win-amd64-cpython-311\tests\recurrent\attention
      copying tests\recurrent\attention\__init__.py -> build\lib.win-amd64-cpython-311\tests\recurrent\attention
      creating build\lib.win-amd64-cpython-311\tests\recurrent\attention\cross_attention
      copying tests\recurrent\attention\cross_attention\test_attention_layer.py -> build\lib.win-amd64-cpython-311\tests\recurrent\attention\cross_attention
      copying tests\recurrent\attention\cross_attention\test_full_attention.py -> build\lib.win-amd64-cpython-311\tests\recurrent\attention\cross_attention
      copying tests\recurrent\attention\cross_attention\test_linear_attention.py -> build\lib.win-amd64-cpython-311\tests\recurrent\attention\cross_attention
      copying tests\recurrent\attention\cross_attention\__init__.py -> build\lib.win-amd64-cpython-311\tests\recurrent\attention\cross_attention
      creating build\lib.win-amd64-cpython-311\tests\recurrent\attention\self_attention
      copying tests\recurrent\attention\self_attention\test_attention_layer.py -> build\lib.win-amd64-cpython-311\tests\recurrent\attention\self_attention
      copying tests\recurrent\attention\self_attention\test_full_attention.py -> build\lib.win-amd64-cpython-311\tests\recurrent\attention\self_attention
      copying tests\recurrent\attention\self_attention\test_linear_attention.py -> build\lib.win-amd64-cpython-311\tests\recurrent\attention\self_attention
      copying tests\recurrent\attention\self_attention\__init__.py -> build\lib.win-amd64-cpython-311\tests\recurrent\attention\self_attention
      running build_ext
      error: [WinError 2] The system cannot find the file specified
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for pytorch-fast-transformers
  Running setup.py clean for pytorch-fast-transformers

System Specs and variables:

  OS: Windows 11
  Python: 3.11.5
  CUDA: 11.8
  PyTorch: 2.2.0
  C++: MSVC (all added to environment)
  GPU: RTX 4080
marin797 commented 4 months ago

how do you fixed it?