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

Transformer Grammars编译报错:install_requires格式异常求助

解决Transformer Grammars安装时setup.py依赖解析错误

问题概述

在Google Cloud N1深度学习VM(TensorFlow 2.10、CUDA 11.3、Python 3.7)环境下,执行Transformer Grammars项目的install.sh脚本时,触发setup.py报错:

'install_requires'必须是包含有效项目/版本要求说明符的字符串或字符串列表;解析错误在"''"处

问题源于setup.py读取requirements.txt生成的dependencies变量包含无效转义字符\',同时requirements.txt底部存在setuptools版本未固定的警告。已尝试升级pip、调整setuptools版本、联系官方人员但未解决。

修复方案

1. 修正setup.py的依赖读取逻辑

打开项目根目录的setup.py,找到读取requirements.txt的代码块,替换为以下代码以移除转义单引号:

with open('requirements.txt') as f:
    dependencies = []
    for line in f:
        line = line.strip()
        if line and not line.startswith('#'):
            # 清理转义字符和多余引号
            cleaned_line = line.replace("\\'", "'").strip("'")
            dependencies.append(cleaned_line)

2. 手动指定install_requires依赖列表

如果上述修改无效,直接在setup.py中替换install_requires=dependencies为明确的依赖项(从requirements.txt提取有效条目,去掉注释和警告行):

install_requires=[
    'absl-py>=0.13.0',
    'tensorflow>=2.10.0',
    'numpy>=1.21.0',
    # 补充其他项目依赖
]

3. 锁定兼容的setuptools版本

针对Python 3.7和TensorFlow 2.10,锁定setuptools到兼容版本后重试:

pip install setuptools==58.1.0
pip install --upgrade pip
bash install.sh

4. 清理缓存并重建虚拟环境

彻底清理依赖缓存,重建干净的虚拟环境后安装:

pip cache purge
rm -rf venv/
python -m venv venv
source venv/bin/activate
pip install --upgrade pip setuptools==58.1.0
bash install.sh

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 15:12:42