运行asana-task-agent项目遇sentence_transformers依赖导入错误求助
问题原因分析及解决方案
核心原因
- LangChain模块拆分导致弃用警告:LangChain 0.2.2及以上版本将HuggingFace相关的嵌入类从核心包拆分到独立的
langchain-huggingface包中,原langchain.embeddings.HuggingFaceEmbeddings类被标记为弃用。 - 依赖版本不兼容引发导入错误:
cached_download方法在新版huggingface_hub中已被移除,但当前使用的sentence_transformers版本仍依赖该方法,直接导致导入失败。
分步解决方案
1. 修复LangChain弃用警告
- 安装独立的
langchain-huggingface包:pip install langchain-huggingface - 修改代码中的导入语句:
将原代码里的
替换为from langchain.embeddings import HuggingFaceEmbeddingsfrom langchain_huggingface import HuggingFaceEmbeddings
2. 解决依赖版本冲突
- 卸载当前冲突的依赖包:
pip uninstall huggingface_hub sentence_transformers -y - 安装经过验证的兼容版本组合:
注:该版本组合可确保pip install huggingface_hub==0.23.0 sentence_transformers==2.2.2sentence_transformers能正常调用huggingface_hub中的对应方法
3. 验证并重启服务
- 激活Windows虚拟环境后,执行
pip list确认上述包的版本是否符合要求。 - 重新运行streamlit服务:
streamlit run rag-task-agent.py
内容的提问来源于stack exchange,提问作者Karol
相关产品推荐
相关产品推荐

