chroma-core / chroma

the AI-native open-source embedding database
https://www.trychroma.com/
Apache License 2.0
13.4k stars 1.14k forks source link

[BUG] Chroma crash with the new tenacity version - update requirement… #2356

Closed itayB closed 1 week ago

itayB commented 2 weeks ago

…s.txt

    import chromadb
/opt/hostedtoolcache/Python/3.12.3/x64/lib/python3.12/site-packages/chromadb/__init__.py:3: in <module>
    from chromadb.api.client import Client as ClientCreator
/opt/hostedtoolcache/Python/3.12.3/x64/lib/python3.12/site-packages/chromadb/api/__init__.py:7: in <module>
    from chromadb.api.models.Collection import Collection
/opt/hostedtoolcache/Python/3.12.3/x64/lib/python3.12/site-packages/chromadb/api/models/Collection.py:7: in <module>
    import chromadb.utils.embedding_functions as ef
/opt/hostedtoolcache/Python/3.12.3/x64/lib/python3.12/site-packages/chromadb/utils/embedding_functions.py:5: in <module>
    from tenacity import stop_after_attempt, wait_random, retry, retry_if_exception
/opt/hostedtoolcache/Python/3.12.3/x64/lib/python3.12/site-packages/tenacity/__init__.py:653: in <module>
    from tenacity.asyncio import AsyncRetrying  # noqa:E402,I100
E   ModuleNotFoundError: No module named 'tenacity.asyncio'

Description of changes

Summarize the changes made by this PR.

Test plan

How are these changes tested?

Documentation Changes

Are all docstrings for user-facing APIs updated if required? Do we need to make documentation changes in the docs repository?

github-actions[bot] commented 2 weeks ago

Reviewer Checklist

Please leverage this checklist to ensure your code review is thorough before approving

Testing, Bugs, Errors, Logs, Documentation

atroyn commented 2 weeks ago

I notice that the import error here is from opt/hostedtoolcache/ - could this be a caching error unrelated to Chroma?

itayB commented 2 weeks ago

I notice that the import error here is from opt/hostedtoolcache/ - could this be a caching error unrelated to Chroma?

Chroma is using tenacity here: https://github.com/chroma-core/chroma/blob/main/chromadb/utils/embedding_functions.py#L5

The reason why you didn't see it - is because they already released another (fix) version: image

atroyn commented 1 week ago

Good catch. I have the feeling that since so many modules are numpy dependent, we might have to freeze versions for the whole package to avoid a cascade of failures for our users.

If this happens a third time in the next 48 hours, I'll take a pass at that myself.

atroyn commented 1 week ago

Sorry, my fault for putting the wrong title prefix on the PR!

HammadB commented 1 week ago

I think this may no longer be required with the 8.4.1 release. I think tenacity 8.4.0 was just a botched release.

HammadB commented 1 week ago

Confirmed 8.4.1 works - I am going to close this out but please let me know if I am doing to incorrectly @itayB