无法安装TensorFlow:远程多用户环境下503错误的原因与解决方法
解决pip安装TensorFlow时的"too many 503 error responses"问题
我之前在多用户远程服务器上装TensorFlow时也碰到过一模一样的503错误,当时也纳闷自己没刷请求怎么会触发这个问题,后来排查下来发现不一定是你个人的请求过载,可能是下面这些原因:
可能的错误原因
- 远程机器的共用IP被标记:因为是多用户机器,可能其他用户之前频繁通过这个IP请求PyPI,导致PyPI的CDN把这个IP判定为异常流量,限制了访问
- PyPI节点临时故障:PyPI的全球镜像节点偶尔会有临时维护或过载情况,刚好你的请求命中了出问题的节点
- 旧版pip的重试机制缺陷:老版本的pip遇到几次503就直接终止请求,不会自动切换到其他可用节点
亲测有效的解决办法
- 切换国内PyPI镜像源:这是最快解决问题的方式,国内镜像源不仅速度快,稳定性也高。执行以下命令安装:
要是担心某个镜像同步不及时,还可以试试阿里云镜像:pip install tensorflow --user -i https://pypi.tuna.tsinghua.edu.cn/simplehttps://mirrors.aliyun.com/pypi/simple/ - 升级pip到最新版本:新版pip优化了重试逻辑和节点切换策略,先升级pip再安装TensorFlow:
pip install --upgrade pip --user -i https://pypi.tuna.tsinghua.edu.cn/simple - 增加重试次数与超时时间:如果不想换源,可以让pip多重试几次,同时延长超时时间,给服务器足够的响应时间:
pip install tensorflow --user --retries 10 --timeout 30 - 检查远程机器的网络限制:多用户机器可能有管理员设置的网络限速或PyPI访问规则,你可以先通过
curl https://pypi.org/simple/tensorflow/测试网络连通性,或者联系运维确认是否有相关限制
内容的提问来源于stack exchange,提问作者StatsSorceress
相关产品推荐
相关产品推荐

