Retrieval-based-Voice-Conversion-WebUI icon indicating copy to clipboard operation
Retrieval-based-Voice-Conversion-WebUI copied to clipboard

M1 Mac无法安装faiss-cpu

Open zangxx66 opened this issue 9 months ago • 3 comments

Python版本3.12
macOS版本15.3.2

pip安装1.7.3版本fass-cpu报错

pip install faiss-cpu==1.7.3
Collecting faiss-cpu==1.7.3
  Using cached faiss-cpu-1.7.3.tar.gz (48 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: faiss-cpu
  Building wheel for faiss-cpu (pyproject.toml) ... error
  error: subprocess-exited-with-error
  
  × Building wheel for faiss-cpu (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [101 lines of output]
      /private/var/folders/mb/22p59dnd3ygd5ds4whcprqtr0000gn/T/pip-build-env-9smg17cq/overlay/lib/python3.12/site-packages/setuptools/dist.py:760: SetuptoolsDeprecationWarning: License classifiers are deprecated.
      !!
      
              ********************************************************************************
              Please consider removing the following classifiers in favor of a SPDX license expression:
      
              License :: OSI Approved :: MIT License
      
              See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details.
              ********************************************************************************
      
      !!
        self._finalize_license_expression()
      running bdist_wheel
      running build
      running build_py
      running build_ext
      building 'faiss._swigfaiss' extension
      swigging faiss/faiss/python/swigfaiss.i to faiss/faiss/python/swigfaiss_wrap.cpp
      swig -python -c++ -Doverride= -I/usr/local/include -Ifaiss -doxygen -module swigfaiss -o faiss/faiss/python/swigfaiss_wrap.cpp faiss/faiss/python/swigfaiss.i
      faiss/faiss/python/swigfaiss.i:263: Error: Unable to find 'faiss/impl/platform_macros.h'
      faiss/faiss/python/swigfaiss.i:267: Error: Unable to find 'faiss/utils/ordered_key_value.h'
      faiss/faiss/python/swigfaiss.i:268: Error: Unable to find 'faiss/utils/Heap.h'
      faiss/faiss/python/swigfaiss.i:273: Error: Unable to find 'faiss/utils/AlignedTable.h'
      faiss/faiss/python/swigfaiss.i:274: Error: Unable to find 'faiss/utils/partitioning.h'
      faiss/faiss/python/swigfaiss.i:275: Error: Unable to find 'faiss/utils/hamming.h'
      faiss/faiss/python/swigfaiss.i:380: Error: Unable to find 'faiss/utils/utils.h'
      faiss/faiss/python/swigfaiss.i:381: Error: Unable to find 'faiss/utils/distances.h'
      faiss/faiss/python/swigfaiss.i:382: Error: Unable to find 'faiss/utils/random.h'
      faiss/faiss/python/swigfaiss.i:384: Error: Unable to find 'faiss/MetricType.h'
      faiss/faiss/python/swigfaiss.i:387: Error: Unable to find 'faiss/Index.h'
      faiss/faiss/python/swigfaiss.i:389: Error: Unable to find 'faiss/impl/DistanceComputer.h'
      faiss/faiss/python/swigfaiss.i:392: Error: Unable to find 'faiss/IndexFlatCodes.h'
      faiss/faiss/python/swigfaiss.i:393: Error: Unable to find 'faiss/IndexFlat.h'
      faiss/faiss/python/swigfaiss.i:394: Error: Unable to find 'faiss/Clustering.h'
      faiss/faiss/python/swigfaiss.i:396: Error: Unable to find 'faiss/utils/extra_distances.h'
      faiss/faiss/python/swigfaiss.i:400: Error: Unable to find 'faiss/impl/Quantizer.h'
      faiss/faiss/python/swigfaiss.i:401: Error: Unable to find 'faiss/impl/ProductQuantizer.h'
      faiss/faiss/python/swigfaiss.i:402: Error: Unable to find 'faiss/impl/AdditiveQuantizer.h'
      faiss/faiss/python/swigfaiss.i:403: Error: Unable to find 'faiss/impl/ResidualQuantizer.h'
      faiss/faiss/python/swigfaiss.i:404: Error: Unable to find 'faiss/impl/LocalSearchQuantizer.h'
      faiss/faiss/python/swigfaiss.i:405: Error: Unable to find 'faiss/impl/ProductAdditiveQuantizer.h'
      faiss/faiss/python/swigfaiss.i:407: Error: Unable to find 'faiss/VectorTransform.h'
      faiss/faiss/python/swigfaiss.i:408: Error: Unable to find 'faiss/IndexPreTransform.h'
      faiss/faiss/python/swigfaiss.i:409: Error: Unable to find 'faiss/IndexRefine.h'
      faiss/faiss/python/swigfaiss.i:410: Error: Unable to find 'faiss/IndexLSH.h'
      faiss/faiss/python/swigfaiss.i:411: Error: Unable to find 'faiss/impl/PolysemousTraining.h'
      faiss/faiss/python/swigfaiss.i:412: Error: Unable to find 'faiss/IndexPQ.h'
      faiss/faiss/python/swigfaiss.i:413: Error: Unable to find 'faiss/IndexAdditiveQuantizer.h'
      faiss/faiss/python/swigfaiss.i:414: Error: Unable to find 'faiss/impl/io.h'
      faiss/faiss/python/swigfaiss.i:416: Error: Unable to find 'faiss/invlists/InvertedLists.h'
      faiss/faiss/python/swigfaiss.i:417: Error: Unable to find 'faiss/invlists/InvertedListsIOHook.h'
      faiss/faiss/python/swigfaiss.i:419: Error: Unable to find 'faiss/invlists/BlockInvertedLists.h'
      faiss/faiss/python/swigfaiss.i:420: Error: Unable to find 'faiss/invlists/DirectMap.h'
      faiss/faiss/python/swigfaiss.i:421: Error: Unable to find 'faiss/IndexIVF.h'
      faiss/faiss/python/swigfaiss.i:426: Error: Unable to find 'faiss/IVFlib.h'
      faiss/faiss/python/swigfaiss.i:427: Error: Unable to find 'faiss/impl/ScalarQuantizer.h'
      faiss/faiss/python/swigfaiss.i:428: Error: Unable to find 'faiss/IndexScalarQuantizer.h'
      faiss/faiss/python/swigfaiss.i:429: Error: Unable to find 'faiss/IndexIVFSpectralHash.h'
      faiss/faiss/python/swigfaiss.i:430: Error: Unable to find 'faiss/IndexIVFAdditiveQuantizer.h'
      faiss/faiss/python/swigfaiss.i:431: Error: Unable to find 'faiss/impl/HNSW.h'
      faiss/faiss/python/swigfaiss.i:432: Error: Unable to find 'faiss/IndexHNSW.h'
      faiss/faiss/python/swigfaiss.i:434: Error: Unable to find 'faiss/impl/kmeans1d.h'
      faiss/faiss/python/swigfaiss.i:437: Error: Unable to find 'faiss/impl/NNDescent.h'
      faiss/faiss/python/swigfaiss.i:438: Error: Unable to find 'faiss/IndexNNDescent.h'
      faiss/faiss/python/swigfaiss.i:440: Error: Unable to find 'faiss/IndexIVFFlat.h'
      faiss/faiss/python/swigfaiss.i:441: Error: Unable to find 'faiss/impl/NSG.h'
      faiss/faiss/python/swigfaiss.i:442: Error: Unable to find 'faiss/IndexNSG.h'
      faiss/faiss/python/swigfaiss.i:447: Error: Unable to find 'faiss/invlists/OnDiskInvertedLists.h'
      faiss/faiss/python/swigfaiss.i:450: Error: Unable to find 'faiss/impl/lattice_Zn.h'
      faiss/faiss/python/swigfaiss.i:451: Error: Unable to find 'faiss/IndexLattice.h'
      faiss/faiss/python/swigfaiss.i:454: Error: Unable to find 'faiss/IndexIVFPQ.h'
      faiss/faiss/python/swigfaiss.i:455: Error: Unable to find 'faiss/IndexIVFPQR.h'
      faiss/faiss/python/swigfaiss.i:456: Error: Unable to find 'faiss/Index2Layer.h'
      faiss/faiss/python/swigfaiss.i:458: Error: Unable to find 'faiss/IndexFastScan.h'
      faiss/faiss/python/swigfaiss.i:459: Error: Unable to find 'faiss/IndexAdditiveQuantizerFastScan.h'
      faiss/faiss/python/swigfaiss.i:460: Error: Unable to find 'faiss/IndexPQFastScan.h'
      faiss/faiss/python/swigfaiss.i:461: Error: Unable to find 'faiss/IndexIVFFastScan.h'
      faiss/faiss/python/swigfaiss.i:462: Error: Unable to find 'faiss/IndexIVFAdditiveQuantizerFastScan.h'
      faiss/faiss/python/swigfaiss.i:463: Error: Unable to find 'faiss/IndexIVFPQFastScan.h'
      faiss/faiss/python/swigfaiss.i:464: Error: Unable to find 'faiss/utils/quantize_lut.h'
      faiss/faiss/python/swigfaiss.i:466: Error: Unable to find 'faiss/IndexBinary.h'
      faiss/faiss/python/swigfaiss.i:467: Error: Unable to find 'faiss/IndexBinaryFlat.h'
      faiss/faiss/python/swigfaiss.i:468: Error: Unable to find 'faiss/IndexBinaryIVF.h'
      faiss/faiss/python/swigfaiss.i:469: Error: Unable to find 'faiss/IndexBinaryFromFloat.h'
      faiss/faiss/python/swigfaiss.i:470: Error: Unable to find 'faiss/IndexBinaryHNSW.h'
      faiss/faiss/python/swigfaiss.i:471: Error: Unable to find 'faiss/IndexBinaryHash.h'
      faiss/faiss/python/swigfaiss.i:473: Error: Unable to find 'faiss/impl/ThreadedIndex.h'
      faiss/faiss/python/swigfaiss.i:477: Error: Unable to find 'faiss/IndexShards.h'
      faiss/faiss/python/swigfaiss.i:481: Error: Unable to find 'faiss/IndexReplicas.h'
      faiss/faiss/python/swigfaiss.i:485: Error: Unable to find 'faiss/MetaIndexes.h'
      faiss/faiss/python/swigfaiss.i:486: Error: Unable to find 'faiss/IndexIDMap.h'
      faiss/faiss/python/swigfaiss.i:492: Error: Unable to find 'faiss/IndexRowwiseMinMax.h'
      faiss/faiss/python/swigfaiss.i:502: Error: Unable to find 'faiss/impl/AuxIndexStructures.h'
      faiss/faiss/python/swigfaiss.i:503: Error: Unable to find 'faiss/impl/IDSelector.h'
      faiss/faiss/python/swigfaiss.i:739: Error: Unable to find 'faiss/index_io.h'
      faiss/faiss/python/swigfaiss.i:740: Error: Unable to find 'faiss/clone_index.h'
      faiss/faiss/python/swigfaiss.i:744: Error: Unable to find 'faiss/AutoTune.h'
      faiss/faiss/python/swigfaiss.i:745: Error: Unable to find 'faiss/index_factory.h'
      faiss/faiss/python/swigfaiss.i:746: Error: Unable to find 'faiss/MatrixStats.h'
      error: command '/opt/anaconda3/bin/swig' failed with exit code 1
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for faiss-cpu
Failed to build faiss-cpu
ERROR: Failed to build installable wheels for some pyproject.toml based projects (faiss-cpu)

用conda安装faiss-cpu可以安装成功,但是Python里面识别不到,还是会提示 ModuleNotFoundError: No module named 'faiss'

zangxx66 avatar Mar 22 '25 14:03 zangxx66

我也遇到这个问题,请问楼主解决了吗最后

yimi2233 avatar Apr 16 '25 06:04 yimi2233

这边用brew装的python3,按照教程吧python加进PATH里面了。然后同样用brew装了faiss之后,,也是一样的报错。

XiLaoTr avatar Apr 18 '25 18:04 XiLaoTr

我也遇到这个问题,请问楼主解决了吗最后

用pyenv切换到3.10版本,但是无法训练和推理,不确定是不是arm的问题,用虚拟机装windows也一样的报错

zangxx66 avatar Apr 18 '25 19:04 zangxx66