【问题标题】:Unable to install tokenizers in Mac M1无法在 Mac M1 中安装标记器
【发布时间】:2022-10-08 03:44:38
【问题描述】:

我在 Macbook Pro M1 Max 中安装了变压器

在此之后,我安装了标记器

pip install tokenizers

这显示了

收集标记器
使用缓存的分词器-0.12.1-cp39-cp39-macosx_12_0_arm64.whl
成功安装 tokenizers-0.12.1

似乎为 whl 文件使用了正确的体系结构

当我导入它时,我得到

'/Users/myname/miniforge3/envs/tf/lib/python3.9/site-packages/tokenizers/tokenizers.cpython-39-darwin.so'(mach-o 文件,但架构不兼容(有'x86_64' , 需要'arm64e'))

我看到这个问题曾经发生在其他人身上。关于如何解决这个问题的任何想法?

【问题讨论】:

    标签: python-3.x apple-m1 huggingface-tokenizers


    【解决方案1】:

    如果使用 Anaconda,我们切换到终端窗口并创建一个新的 ARM 环境,如下所示:

    CONDA_SUBDIR=osx-arm64 conda create -n ml python=3.9 -c conda-forge
    

    现在进入 ml 环境

    conda activate ml
    

    在环境中运行

    conda env config vars set CONDA_SUBDIR=osx-arm64
    

    需要重启环境

    conda deactivate
    

    进入环境

    conda activate ml
    

    PyTorch 安装首先,我们需要安装 PyTorch v1.12。目前,这仅作为夜间版本提供。

    pip3 install -U --pre torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/nightly/cpu
    

    旁注:transformers 库使用 Rust 内置的标记器(它使它们更快)。因为我们使用的是这个新的 ARM64 环境,所以我们可能会收到 ERROR: Failed building wheel for tokenizers。如果是这样,我们安装 Rust(在同一环境中):

    curl — proto ‘=https’ — tlsv1.2 -sSf https://sh.rustup.rs | sh
    

    重启你的环境

    conda deactivate 
    conda activate ml
    

    比你可以安装转换器附带标记器或只安装标记器

    pip install tokenizers or pip install transformer
    

    感谢詹姆斯布里格斯

    【讨论】:

    • 我试过这个,同样的问题
    • 尝试使用 conda install tokenizers
    【解决方案2】:

    詹姆斯布里格斯方法有效,但产生以下错误

    note: This error originates from a subprocess, and is likely not a problem with pip.
      ERROR: Failed building wheel for tokenizers
    Failed to build tokenizers
    ERROR: Could not build wheels for tokenizers, which is required to install pyproject.toml-based projects
    

    问题

    安装 Rust 和 Cargo 后,我们必须获取环境文件。这是上一个答案中缺少的步骤。

    解决方案

    解决此问题的解决方法是在安装 Rust 后立即在终端中键入以下内容:

    source "$HOME/.cargo/env"
    

    然后,您可以使用以下代码 sn-p 安装变压器:

    pip install transformers 
    

    【讨论】:

      【解决方案3】:

      你可以试试

      conda install -c huggingface transformers
      

      【讨论】:

        【解决方案4】:

        我也遇到了这个错误。经过大量的试验和错误后解决了。

        问题:我的 brew 仍在 Rosetta 上运行。通过卸载、清理和重新安装来解决这个问题。所以一切似乎都运行良好。除了这个问题仍然不断出现

        直到我发现 pip 在缓存方面非常激进。因此,即使架构发生变化,它也会缓存构建。解决方案:pip 缓存清除。或删除您使用 pip 缓存信息找到的整个缓存目录

        【讨论】:

          【解决方案5】:

          在测试了提供的大多数解决方案后,我终于通过做

          brew install ffmpeg

          sudo pip install tokenizers

          ?️?

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2021-09-15
            • 2021-09-20
            • 1970-01-01
            • 1970-01-01
            • 2022-01-09
            • 2021-10-28
            • 2021-07-25
            • 2021-11-01
            相关资源
            最近更新 更多