-
Notifications
You must be signed in to change notification settings - Fork 398
fix: tool.setuptools.packages.find exclude -> include #2618
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
Conversation
I am not sure what this PR attempts to solve? What is the current problem? |
I want to say that when mteb is installed, it also installs docs, scripts, and tests into site-packages. These file names are almost used in every project, so installing them in site-packages can cause conflicts. But it seems your CI also relies on installing these files in site-packages. I'll find a way to fix this as much as possible. |
I think this failing tests should be refactored to not rely on scripts folder |
I will continue this work next week |
I've created PR, that should solve your problems #2630 |
cool |
@noooop Can you provide example project that would have conflict? Does your PR related to your vllm PR? vllm-project/vllm#17175 |
Yes, installing mteb docs folder to site-packages conflicts with vllm docs build. https://buildkite.com/vllm/ci/builds/19106#01968b1f-8e60-4e8c-9460-9cdcd5894576 After deleting the docs folder in site-packages, vllm docs build can be executed correctly. https://buildkite.com/vllm/ci/builds/19136#01968c34-76dc-4866-9f0b-6de0faa39559 Of course, the conditions that triggered this conflict were quite dramatic. First, vllm docs build uses requirements/docs.txt, while mteb prepares to install using requirements/test.txt. Docs build should not encounter mteb. However, since vllm docs build use dev docker, two dependencies were installed. https://github.com/vllm-project/vllm/blob/main/.buildkite/test-pipeline.yaml#L39
Secondly, vllm docs build does not use the root directory as the working directory, rather than through adding the root directory to sys.path,
Just like that the root directory has lower priority than docs in site-packages. |
By the way, mteb used an old datasets dependency (datasets>=2.19.0,<3.0.0), while vllm current testing relies on using datasets==3.0.2, I don't know if downgrading to datasets==2.19.0 (this will leads to more dependence downgrading)will have potential issues. |
We have fixed it, but in a different branch. I've updated it #2661 |
It seems that the ci issue has been fixed. What should I do to merge this PR? |
I think you should wait to @KennethEnevoldsen review |
ok |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good - I will let @Samoed merge
Hm. Tried to run on colab and got error
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Now it's working
@Samoed just pinging you here |
@KennethEnevoldsen I've made some changes and added comment to have your thoughts #2618 (comment) also it seems that documentation is not building I'll try to check why |
I think I've fixed problem with documentation. UPD No, I haven't UPD2 Seems that folders without |
It should be working now |
thanks for @Samoed 's help |
when mteb is installed, it also installs docs, scripts, and tests into site-packages.
These file names are almost used in every project, so installing them in site-packages can cause conflicts.
chang to include = ["mteb*"], limiting the installation to only the mteb folder.
Current situation
proposal
Code Quality
make lint
to maintain consistent style.Documentation
Testing
make test-with-coverage
.make test
ormake test-with-coverage
to ensure no existing functionality is broken.Adding datasets checklist
Reason for dataset addition: ...
mteb -m {model_name} -t {task_name}
command.sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2
intfloat/multilingual-e5-small
self.stratified_subsampling() under dataset_transform()
make test
.make lint
.Adding a model checklist
mteb.get_model(model_name, revision)
andmteb.get_model_meta(model_name, revision)