PaddleOCR 的安装过程,很多时候并不会一帆风顺。尤其是当你遇到 faiss-cpu 编译失败的错误时,别急着怀疑自己的环境配置——这个问题背后,其实有一个非常明确的“元凶”。

PaddleOCR 安装时因 faiss-cpu 编译失败报错,根本原因常为 Python 版本不兼容(如 3.11+),推荐降级至 Python 3.8–3.9 并使用 Conda 环境安装。

faiss-cpu 是 PaddleOCR 的可选依赖之一,通常在启用向量检索、图像相似度等功能时被间接引入。但问题在于,它的官方 PyPI 包仅提供预编译 wheel 文件至 Python 3.10,对 Python 3.11 及更高版本暂无官方支持。当你在 Python 3.11.5 环境中执行 pip install paddleclas(该包依赖 faiss-cpu)时,pip 会尝试从源码构建 wheel。而这个过程极易因为缺失 C++ 编译工具链、CUDA 配置冲突或 ABI 不匹配而失败,最终抛出类似这样的错误:

ERROR: Failed building wheel for faiss-cpu
Failed to build faiss-cpu
ERROR: Could not build wheels for faiss-cpu, which is required to install pyproject.toml-based projects

那么,怎么解决?其实有一个稳定可靠的操作路径。

推荐解决方案(稳定可靠)

  1. 创建独立的 Python 3.8/3.9 Conda 环境(强烈推荐):

    conda create -n paddle_env python=3.8
    conda activate paddle_env
  2. 按顺序安装核心依赖(避免版本冲突):

    pip install --upgrade pip
    pip install paddlepaddle      # CPU 版(如需 GPU,请替换为 paddlepaddle-gpu)
    pip install paddleocr
    pip install paddleclas        # 此时 faiss-cpu 将自动安装预编译 wheel(Python 3.8 兼容)

注意事项

说到底,PaddleOCR 生态对 Python 版本比较敏感。“降版本 + 换环境”是比“硬编译”更高效、更鲁棒的工程实践。优先选用 Conda 来管理 Python 3.8–3.9 环境,可以显著避开底层 C/C++ 扩展的兼容性问题。这也是不少资深开发者长期沿用的做法。

本文转载于:https://www.php.cn/faq/2314967.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。