You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python虚拟环境中Chroma依赖的sqlite3版本无法更新求助

解决sqlite3版本过低导致Chroma无法导入的问题

核心原因

Python 3.10默认绑定的sqlite3版本可能低于3.35.0,安装pysqlite3-binary后需要显式替换系统默认的sqlite3模块,否则Python仍会调用内置的旧版本。

具体解决步骤

1. 确认pysqlite3-binary已正确安装

先执行升级命令确保包是最新版本:

pip install pysqlite3-binary --upgrade

2. 在代码开头强制替换sqlite3模块

在导入Chroma的代码前,添加以下代码片段,强制让Python使用pysqlite3-binary提供的高版本sqlite3:

__import__('pysqlite3')
import sys
sys.modules['sqlite3'] = sys.modules.pop('pysqlite3')

# 之后正常导入Chroma
from langchain_chroma import Chroma

3. 验证替换是否生效

可以单独运行以下代码检查sqlite3版本:

__import__('pysqlite3')
import sys
sys.modules['sqlite3'] = sys.modules.pop('pysqlite3')
import sqlite3
print(sqlite3.sqlite_version)

如果输出版本≥3.35.0,说明替换成功,再导入Chroma就不会触发报错。

4. 排查环境差异(若上述方法无效)

  • 检查团队成员的Python安装方式:conda自带的sqlite3版本通常更高,若你使用的是官方Python安装包,可尝试切换到conda环境,或重新编译Python时链接高版本sqlite3。
  • 重建虚拟环境排除干扰:删除现有虚拟环境,重新创建并安装依赖,避免全局包的影响:
rm -rf venv  # 替换为你的虚拟环境目录名
python -m venv venv
source venv/bin/activate  # Windows系统执行 venv\Scripts\activate
pip install -r requirements.txt

内容的提问来源于stack exchange,提问作者Kian Bagherlee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 22:17:02