Your system has an unsupported version of sqlite3. Chroma requires sqlite3 >= 3.35.0

Hi

I just deployed the flask using python 3.10.0

But I got below error

Error: Your system has an unsupported version of sqlite3. Chroma requires sqlite3 >= 3.35.0

How to fix this error?

Looking forward to your quick response.

Thanks Regards
Yevhen

Hi,

It sounds the SQLite version is too low for “Chroma”. They have some suggestions on resolving SQLite issues in their docs: https://docs.trychroma.com/troubleshooting#sqlite

Alan

HI Alan

I saw their docs: 🔍 Troubleshooting | Chroma

But that is not any help for me. And they mentioned about django, but I am using flask for the back-end.

Can you let me know how to fix this error?

Thanks
Yevhen

I’m not a Python or Chroma expert, but the GitHub gist in their suggestion doesn’t seem to be limited to Django. It shows how to replace the sqlite3 included with Python with the version that’s in the pysqlite3-binary package. You would do the same wherever you initialize your SQLite DB

# first: pip install pysqlite3-binary
# then in settings.py:
# these three lines swap the stdlib sqlite3 lib with the pysqlite3 
package__import__('pysqlite3')
import sys
sys.modules['sqlite3'] = sys.modules.pop('pysqlite3')

As an aside, if you’re planning to use a SQLite DB on Render, be sure to provision a disk and keep the SQLite file on the disk mount path.

This is required as Render instances have an ephemeral filesystem, meaning any file written to the instance after it has booted will be lost when it next restarts (e.g. spun down if on free instance type, next deploy, manual restart, etc.).

Alan

I have the same issue, and I have very little linux competence, where can I find the settings.py?

Please use the chromadb version 0.3.29

3 Likes

Thanks, it worked!!! Big Thanks!!!

Hi, also need to note that, if you’re FastAPI user, then you need to pip install fastapi==0.85.1.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.