Python環境でのインストール方法(pip / conda)

前提条件

  • Python 3.9 以上(PyPI 版 1.11.0 が公式に対応)

  • CPU 版は Linux/macOS/Windows に公式ホイールあり。

  • GPU 版は Linux x86-64 限定。CUDA ドライバ・ツールキットのバージョン整合が必須。

  • 公式推奨は conda 経由の導入 – 特に GPU 版は依存解決が容易です。faiss.ai


1. pip でのインストール

目的 推奨コマンド 備考
CPU 版 pip install faiss-cpu PyPI 公式ホイール。2025 年 4 月公開の v1.11.0 まで確認済み。pypi.org
GPU 版(CUDA 12.x) pip install faiss-gpu-cu12[fix_cuda] サードパーティ製ホイール。CUDA ランタイム & cuBLAS を動的リンクで同時導入。Linux x86-64 のみ。pypi.org
GPU 版(CUDA 11.8) pip install faiss-gpu-cu11[fix_cuda] 同上(CUDA 11 系)。pypi.org

ポイント

  1. 公式 PyPI パッケージは CPU のみ(v1.7.3 以降 GPU ホイール廃止)。GPU が必要な場合は

    • サードパーティ製ホイール(faiss-gpu-cuXX

    • あるいは ソースからビルドpip install --no-binary :all: faiss-cpu + FAISS_ENABLE_GPU=ON 環境変数)
      を選択します。pypi.org

  2. Linux 以外で GPU を使う場合はビルド必須です(Windows/macOS 公式サポートなし)。

  3. インストール後の動作確認:

bash
python - <<'PY' import faiss, platform, sys print("Faiss", faiss.__version__, "on", platform.system(), "with Python", sys.version.split()[0]) try: res = faiss.StandardGpuResources() print("GPU resources initialised – CUDA build OK") except Exception as e: print("GPU not available:", e) PY

2. conda でのインストール

目的 推奨コマンド 説明
CPU 版(公式推奨) conda install -c pytorch faiss-cpu 依存する BLAS を自動解決。faiss.ai
GPU 版 conda install -c pytorch faiss-gpu cudatoolkit=12.1 パッケージ内部で FAISS + 対応版 CUDA をバンドル。anaconda.org
コンダフォージ派生 conda install -c conda-forge faiss CPU ビルドのみ(v1.9.0 など)。anaconda.org

推奨ワークフロー

bash
# 例:GPU 版(CUDA 12.1)専用環境 conda create -n faiss_gpu python=3.11 conda activate faiss_gpu conda install -c pytorch faiss-gpu cudatoolkit=12.1
  • CPU↔GPU を同一環境に共存させない
    faiss-gpufaiss-cpu の上位互換です。どちらか一方だけインストールしてください。faiss.ai

  • 複数 GPU/異なる CUDA バージョンを扱う場合は環境を分けるとトラブルを避けられます。


3. よくある問題と対策

現象 主な原因 解決策
GLIBCXX などのシンボルが見つからない 古い GNU C++ ランタイム conda update libstdcxx-ng または OS パッケージ更新
libopenblas.so が見つからない BLAS/LAPACK が未リンク conda 版なら自動解決。pip 版は OS パッケージ(libopenblas-dev 等)を導入
No module named faiss 仮想環境切替忘れ/パッケージ衝突 `pip list
GPU 初期化エラー ドライバ≠CUDA ランタイムのバージョン不一致 nvidia-sminvcc --version を確認し同一メジャーに揃える

4. まとめ

  • 手軽さ重視:CPU 版なら pip install faiss-cpu、GPU 版も含め依存を丸ごと解決したいなら conda が安全。

  • 最新機能 + GPUconda install -c pytorch faiss-gpu(CUDA 11/12 系を指定)。

  • 細かいビルドオプションや macOS/Windows GPU:ソースビルド一択。

これで Python 環境への FAISS の導入は完了です。開発プロジェクトに組み込む前に、必ず簡単な検索テストを行い、CPU/GPU のどちらで動作しているかを確認してください。

ChatGPT4o 生成日:2025/06/18