You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Windows系统上为SpaCy启用CUDA GPU加速

在SpaCy中启用GPU加速解决en_core_web_trf模型CPU运行缓慢问题

SpaCy是一款实用的文本处理库,用来构建自定义模型做数据提取和处理很顺手。但我在用en_core_web_trf模型提取英文实体时,发现CPU运行速度慢到没法用,于是尝试用GPU来提升性能。

过程中踩了不少坑,毕竟GPU加速涉及NVIDIA驱动、CUDA、PyTorch和SpaCy的版本匹配问题,折腾几次后终于搞定,下面是亲测有效的配置步骤:

1. 确认GPU硬件与驱动

  • 必须是支持CUDA的NVIDIA显卡(算力≥3.5),安装对应版本的NVIDIA驱动,驱动版本要和后续安装的CUDA Toolkit兼容(可查NVIDIA官方文档确认适配关系)。

2. 安装匹配的CUDA Toolkit

  • 不要选最新版,要和PyTorch支持的版本对应。比如当前PyTorch稳定版支持CUDA 11.8或12.1,选好版本后安装,记得勾选“添加到系统环境变量”。

3. 安装适配的PyTorch

  • 根据你的CUDA版本,用官方推荐的命令安装。例如CUDA 11.8的安装命令:
    pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
    
  • 安装后验证:运行以下代码,返回True则说明PyTorch GPU配置正常:
    import torch
    print(torch.cuda.is_available())
    

4. 安装支持GPU的SpaCy组件

  • 先升级SpaCy到最新稳定版:
    pip install -U spacy
    
  • 安装spacy-transformers插件(Transformer模型依赖这个):
    pip install spacy-transformers
    
  • 下载en_core_web_trf模型:
    python -m spacy download en_core_web_trf
    

5. 代码中启用GPU加速

  • 加载模型前先启用GPU,示例代码如下:
    import spacy
    import torch
    
    # 启用GPU(如果可用)
    if torch.cuda.is_available():
        spacy.require_gpu()
        print("GPU加速已开启")
    else:
        print("未检测到GPU,将使用CPU")
    
    # 加载模型并处理文本
    nlp = spacy.load("en_core_web_trf")
    doc = nlp("Apple is looking to buy a U.K. startup for $1 billion")
    
    # 输出提取的实体
    for ent in doc.ents:
        print(f"{ent.text}: {ent.label_}")
    

这样配置后,en_core_web_trf的运行速度会有明显提升。

内容的提问来源于stack exchange,提问作者Anton

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 16:50:19