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

Unable to install dependencies: No matching distribution found for triton==0.4.2 #628

Closed
tsndr opened this issue Jun 7, 2022 · 13 comments
Closed
Labels
bug Something isn't working

Comments

@tsndr
Copy link

tsndr commented Jun 7, 2022

Describe the bug
It seems like there's an issue with the dependencies.

Error Output
$ pip install -r requirements/requirements.txt 
Defaulting to user installation because normal site-packages is not writeable
Collecting deepspeed
  Using cached deepspeed-0.3.15+eb7f5cf-py3-none-any.whl
Collecting einops==0.3.0
  Using cached einops-0.3.0-py2.py3-none-any.whl (25 kB)
Collecting ftfy==6.0.1
  Using cached ftfy-6.0.1-py3-none-any.whl
Collecting lm_dataformat==0.0.20
  Using cached lm_dataformat-0.0.20-py3-none-any.whl (5.8 kB)
Collecting lm_eval==0.2.0
  Using cached lm_eval-0.2.0-py3-none-any.whl (143 kB)
Collecting mpi4py==3.0.3
  Using cached mpi4py-3.0.3.tar.gz (1.4 MB)
  Preparing metadata (setup.py) ... done
Collecting numpy==1.21.0
  Using cached numpy-1.21.0-cp310-cp310-linux_x86_64.whl
Collecting pybind11==2.6.2
  Using cached pybind11-2.6.2-py2.py3-none-any.whl (191 kB)
Collecting regex
  Using cached regex-2022.6.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (763 kB)
Collecting sentencepiece
  Using cached sentencepiece-0.1.96-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB)
Collecting six
  Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Collecting tokenizers==0.10.2
  Using cached tokenizers-0.10.2.tar.gz (211 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting transformers~=4.16.0
  Using cached transformers-4.16.2-py3-none-any.whl (3.5 MB)
Collecting wandb==0.10.28
  Using cached wandb-0.10.28-py2.py3-none-any.whl (2.1 MB)
Collecting wcwidth
  Using cached wcwidth-0.2.5-py2.py3-none-any.whl (30 kB)
Collecting zstandard
  Using cached zstandard-0.17.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.5 MB)
Collecting ujson
  Using cached ujson-5.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (45 kB)
Collecting jsonlines
  Using cached jsonlines-3.0.0-py3-none-any.whl (8.5 kB)
  Using cached jsonlines-2.0.0-py3-none-any.whl (6.3 kB)
Collecting scikit-learn>=0.24.1
  Using cached scikit_learn-1.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (30.4 MB)
Collecting nagisa==0.2.7
  Using cached nagisa-0.2.7-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (21.5 MB)
Collecting rouge-score==0.0.4
  Using cached rouge_score-0.0.4-py2.py3-none-any.whl (22 kB)
Collecting black
  Using cached black-22.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB)
Collecting sqlitedict==1.6.0
  Using cached sqlitedict-1.6.0.tar.gz (29 kB)
  Preparing metadata (setup.py) ... done
Collecting pycountry==20.7.3
  Using cached pycountry-20.7.3.tar.gz (10.1 MB)
  Preparing metadata (setup.py) ... done
Collecting click>=7.1
  Using cached click-8.1.3-py3-none-any.whl (96 kB)
Collecting zstandard
  Using cached zstandard-0.15.2.tar.gz (1.0 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting datasets==1.15.1
  Using cached datasets-1.15.1-py3-none-any.whl (290 kB)
Collecting numexpr==2.7.2
  Using cached numexpr-2.7.2.tar.gz (97 kB)
  Preparing metadata (setup.py) ... done
Collecting pytest==6.2.3
  Using cached pytest-6.2.3-py3-none-any.whl (280 kB)
Collecting jieba==0.42.1
  Using cached jieba-0.42.1.tar.gz (19.2 MB)
  Preparing metadata (setup.py) ... done
Collecting openai==0.6.4
  Using cached openai-0.6.4.tar.gz (159 kB)
  Preparing metadata (setup.py) ... done
Collecting sacrebleu==1.5.0
  Using cached sacrebleu-1.5.0-py3-none-any.whl (65 kB)
Collecting mock==4.0.3
  Using cached mock-4.0.3-py3-none-any.whl (28 kB)
Requirement already satisfied: torch>=1.7 in /home/toby/.local/lib/python3.10/site-packages (from lm_eval==0.2.0->-r requirements/requirements.txt (line 5)) (1.11.0)
Collecting best-download==0.0.9
  Using cached best_download-0.0.9-py3-none-any.whl (6.5 kB)
Collecting tqdm-multiprocess==0.0.11
  Using cached tqdm_multiprocess-0.0.11-py3-none-any.whl (9.8 kB)
Collecting pytablewriter==0.58.0
  Using cached pytablewriter-0.58.0-py3-none-any.whl (96 kB)
Collecting requests<3,>=2.0.0
  Using cached requests-2.27.1-py2.py3-none-any.whl (63 kB)
Collecting GitPython>=1.0.0
  Using cached GitPython-3.1.27-py3-none-any.whl (181 kB)
Collecting shortuuid>=0.5.0
  Using cached shortuuid-1.0.9-py3-none-any.whl (9.4 kB)
Collecting python-dateutil>=2.6.1
  Using cached python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
Collecting subprocess32>=3.5.3
  Using cached subprocess32-3.5.4.tar.gz (97 kB)
  Preparing metadata (setup.py) ... done
Collecting configparser>=3.8.1
  Using cached configparser-5.2.0-py3-none-any.whl (19 kB)
Collecting protobuf>=3.12.0
  Using cached protobuf-4.21.1-cp37-abi3-manylinux2014_x86_64.whl (407 kB)
Collecting PyYAML
  Using cached PyYAML-6.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (682 kB)
Collecting promise<3,>=2.0
  Using cached promise-2.3.tar.gz (19 kB)
  Preparing metadata (setup.py) ... done
Collecting docker-pycreds>=0.4.0
  Using cached docker_pycreds-0.4.0-py2.py3-none-any.whl (9.0 kB)
Collecting pathtools
  Using cached pathtools-0.1.2.tar.gz (11 kB)
  Preparing metadata (setup.py) ... done
Collecting psutil>=5.0.0
  Using cached psutil-5.9.1-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (282 kB)
Collecting sentry-sdk>=0.4.0
  Using cached sentry_sdk-1.5.12-py2.py3-none-any.whl (145 kB)
Requirement already satisfied: tqdm in /home/toby/.local/lib/python3.10/site-packages (from best-download==0.0.9->lm_eval==0.2.0->-r requirements/requirements.txt (line 5)) (4.64.0)
Collecting rehash
  Using cached rehash-1.0.0-py2.py3-none-any.whl (8.7 kB)
Collecting xxhash
  Using cached xxhash-3.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (211 kB)
Collecting pyarrow!=4.0.0,>=1.0.0
  Using cached pyarrow-8.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (29.4 MB)
Collecting multiprocess
  Using cached multiprocess-0.70.13-py310-none-any.whl (133 kB)
Collecting aiohttp
  Using cached aiohttp-3.8.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (1.2 MB)
Collecting fsspec[http]>=2021.05.0
  Using cached fsspec-2022.5.0-py3-none-any.whl (140 kB)
Collecting dill
  Using cached dill-0.3.5.1-py2.py3-none-any.whl (95 kB)
Collecting pandas
  Using cached pandas-1.4.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.7 MB)
Collecting huggingface-hub<1.0.0,>=0.1.0
  Using cached huggingface_hub-0.7.0-py3-none-any.whl (86 kB)
Collecting packaging
  Using cached packaging-21.3-py3-none-any.whl (40 kB)
Collecting DyNet38
  Using cached dyNET38-2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.0 MB)
Collecting tcolorpy<1,>=0.0.5
  Using cached tcolorpy-0.1.2-py3-none-any.whl (7.9 kB)
Collecting tabledata<2,>=1.1.3
  Using cached tabledata-1.3.0-py3-none-any.whl (11 kB)
Collecting msgfy<1,>=0.1.0
  Using cached msgfy-0.2.0-py3-none-any.whl (4.3 kB)
Collecting mbstrdecoder<2,>=1.0.0
  Using cached mbstrdecoder-1.1.0-py3-none-any.whl (7.8 kB)
Requirement already satisfied: setuptools>=38.3.0 in /usr/lib/python3.10/site-packages (from pytablewriter==0.58.0->lm_eval==0.2.0->-r requirements/requirements.txt (line 5)) (62.3.2)
Collecting pathvalidate<3,>=2.3.0
  Using cached pathvalidate-2.5.0-py3-none-any.whl (19 kB)
Collecting DataProperty<2,>=0.50.0
  Using cached DataProperty-0.55.0-py3-none-any.whl (26 kB)
Collecting typepy[datetime]<2,>=1.1.1
  Using cached typepy-1.3.0-py3-none-any.whl (31 kB)
Collecting py>=1.8.2
  Using cached py-1.11.0-py2.py3-none-any.whl (98 kB)
Collecting iniconfig
  Using cached iniconfig-1.1.1-py2.py3-none-any.whl (5.0 kB)
Collecting pluggy<1.0.0a1,>=0.12
  Using cached pluggy-0.13.1-py2.py3-none-any.whl (18 kB)
Collecting attrs>=19.2.0
  Using cached attrs-21.4.0-py2.py3-none-any.whl (60 kB)
Collecting toml
  Using cached toml-0.10.2-py2.py3-none-any.whl (16 kB)
Collecting absl-py
  Using cached absl_py-1.1.0-py3-none-any.whl (123 kB)
Collecting nltk
  Using cached nltk-3.7-py3-none-any.whl (1.5 MB)
Collecting portalocker
  Using cached portalocker-2.4.0-py2.py3-none-any.whl (16 kB)
Collecting colorama
  Using cached colorama-0.4.4-py2.py3-none-any.whl (16 kB)
Collecting tensorboardX==1.8
  Using cached tensorboardX-1.8-py2.py3-none-any.whl (216 kB)
Collecting ninja
  Using cached ninja-1.10.2.3-py2.py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl (108 kB)
INFO: pip is looking at multiple versions of zstandard to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of tqdm-multiprocess to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of sqlitedict to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of sacrebleu to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of rouge-score to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of pytest to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of pytablewriter to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of pycountry to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of openai to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of numexpr to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of nagisa to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of mock to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of jsonlines to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of jieba to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of datasets to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of best-download to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of wandb to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of tokenizers to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of pybind11 to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of numpy to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of mpi4py to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of lm-eval to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of lm-dataformat to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of <Python from Requires-Python> to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of ftfy to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of einops to determine which version is compatible with other requirements. This could take a while.
ERROR: Could not find a version that satisfies the requirement triton==0.4.2 (from deepspeed) (from versions: 0.1, 0.1.1, 0.1.2, 0.1.3, 0.2.0, 0.2.1, 0.2.2, 0.2.3, 0.3.0)
ERROR: No matching distribution found for triton==0.4.2

To Reproduce
Steps to reproduce the behavior:

  1. git clone [email protected]:EleutherAI/gpt-neox.git
  2. pip install torch
  3. pip install -r requirements/requirements.txt
  4. Error happenes

Expected behavior
That the installation just works.

Environment (please complete the following information):

Neofetch output
                   -`                    [email protected] 
                  .o+`                   --------------- 
                 `ooo/                   OS: Arch Linux x86_64 
                `+oooo:                  Kernel: 5.18.1-arch1-1 
               `+oooooo:                 Uptime: 23 mins 
               -+oooooo+:                Packages: 1365 (pacman) 
             `/:-:++oooo+:               Shell: bash 5.1.16 
            `/++++/+++++++:              Terminal: /dev/pts/1 
           `/++++++++++++++:             CPU: Intel i9-9900KS (16) @ 5.000GHz 
          `/+++ooooooooooooo/`           GPU: NVIDIA GeForce RTX 3090 Ti 
         ./ooosssso++osssssso+`          Memory: 293MiB / 32011MiB 
        .oossssso-````/ossssss+`
       -osssssso.      :ssssssso.                                
      :osssssss/        osssso+++.                               
     /ossssssss/        +ssssooo/-
   `/ossssso+/:-        -:/+osssso+-
  `+sso+:-`                 `.-/+oso:
 `++:.                           `-/+/
 .`                                 `/
@tsndr tsndr added the bug Something isn't working label Jun 7, 2022
@tsndr tsndr changed the title No matching distribution found for triton==0.4.2 Unable to install dependencies: No matching distribution found for triton==0.4.2 Jun 7, 2022
@StellaAthena
Copy link
Member

This appears to be a recurring issue with Triton :(

I will leave this issue open for increased visibility until it is resolved, but please see the linked issue for updates + to report related issues.

@huey2531
Copy link
Contributor

huey2531 commented Jun 8, 2022

any workaround?

@huey2531
Copy link
Contributor

huey2531 commented Jun 8, 2022

ERROR: Could not find a version that satisfies the requirement triton==0.4.2 (from versions: 0.1, 0.1.1, 0.1.2, 0.1.3, 0.2.0, 0.2.1, 0.2.2, 0.2.3, 0.3.0)
ERROR: No matching distribution found for triton==0.4.2

@jdagdelen
Copy link

jdagdelen commented Jul 14, 2022

Have you all checked your python version is compatible with triton==0.4.2? Try installing python 3.9 first.

@pujari-rajkumar
Copy link

pujari-rajkumar commented Sep 6, 2022

Hi, is there any workaround/resolution to this issue? I am facing the same issue. I have python 3.10.4

@tonsOfStu
Copy link

There is no triton library above 0.3 for Python 3.10. Try Ubuntu 20.04 + Python 3.8, 3.9

@pujari-rajkumar
Copy link

Thank you, I switched to Python 3.8 and I could install the required version.

@StellaAthena
Copy link
Member

There is no triton library above 0.3 for Python 3.10. Try Ubuntu 20.04 + Python 3.8, 3.9

I'll update the README to specify that Python 3.8 or 3.9 is required (IIRC that part was written before Python 3.10 came out). It seems like this will close the issue?

@tonsOfStu
Copy link

Yes, this should work .. for now.
The latest triton releases do not have anything for Python 3.10 or for Windows (I tried that too).
I don't see anything being done for 3.10 on the new triton 2 as well.

@zeitsmatt
Copy link

zeitsmatt commented Jan 13, 2023

This error has resurfaced for me:
ERROR: Could not find a version that satisfies the requirement triton==0.4.2 (from deepspeed) (from versions: 2.0.0.dev20221030, 2.0.0.dev20221031, 2.0.0.dev20221101, 2.0.0.dev20221103, 2.0.0.dev20221105, 2.0.0.dev20221117, 2.0.0.dev20221120, 2.0.0.dev20221202).
ERROR: No matching distribution found for triton==0.4.2
Using miniconda and Ubuntu 22.04.1 LTS. Python version 3.10.8

@StellaAthena
Copy link
Member

@zeitsmatt I’m sorry, this is unfortunately out of our hands. We don’t maintain Triton and cannot get Triton to support Python 3.10 any quicker

@jabbera
Copy link

jabbera commented Jan 30, 2023

Looks like support is inbound:

image

@digits122
Copy link

digits122 commented Feb 12, 2023

I meet this same error, and solved this by changing my python version to 3.9, record here.

triton is currently not support python3.10, and not support windows, so we need to install python3.9 and linux. the current ubuntu22.04 version have python3.10 by default, to change this, firstly use deadsnakes ppa so that we can install python3.9 using apt, you may need this command:
add-apt-repository ppa:deadsnakes/ppa
apt-get install python3.9
then we use update-alternatives to change the python version between 3.9 and 3.10. there are tutorials try to google it. you may need these command when you meet python3.9 pip installation problems:
apt-get install python3.9-distutils
remember to upgrade pip to pip-23 when you begin to install any pip resources.
then with python3.9, we can install triton now. if you want to change back to python3.10 at any time, using this command:
update-alternatives --config python
we need to save python3.10 version because apt-get command runs well under python3.10, but may meet error when using python3.9, so whenever you are using apt-get to install anything, change back to python3.10, after that ,change to python3.9 for running.
if you meet the mpi4py problems in the following step of requirements installing, run this command (using apt-get under python3.10):
apt-get install python3.9-dev

this is the solution of mine.

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

9 participants