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

Enable Python 3.8 testing #747

Merged
merged 3 commits into from
Nov 18, 2023
Merged

Enable Python 3.8 testing #747

merged 3 commits into from
Nov 18, 2023

Conversation

carmocca
Copy link
Contributor

No description provided.

@carmocca carmocca self-assigned this Nov 17, 2023
@carmocca
Copy link
Contributor Author

I couldnt get this to work

@carmocca carmocca closed this Nov 17, 2023
@carmocca carmocca deleted the carmocca/38 branch November 17, 2023 22:55
@Andrei-Aksionov
Copy link
Collaborator

I couldnt get this to work

Because it's not possible.
As I stated in #632 Python 3.8 isn't supported by lm-eval.
It's possible to install packages by providing the latest supported by 3.8 packages in requirements-all.txt:

-r requirements.txt
bitsandbytes==0.41.0    # quantization
scipy~=1.10.1           # required by bitsandbytes
sentencepiece           # pythia, falcon, redpajama
tokenizers~=0.15.0      # llama-based models
datasets                # quantize/gptq.py
zstandard               # scripts/prepare_redpajama.py, scripts/prepare_starcoder.py
pandas~=2.0.3           # scripts/prepare_csv.py, scripts/prepare_starcoder.py
transformers~=4.35.2
pyarrow                 # scripts/prepare_starcoder.py
# eval
git+https://github.com/EleutherAI/lm-evaluation-harness.git@master
# scripts/prepare_slimpajama.py, scripts/prepare_starcoder.py, pretrain/tinyllama.py
lightning[data] @ git+https://github.com/Lightning-AI/lightning@532c723c8584903dc719458d0ad52861d51bc395

... but it doesn't matter as in the end you get the final error:

ERROR: Package 'lm-eval' requires a different Python: 3.8.18 not in '>=3.9'

@Andrei-Aksionov
Copy link
Collaborator

Don't know what is wrong with me, but when someone says that it's not possible, it triggers me, and I want to prove that it's indeed possible. In this case, I triggered myself 🙈.

So, yes, it's possible. But you have to provide --ignore-requires-python to force to install lm-eval and that argument requires fixing even more packages.
But at least it works: Andrei-Aksionov#1
Too hacky for my liking though.

@carmocca carmocca restored the carmocca/38 branch November 18, 2023 15:36
@carmocca carmocca reopened this Nov 18, 2023
@carmocca
Copy link
Contributor Author

Thank you @Andrei-Aksionov! I didn't know that lm eval is >=3.9. Pip is weird, it should mention this before going down the rabbit hole of trying different dependency combinations

@carmocca carmocca marked this pull request as ready for review November 18, 2023 16:04
@carmocca carmocca merged commit 05b041a into main Nov 18, 2023
9 checks passed
@carmocca carmocca deleted the carmocca/38 branch November 18, 2023 16:07
@Andrei-Aksionov
Copy link
Collaborator

Glad that I was helpful.

Your solution is much nicer, btw 👍

@Andrei-Aksionov
Copy link
Collaborator

A new twist: now lm-eval supports python 3.8 😆.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants