ModuleNotFoundError: No module named ‘rapidfuzz’

用户在参与 LangChain 的 “Use SecretStr for api_keys” 贡献任务时,按照项目指引设置开发环境并运行 poetry install 后,尝试运行测试或进行其他 Poetry 操作时触发了此错误。

ModuleNotFoundError: No module named 'rapidfuzz'

ModuleNotFoundError: No module named ‘rapidfuzz’

快速结论:该报错在通过 Poetry 安装 LangChain 开发依赖时出现,通常是因为 Poetry 自动移除了某些依赖包。优先排查方法是手动安装缺失包,如 rapidfuzz

问题场景

用户在参与 LangChain 的 “Use SecretStr for api_keys” 贡献任务时,按照项目指引设置开发环境并运行 poetry install 后,尝试运行测试或进行其他 Poetry 操作时触发了此错误。

报错原文

ModuleNotFoundError: No module named 'rapidfuzz'

原因分析

可能原因:Poetry 在安装依赖时自动移除了一些与当前环境或缓存冲突的包,导致 rapidfuzz 等依赖未被正确安装。这是 LangChain 开发环境 setup 过程中已知的依赖管理问题(参见 Issue #12237)。

环境排查

  • 确认是否在 langchain/libs/langchain 目录下运行 poetry install
  • 确认 Poetry 环境是否干净,无缓存的坏包。
  • 确认 Python 版本与项目要求的 Python 版本一致。

解决步骤

  1. 在终端中手动安装缺失的依赖包:
    python -m pip install rapidfuzz
    python -m pip install filelock
    python -m pip install msgpack
    python -m pip install build
    (根据 Issue 中社区成员报告的实际解决方案)
  2. 或者,尝试清除 Poetry 缓存后重新安装:poetry cache clear . --all 然后 poetry install

验证方法

运行任意测试命令(如 make test)或导入 LangChain 相关模块,检查是否不再出现 ModuleNotFoundError: No module named 'rapidfuzz' 报错。

参考来源

langchain-ai/langchain #12165(详见评论中关于依赖安装问题的讨论及解决方案)

GamsGo AI

AI 工具推荐

想把多个 AI 模型放在一个入口?

GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。

了解 GamsGo AI

推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。

celebrityanime
celebrityanime
文章: 9629

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注