AWS t3-large实例安装TTS依赖Spacy失败求助
解决AWS Windows实例安装Spacy编译Wheel失败的问题
问题根源
你碰到的cpdef编译错误,核心原因是Spacy 3.0.6和当前环境的Cython版本不兼容。新版本Cython收紧了语法规则,而旧版Spacy的代码还在使用已被废弃的cpdef声明变量的写法,和SDK版本、t3-large实例性能无关。
修复步骤
锁定兼容的Cython版本
先卸载现有Cython,安装适配Spacy 3.0.6的旧版本:pip uninstall -y cython pip install cython==0.29.28直接安装预编译Wheel包
跳过源码编译环节,让pip自动拉取适配Windows和Python 3.10的预编译包:pip install spacy==3.0.6 --only-binary :all:同步本地依赖版本
将本地测试通过的requirements.txt复制到AWS实例,执行以下命令批量安装,确保依赖版本一致:pip install -r requirements.txt --only-binary :all:验证安装有效性
安装完成后,运行以下代码确认Spacy可正常使用:import spacy nlp = spacy.load("en_core_web_sm") print(nlp("Hello World"))
额外提示
- 不用盲目降级Python,Python 3.11在Windows上的预编译包支持已很成熟,先核对项目依赖的版本兼容性;
- 若必须从源码编译,建议安装Windows 10 SDK(部分旧Python包对Windows 11 SDK兼容性不佳),安装C++ Build Tools时勾选“C++ MFC for latest v143 build tools”组件。
内容的提问来源于stack exchange,提问作者Tobi
相关产品推荐
相关产品推荐

