You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

MacOS M2芯片设备编译llama-cpp-python时出现'ggml-common.h'未找到错误

MacOS M2芯片设备编译llama-cpp-python时出现'ggml-common.h'未找到错误

嘿,我之前在M2 Mac上折腾llama-cpp-python的时候也碰到过一模一样的问题!这个错误本质是编译过程中没正确拉取ggml的依赖文件,给你几个亲测有效的解决办法:

  • 彻底重装并开启Metal加速
    先把现有版本清干净,再强制从源码编译,确保拉取完整依赖:

    # 卸载现有版本
    pip uninstall -y llama-cpp-python
    # 强制编译并开启Metal支持(M2必备)
    CMAKE_ARGS="-DLLAMA_METAL=on" FORCE_CMAKE=1 pip install llama-cpp-python --no-cache-dir --force-reinstall
    

    这里FORCE_CMAKE=1会让系统重新生成CMake配置,--no-cache-dir避免用旧的缓存文件,-DLLAMA_METAL=on能激活M2的GPU加速,同时安装时会自动拉取ggml的子模块,解决头文件缺失的问题。

  • 手动拉取ggml子模块(源码安装场景)
    如果是直接克隆了llama-cpp-python的源码仓库,先进入项目目录,手动更新子模块:

    git submodule update --init --recursive
    

    然后再编译安装:

    CMAKE_ARGS="-DLLAMA_METAL=on" pip install .
    
  • 更新CMake版本
    旧版本的CMake可能在处理M2的编译配置或子模块拉取时出问题,用Homebrew更新到最新版:

    brew install cmake
    

    确保CMake版本在3.24以上,再重新尝试安装。

另外给你个小优化建议:你的代码里n_gpu_layers设为1有点保守,M2芯片可以尝试调到30-35左右(根据模型大小调整),n_batch可以设为512,这样能大幅提升推理速度哦!

备注:内容来源于stack exchange,提问作者Alberto

火山引擎 最新活动