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

Poetry cannot install flash-attention #8427

Closed
4 tasks done
Atry opened this issue Sep 10, 2023 · 4 comments
Closed
4 tasks done

Poetry cannot install flash-attention #8427

Atry opened this issue Sep 10, 2023 · 4 comments
Labels
kind/bug Something isn't working as expected status/triage This issue needs to be triaged

Comments

@Atry
Copy link

Atry commented Sep 10, 2023

  • Poetry version: 1.6.1
  • Python version: 3.10.12
  • OS version and name: NixOS unstable
  • pyproject.toml:
name = "poetry-bug-report"
version = "0.1.0"
description = ""
authors = ["Your Name <you@example.com>"]
readme = "README.md"

[tool.poetry.dependencies]
python = "^3.10"
flash-attn = "2.2.1"


[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
  • I am on the latest stable Poetry version, installed using a recommended method.
  • I have searched the issues of this repo and believe that this is not a duplicate.
  • I have consulted the FAQ and blog for any relevant entries or release notes.
  • If an exception occurs when executing a command, I executed it again in debug mode (-vvv option) and have included the output below.
$ poetry install -vvv
Using virtualenv: /home/twer/monorepo/text-generation-inference/.venv
Updating dependencies
Resolving dependencies...
   1: fact: poetry-bug-report is 0.1.0
   1: derived: poetry-bug-report
   1: fact: poetry-bug-report depends on flash-attn (2.2.1)
   1: selecting poetry-bug-report (0.1.0)
   1: derived: flash-attn (==2.2.1)
[keyring.backend] Loading KWallet
[keyring.backend] Loading SecretService
[keyring.backend] Loading Windows
[keyring.backend] Loading chainer
[keyring.backend] Loading libsecret
[keyring.backend] Loading macOS
No suitable keyring backend found
No suitable keyring backends were found
Keyring is not available, credentials will be stored and retrieved from configuration files as plaintext.
Creating new session for pypi.org
Source (PyPI): 1 packages found for flash-attn 2.2.1
   1: fact: flash-attn (2.2.1) depends on torch (*)
   1: fact: flash-attn (2.2.1) depends on einops (*)
   1: fact: flash-attn (2.2.1) depends on packaging (*)
   1: fact: flash-attn (2.2.1) depends on ninja (*)
   1: selecting flash-attn (2.2.1)
   1: derived: ninja
   1: derived: packaging
   1: derived: einops
   1: derived: torch
Source (PyPI): 19 packages found for ninja *
Source (PyPI): 41 packages found for packaging *
Source (PyPI): 10 packages found for einops *
Source (PyPI): 29 packages found for torch *
   1: selecting packaging (23.1)
   1: fact: torch (2.0.1) depends on filelock (*)
   1: fact: torch (2.0.1) depends on typing-extensions (*)
   1: fact: torch (2.0.1) depends on sympy (*)
   1: fact: torch (2.0.1) depends on networkx (*)
   1: fact: torch (2.0.1) depends on jinja2 (*)
   1: selecting torch (2.0.1)
   1: derived: jinja2
   1: derived: networkx
   1: derived: sympy
   1: derived: typing-extensions
   1: derived: filelock
Source (PyPI): 44 packages found for jinja2 *
Source (PyPI): 43 packages found for networkx *
Skipping url (https://files.pythonhosted.org/packages/f9/77/884c7b486953c044055ce4223f97b1d6c19674a6698e04cbb4a610337041/sympy-0.7.2-py3.2.tar.gz) due to invalid version (None)
Skipping url (https://files.pythonhosted.org/packages/16/4d/d2ff189120289b8be43145d0f00c2ebcba46c8aac0ab68eef2d6e7dc2753/sympy-0.7.2-py3.3.tar.gz) due to invalid version (None)
Skipping url (https://files.pythonhosted.org/packages/9c/10/31fba5f4a67454bc21495a953ceafb117998dddb04fdd46c7d566b94e1e3/sympy-0.7.3-py2.5.tar.gz) due to invalid version (None)
Skipping url (https://files.pythonhosted.org/packages/1a/6c/e7f64d76415e719a6439fc2d3626b3aab176065be7f329f6223fad17bb72/sympy-0.7.3-py2.6.tar.gz) due to invalid version (None)
Skipping url (https://files.pythonhosted.org/packages/22/51/db47b12df63ef13e630ec0365269fcb02eb2724ac0a418ca31aedb7e5940/sympy-0.7.3-py2.7.tar.gz) due to invalid version (None)
Skipping url (https://files.pythonhosted.org/packages/e6/3f/83229a9c84253096fbeb5aba728db0dea9c65bdd453e606c4feecd005bb3/sympy-0.7.3-py3.2.tar.gz) due to invalid version (None)
Skipping url (https://files.pythonhosted.org/packages/31/4c/eb5340171866063924799cb7354e4d046c4634170eb2a337191b68227557/sympy-0.7.3-py3.3.tar.gz) due to invalid version (None)
Source (PyPI): 37 packages found for sympy *
Source (PyPI): 26 packages found for typing-extensions *
Source (PyPI): 60 packages found for filelock *
   1: fact: filelock (3.12.3) depends on typing-extensions (>=4.7.1)
   1: selecting filelock (3.12.3)
   1: derived: typing-extensions (>=4.7.1)
   1: selecting typing-extensions (4.7.1)
   1: fact: jinja2 (3.1.2) depends on MarkupSafe (>=2.0)
   1: selecting jinja2 (3.1.2)
   1: derived: MarkupSafe (>=2.0)
Source (PyPI): 6 packages found for markupsafe >=2.0
   1: selecting networkx (3.1)
   1: fact: sympy (1.12) depends on mpmath (>=0.19)
   1: selecting sympy (1.12)
   1: derived: mpmath (>=0.19)
Skipping url (https://files.pythonhosted.org/packages/66/ab/bba2d8854ff49ed60be91073553e8aa22aa3ee3d5f767275d153cabe806a/mpmath-0.4.src.zip) due to invalid version (None)
Source (PyPI): 5 packages found for mpmath >=0.19
   1: selecting ninja (1.11.1)
   1: selecting einops (0.6.1)
   1: selecting markupsafe (2.1.3)
   1: selecting mpmath (1.3.0)
   1: Version solving took 0.348 seconds.
   1: Tried 1 solutions.

Finding the necessary packages for the current system
Source (PyPI): 1 packages found for flash-attn 2.2.1
Source (PyPI): 1 packages found for ninja *
Source (PyPI): 1 packages found for packaging *
Source (PyPI): 1 packages found for einops *
Source (PyPI): 1 packages found for torch *
Source (PyPI): 1 packages found for jinja2 *
Source (PyPI): 1 packages found for networkx *
Source (PyPI): 1 packages found for sympy *
Source (PyPI): 1 packages found for typing-extensions *
Source (PyPI): 1 packages found for filelock *
Source (PyPI): 1 packages found for markupsafe >=2.0
Source (PyPI): 1 packages found for mpmath >=0.19

Package operations: 1 install, 0 updates, 0 removals, 11 skipped

  • Installing einops (0.6.1): Pending...
  • Installing einops (0.6.1): Skipped for the following reason: Already installed
  • Installing filelock (3.12.3): Pending...
  • Installing filelock (3.12.3): Skipped for the following reason: Already installed
  • Installing flash-attn (2.2.1): Pending...
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
  • Installing flash-attn (2.2.1): Preparing...
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
  • Installing flash-attn (2.2.1): Failed
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed

  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
  Stack trace:
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed

  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
  8  /nix/store/2lzahypmm5vvja6kl5fs5avwvwjs643d-python3.10-poetry-1.6.1/lib/python3.10/site-packages/poetry/installation/executor.py:286 in _execute_operation
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      284│ 
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      285│             try:
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
    → 286│                 result = self._do_execute_operation(operation)
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      287│             except EnvCommandError as e:
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      288│                 if e.e.returncode == -2:
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed

  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
  7  /nix/store/2lzahypmm5vvja6kl5fs5avwvwjs643d-python3.10-poetry-1.6.1/lib/python3.10/site-packages/poetry/installation/executor.py:386 in _do_execute_operation
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      384│             return 0
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      385│ 
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
    → 386│         result: int = getattr(self, f"_execute_{method}")(operation)
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      387│ 
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      388│         if result != 0:
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed

  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
  6  /nix/store/2lzahypmm5vvja6kl5fs5avwvwjs643d-python3.10-poetry-1.6.1/lib/python3.10/site-packages/poetry/installation/executor.py:511 in _execute_install
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      509│ 
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      510│     def _execute_install(self, operation: Install | Update) -> int:
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
    → 511│         status_code = self._install(operation)
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      512│ 
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      513│         self._save_url_reference(operation)
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed

  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
  5  /nix/store/2lzahypmm5vvja6kl5fs5avwvwjs643d-python3.10-poetry-1.6.1/lib/python3.10/site-packages/poetry/installation/executor.py:549 in _install
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      547│             archive = self._download_link(operation, Link(package.source_url))
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      548│         else:
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
    → 549│             archive = self._download(operation)
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      550│ 
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      551│         operation_message = self.get_operation_message(operation)
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed

  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
  4  /nix/store/2lzahypmm5vvja6kl5fs5avwvwjs643d-python3.10-poetry-1.6.1/lib/python3.10/site-packages/poetry/installation/executor.py:753 in _download
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      751│             self._yanked_warnings.append(message)
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      752│ 
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
    → 753│         return self._download_link(operation, link)
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      754│ 
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      755│     def _download_link(self, operation: Install | Update, link: Link) -> Path:
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed

  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
  3  /nix/store/2lzahypmm5vvja6kl5fs5avwvwjs643d-python3.10-poetry-1.6.1/lib/python3.10/site-packages/poetry/installation/executor.py:800 in _download_link
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      798│             self._write(operation, message)
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      799│ 
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
    → 800│             archive = self._chef.prepare(archive, output_dir=output_dir)
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      801│ 
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      802│         # Use the original archive to provide the correct hash.
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed

  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
  2  /nix/store/2lzahypmm5vvja6kl5fs5avwvwjs643d-python3.10-poetry-1.6.1/lib/python3.10/site-packages/poetry/installation/chef.py:101 in prepare
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
       99│             return self._prepare(archive, destination=destination, editable=editable)
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      100│ 
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
    → 101│         return self._prepare_sdist(archive, destination=output_dir)
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      102│ 
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      103│     def _prepare(
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed

  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
  1  /nix/store/2lzahypmm5vvja6kl5fs5avwvwjs643d-python3.10-poetry-1.6.1/lib/python3.10/site-packages/poetry/installation/chef.py:185 in _prepare_sdist
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      183│             destination.mkdir(parents=True, exist_ok=True)
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      184│ 
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
    → 185│             return self._prepare(
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      186│                 sdist_dir,
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      187│                 destination,
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed

  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
  ChefBuildError
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed

  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
  Backend subprocess exited when trying to invoke get_requires_for_build_wheel
  
  Traceback (most recent call last):
    File "/nix/store/rar58p4w9nkaqwsk4ssmsmzml2i5dlpj-python3.10-pyproject-hooks-1.0.0/lib/python3.10/site-packages/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
      main()
    File "/nix/store/rar58p4w9nkaqwsk4ssmsmzml2i5dlpj-python3.10-pyproject-hooks-1.0.0/lib/python3.10/site-packages/pyproject_hooks/_in_process/_in_process.py", line 335, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
    File "/nix/store/rar58p4w9nkaqwsk4ssmsmzml2i5dlpj-python3.10-pyproject-hooks-1.0.0/lib/python3.10/site-packages/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel
      return hook(config_settings)
    File "/tmp/tmpywvqa6z3/.venv/lib/python3.10/site-packages/setuptools/build_meta.py", line 355, in get_requires_for_build_wheel
      return self._get_build_requires(config_settings, requirements=['wheel'])
    File "/tmp/tmpywvqa6z3/.venv/lib/python3.10/site-packages/setuptools/build_meta.py", line 325, in _get_build_requires
      self.run_setup()
    File "/tmp/tmpywvqa6z3/.venv/lib/python3.10/site-packages/setuptools/build_meta.py", line 507, in run_setup
      super(_BuildMetaLegacyBackend, self).run_setup(setup_script=setup_script)
    File "/tmp/tmpywvqa6z3/.venv/lib/python3.10/site-packages/setuptools/build_meta.py", line 341, in run_setup
      exec(code, locals())
    File "<string>", line 8, in <module>
  ModuleNotFoundError: No module named 'packaging'
  
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed

  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
  at /nix/store/2lzahypmm5vvja6kl5fs5avwvwjs643d-python3.10-poetry-1.6.1/lib/python3.10/site-packages/poetry/installation/chef.py:147 in _prepare
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      143│ 
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      144│                 error = ChefBuildError("\n\n".join(message_parts))
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      145│ 
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      146│             if error is not None:
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
    → 147│                 raise error from None
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      148│ 
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      149│             return path
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      150│ 
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
      151│     def _prepare_sdist(self, archive: Path, destination: Path | None = None) -> Path:
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed

  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
Note: This error originates from the build backend, and is likely not a problem with poetry but with flash-attn (2.2.1) not supporting PEP 517 builds. You can verify this by running 'pip wheel --use-pep517 "flash-attn (==2.2.1)"'.
  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed

  • Installing jinja2 (3.1.2): Pending...
  • Installing jinja2 (3.1.2): Skipped for the following reason: Already installed
  • Installing markupsafe (2.1.3): Pending...
  • Installing markupsafe (2.1.3): Skipped for the following reason: Already installed
  • Installing mpmath (1.3.0): Pending...
  • Installing mpmath (1.3.0): Skipped for the following reason: Already installed
  • Installing networkx (3.1): Pending...
  • Installing networkx (3.1): Skipped for the following reason: Already installed
  • Installing ninja (1.11.1): Pending...
  • Installing ninja (1.11.1): Skipped for the following reason: Already installed
  • Installing packaging (23.1): Pending...
  • Installing packaging (23.1): Skipped for the following reason: Already installed
  • Installing torch (2.0.1): Pending...
  • Installing torch (2.0.1): Skipped for the following reason: Already installed
  • Installing typing-extensions (4.7.1): Pending...
  • Installing typing-extensions (4.7.1): Skipped for the following reason: Already installed
  • Installing sympy (1.12): Pending...
  • Installing sympy (1.12): Skipped for the following reason: Already installed

Issue

Note that flash-attention requires --no-build-isolation according to their document https://pypi.org/project/flash-attn/#:~:text=install%20flash%2Dattn-,%2D%2Dno%2Dbuild%2Disolation,-Alternatively%20you%20can

However, poetry does not support --no-build-isolation.

As a workaround to poetry install, the following command works

PIP_NO_BUILD_ISOLATION=1 pip install -e .
@Atry Atry added kind/bug Something isn't working as expected status/triage This issue needs to be triaged labels Sep 10, 2023
@Atry
Copy link
Author

Atry commented Sep 10, 2023

flash-attention does not use PEP 517 because:

We tried this earlier (v1.0.4 to 1.0.8 i think) and it was a lot of headache because the torch requirement conflicts with different ways that people install pytorch in their system.

Dao-AILab/flash-attention#493 (comment)

@Secrus
Copy link
Member

Secrus commented Sep 10, 2023

If they don't support PEP 517 API, then there is nothing Poetry can do, since we only support PEP 517. You have to use other tools to manage your project.

@Secrus Secrus closed this as not planned Won't fix, can't repro, duplicate, stale Sep 10, 2023
@Atry
Copy link
Author

Atry commented Sep 10, 2023

then there is nothing Poetry can do, since we only support PEP 517.

The claim seems false, because the poetry managed project can indeed install flash attention with the following command

cd poetry-bug-report && PIP_NO_BUILD_ISOLATION=1 pip install -e .

On the other hand, the following command fails

cd poetry-bug-report && PIP_NO_BUILD_ISOLATION=1 poetry install

Since both pip install and poetry install internally use poetry-core, the behavior difference is unexpected.

Copy link

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Feb 29, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
kind/bug Something isn't working as expected status/triage This issue needs to be triaged
Projects
None yet
Development

No branches or pull requests

2 participants