2021-11 ​​如何安装GPU版本的ML框架、而且是多版本共存的那种,两种方法​​

2022-05-19更新:解决无法定位程序输入点xxxx位于动态链接库xxxxx…pythoncom38.dll的问题

场景:anaconda中启动jupyter的时候报错

具体报错如下:

已解决:conda常见报错以及解决方法【持续更新conda的其它报错以及解决方法。】_windows10


解决方法:

下载下面这个链接中的文件,放入到目录:​​C:\Windows\System32​​​ 、​​C:\Users\chenruhai\anaconda3\Library\bin​​​ 、还有你的虚拟环境的​​\Library\bin​​中。

一、2021.08.27跟新:如何让电脑上的anaconda稳如老🐕

目前为止还没遇到新问题,但是遇到问题还会继续更新。

此外。安利一下如果让自己的Anaconda用的更久一点:

  • 在使用conda命令或者使用anaconda的GUI界面的时候 ,如果在操作中不到万不得已的时候不要强制退出(比如在更新库的时候点击打插或者Ctrl+C等),不然可能会产生意想不到的bug或者丢失文件,而且你还不知道,直到你出现问题才知道。
  • 学会习惯使用虚拟环境,使用虚拟环境的话就会与base环境隔离,而且虚拟环境加载比较快、因为包少,所以多多使用虚拟环境,虚拟环境可以创建多个的。
  • 有Windows账户要有权限。不然有些场景下比如要加载什么DLL文件 或者啥啥啥文件的时候,会因为没有权限访问就出现莫名奇妙的问题。
  • anaconda的环境变量一定得配好到系统变量,这个可以去百度查一下。(虽然默认安装后会帮你配好,但好像不全)

二、anaconda: CondaHTTPError 以及 弹出python.exe程序停止正常运行的对话框与conda.gateways.disk.delete。

今晚使用conda创建虚拟环境失败。

1.报错如下

Collecting package metadata (current_repodata.json): failed

CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/win-64/repodata.json>
Elapsed: -

An HTTP error occurred when trying to retrieve this URL.
HTTP errors are often intermittent, and a simple retry will get you on your way.
'https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/win-64'

2. 报错分析:

我测试了一下我的网速,显示是正常的。还真别说,还挺快,看个电影什么的是没啥大问题的。

从报错里面可以知道的是: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/win-64 有问题,另外可能官网是发生了一些重构的现象,需要去考究。

如下:该链接下的文件可能已经移动到别处的路径。

已解决:conda常见报错以及解决方法【持续更新conda的其它报错以及解决方法。】_报错解决_02


另外,https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/下明显的区别了各个系统的对应:

已解决:conda常见报错以及解决方法【持续更新conda的其它报错以及解决方法。】_python_03


所以,要在原来的路径上加入/win64/

3. 报错解决:

ssl_verify: true
show_channel_urls: true

channels:
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/win-64/
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64/

这里的官方写法:​​这里​

channels:
- defaults
show_channel_urls: true
channel_alias: https://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

【注意,要加上/win64/,看你系统来】

事实证明,这是有效的做法:

已解决:conda常见报错以及解决方法【持续更新conda的其它报错以及解决方法。】_报错解决_04

此外,我还发现使用conda的话,卡在​​Collecting package metadata (current_repodata.json): /​​​ 会很久,我电脑也是很带劲的那种,网络也挺好,没道理会很久。以前都是挺快的。【估计是路由器问题】
最近发现移动的宽带变慢了许多,测试网速是很快,下载东西和看视频都很快。就是使用conda、pip、这类东西,和访问国内一些科学学习的网站的时候特别慢。

3月22更新内容:

再次出现报错

Collecting package metadata (current_repodata.json): done
Solving environment: done


==> WARNING: A newer version of conda exists. <==
current version: 4.8.2
latest version: 4.8.3

Please update conda by running

$ conda update -n base conda


WARNING conda.gateways.disk.delete:unlink_or_rename_to_trash(140): Could not remove or rename C:\Users\chenruhai\Anaconda3\pkgs\pip-9.0.1-py36_1.tar.bz2. Please remove this file manually (you may need to reboot to free file handles)

于是就照着提示做了。顺利解决第二个警告的问题。但是第一个警告我并没有打算去解决,因为一旦更新conda会更惨、问题更多,除非官方建议。

之后一顿操作猛如虎、顺风顺水几个钟。又几个钟的正常使用之后,又出现了新问题。一旦使用conda去更新包、安装包、或者创建虚拟环境,只要是涉及conda的操作,都会导致弹出python.exe程序停止正常运行的对话框,但是pip是能够正常使用的。之后,笔者尝试了以下方法,均未能解决问题:

  1. 切换到用户的根目录即 C:\Users\用户名 再执行创建命令;
  2. 把python和conda的exe加入防火墙白名单;
  3. 退出所有杀毒软件以及防火墙。
  4. 安装h5py包
  5. 网上说是jupyter的问题,于是我重新安装jupyter也未能解决。
  6. 怀疑是dll问题,但是这个dll问题我需要拿我本地的Anaconda3目录和官方说明的对比,确定是哪一个dll文件缺失。由于太麻烦,所以,使用了dll修复软件去扫描,但该软件只能修复window的dll,而无法去检测第三方软件。

随后 ,无奈之下,也有可能是包损坏。
于是:清理损坏包:

conda clean --packages --tarballs

之后使用正常:

conda update --all

使用正常:

已解决:conda常见报错以及解决方法【持续更新conda的其它报错以及解决方法。】_windows10_05


其它错误:

Collecting package metadata (current_repodata.json): failed

# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<

Traceback (most recent call last):
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\exceptions.py", line 1079, in __call__
return func(*args, **kwargs)
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\cli\main.py", line 84, in _main
exit_code = do_call(args, p)
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\cli\conda_argparse.py", line 82, in do_call
return getattr(module, func_name)(args, parser)
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\cli\main_create.py", line 37, in execute
install(args, parser, 'create')
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\cli\install.py", line 265, in install
should_retry_solve=(_should_retry_unfrozen or repodata_fn != repodata_fns[-1]),
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\core\solve.py", line 117, in solve_for_transaction
should_retry_solve)
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\core\solve.py", line 158, in solve_for_diff
force_remove, should_retry_solve)
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\core\solve.py", line 262, in solve_final_state
ssc = self._collect_all_metadata(ssc)
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\common\io.py", line 88, in decorated
return f(*args, **kwds)
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\core\solve.py", line 415, in _collect_all_metadata
index, r = self._prepare(prepared_specs)
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\core\solve.py", line 1011, in _prepare
self.subdirs, prepared_specs, self._repodata_fn)
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\core\index.py", line 228, in get_reduced_index
repodata_fn=repodata_fn)
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\core\subdir_data.py", line 105, in query_all
result = tuple(concat(executor.map(subdir_query, channel_urls)))
File "C:\Users\chenruhai\Anaconda3\lib\concurrent\futures\_base.py", line 598, in result_iterator
yield fs.pop().result()
File "C:\Users\chenruhai\Anaconda3\lib\concurrent\futures\_base.py", line 435, in result
return self.__get_result()
File "C:\Users\chenruhai\Anaconda3\lib\concurrent\futures\_base.py", line 384, in __get_result
raise self._exception
File "C:\Users\chenruhai\Anaconda3\lib\concurrent\futures\thread.py", line 57, in run
result = self.fn(*self.args, **self.kwargs)
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\core\subdir_data.py", line 98, in <lambda>
package_ref_or_match_spec))
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\core\subdir_data.py", line 110, in query
self.load()
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\core\subdir_data.py", line 174, in load
_internal_state = self._load()
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\core\subdir_data.py", line 255, in _load
return self._load()
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\core\subdir_data.py", line 263, in _load
mod_etag_headers.get('_mod'))
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\core\subdir_data.py", line 311, in _read_local_repdata
_internal_state = self._process_raw_repodata_str(raw_repodata_str)
File "C:\Users\chenruhai\Anaconda3\lib\site-packages\conda\core\subdir_data.py", line 349, in _process_raw_repodata_str
json_obj = json.loads(raw_repodata_str or '{}')
File "C:\Users\chenruhai\Anaconda3\lib\json\__init__.py", line 348, in loads
return _default_decoder.decode(s)
File "C:\Users\chenruhai\Anaconda3\lib\json\decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "C:\Users\chenruhai\Anaconda3\lib\json\decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 118947 column 22 (char 3030850)

`$ C:\Users\chenruhai\Anaconda3\Scripts\conda-script.py create -n test python=3.6`

environment variables:
CIO_TEST=<not set>
CLASSPATH=.;C:\java\jdk1.8.0_202\lib;C:\java\jdk1.8.0_202\lib\tools.jar
CONDA_DEFAULT_ENV=base
CONDA_EXE=C:\Users\chenruhai\Anaconda3\condabin\..\Scripts\conda.exe
CONDA_EXES="C:\Users\chenruhai\Anaconda3\condabin\..\Scripts\conda.exe"
CONDA_PREFIX=C:\Users\chenruhai\Anaconda3
CONDA_PROMPT_MODIFIER=(base)
CONDA_PYTHON_EXE=C:\Users\chenruhai\Anaconda3\python.exe
CONDA_ROOT=C:\Users\chenruhai\Anaconda3
CONDA_SHLVL=1
CUDA_PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0
GOPATH=C:\Users\chenruhai\go
HOMEPATH=\Users\chenruhai
NVTOOLSEXT_PATH=C:\Program Files\NVIDIA Corporation\NvToolsExt\
PATH=C:\Users\chenruhai\Anaconda3;C:\Users\chenruhai\Anaconda3\Library\ming
w-w64\bin;C:\Users\chenruhai\Anaconda3\Library\usr\bin;C:\Users\chenru
hai\Anaconda3\Library\bin;C:\Users\chenruhai\Anaconda3\Scripts;C:\User
s\chenruhai\Anaconda3\bin;C:\Users\chenruhai\Anaconda3;C:\Users\chenru
hai\Anaconda3\Library\mingw-w64\bin;C:\Users\chenruhai\Anaconda3\Libra
ry\usr\bin;C:\Users\chenruhai\Anaconda3\Library\bin;C:\Users\chenruhai
\Anaconda3\Scripts;C:\Users\chenruhai\Anaconda3\bin;C:\Users\chenruhai
\Anaconda3\condabin;C:\Program Files\NVIDIA GPU Computing
Toolkit\CUDA\v10.0\bin;C:\Program Files\NVIDIA GPU Computing
Toolkit\CUDA\v10.0\libnvvp;C:\NetSarang\Xftp 6;C:\NetSarang\Xshell 6;C
:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\Syst
em32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:\java\jdk1.8
.0_202\bin;C:\java\jdk1.8.0_202\jre\bin;C:\Users\chenruhai\Anaconda3;C
:\Users\chenruhai\Anaconda3\Scripts;C:\Users\chenruhai\Anaconda3\envs\
QT5\Lib\site-packages\pyqt5_tools;C:\Program Files (x86)\NVIDIA
Corporation\PhysX\Common;C:\Program Files\NVIDIA GPU Computing
Toolkit\CUDA\v10.0\lib\x64;C:\ProgramData\NVIDIA Corporation\CUDA
Samples\v10.0\common\lib\x64;C:\ProgramData\NVIDIA Corporation\CUDA
Samples\v10.0\bin\win64;C:\Program Files\NVIDIA GPU Computing
Toolkit\CUDA\v10.0\extras\CUPTI\libx64;C:\Program Files\NVIDIA GPU
Computing Toolkit\CUDA\v10.0\include;C:\Git\cmd;C:\Program Files
(x86)\scala\bin;C:\Go\bin;C:\Program Files\nodejs;C:\Program
Files\Tesseract-
OCR;C:\Users\chenruhai\AppData\Local\Microsoft\WindowsApps;C:\Program
Files\Bandizip;C:\JetBrains\PyCharm
2019.3.3\bin;.;C:\JetBrains\IntelliJ IDEA 2019.3.3\bin;.;C:\Microsoft
VS Code\bin;C:\Users\chenruhai\go\bin;C:\Users\chenruhai\AppData\Roami
ng\npm;.
PSMODULEPATH=C:\Program Files\WindowsPowerShell\Modules;C:\Windows\system32\Windows
PowerShell\v1.0\Modules
REQUESTS_CA_BUNDLE=<not set>
SSL_CERT_FILE=<not set>

active environment : base
active env location : C:\Users\chenruhai\Anaconda3
shell level : 1
user config file : C:\Users\chenruhai\.condarc
populated config files : C:\Users\chenruhai\.condarc
conda version : 4.8.2
conda-build version : 3.18.11
python version : 3.7.4.final.0
virtual packages : __cuda=10.2
base environment : C:\Users\chenruhai\Anaconda3 (writable)
channel URLs : https://mirrors.ustc.edu.cn/anaconda/pkgs/main/win-64
https://mirrors.ustc.edu.cn/anaconda/pkgs/main/noarch
https://mirrors.ustc.edu.cn/anaconda/pkgs/free/win-64
https://mirrors.ustc.edu.cn/anaconda/pkgs/free/noarch
package cache : C:\Users\chenruhai\Anaconda3\pkgs
C:\Users\chenruhai\.conda\pkgs
C:\Users\chenruhai\AppData\Local\conda\conda\pkgs
envs directories : C:\Users\chenruhai\Anaconda3\envs
C:\Users\chenruhai\.conda\envs
C:\Users\chenruhai\AppData\Local\conda\conda\envs
platform : win-64
user-agent : conda/4.8.2 requests/2.22.0 CPython/3.7.4 Windows/10 Windows/10.0.18362
administrator : False
netrc file : None
offline mode : False


An unexpected error has occurred. Conda has prepared the above report.

Upload successful.

问题分析:
可能是防火墙问题

conda config --set ssl_verify false

之后然并卵。
最终解决办法: !考虑解决最后一个问题的时间成本,选择重装anaconda。

然而,打算卸载之前,我删除了conda的配置文件,也就是使用默认的官方源,ta!居然可以了…一脸茫然的我判断这是配置文件源的问题emmmm

最终:

已解决:conda常见报错以及解决方法【持续更新conda的其它报错以及解决方法。】_anaconda_06


另外,虽然可以了,但是下面这一步还是要做的:

把 Anaconda3/Library/bin下的两个dll文件(libcrypto-1_1-x64.dll、libssl-1_1-x64.dll ) 复制到Anaconda3/DLLs目录下。 至于这么做了原因是发生上述的报错原因可能是系统发生错误导致这两个dll文件丢失,所以复制过去,存在的就覆盖。

而且,系统环境变量path要加上这个环境变量:

C:\Anaconda3\Library\bin

此外,如果使用新版conda搭配国内源,conda更新包的时候会出现警告,至于这个警告,目前我所知道的只能强制更新:(但是我选择暂时不更新这些包哈哈哈)
(有好的做法欢迎可以留言)

conda update --strict-channel-priority --all

虽然苦难重重,但解决过程也是探索的历程。加油!

另外,附上可用的conda源和pip源,我自己在用的:
直接粘贴到对应的配置文件那里即可,conda源的话还需要打开Anaconda Powershell Prompt (Anaconda3),执行 ​​​conda clean -i​​​ 清除索引缓存即可使用,
conda源:

channels:
show_channel_urls: true
channel_alias: https://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
ssl_verify: false

pip源:

[global]
timeout = 60
index-url = https://pypi.doubanio.com/simple
trusted-host = pypi.doubanio.com

此外,2020以来,win10下使用清华镜像的conda感觉就像是使用国外源一样老是出现连接失败问题的报错。所以,建议在使用conda安装包、更新包、创建环境等使用到清华镜像源的操作中,一边打开cmd对清华网站进行ping操作以提高网速(这是无奈之举、当然,频繁的ping很有可能遭到拒绝访问 )

ping mirror.tuna.tsinghua.edu.cn

已解决:conda常见报错以及解决方法【持续更新conda的其它报错以及解决方法。】_conda问题_07

2020-04-01更新如下:
今天电脑上跑一个程序、虚拟机上又跑一个程序,是比较消耗算力的程序。然后自己又做其它事情,导致电脑卡死,鼠标键盘都没有反应,所以我只好强制关机,强制关机重启之后,使用conda出现了以下第二、三点的报错,在这之前都是正常使用的。

三、关于conda的报错解决: Solving environment: failed with initial frozen solve. Retrying with flexible solve.

解决方法: 更改信道级别。

conda config --set channel_priority flexible

四、关于报错:(“read error: Error([(‘SSL routines’, ‘ssl3_read_n’, ‘unexpected eof while reading’)])”,)

在虚拟环境上安装库的时候遇到报错:

("read error: Error([('SSL routines', 'ssl3_read_n', 'unexpected eof while reading')])",)

解决方法: :
方法1: 重新安装一次喽。 【我用的这个、成功解决】

方法2: 有网友说是openSSL模块没有安装或者丢失导致的,下载安装即可。这个我没试
下载地址: ​​​点进来前往下载地址,记得下载对应系统的版本(一般都是用的wndows吧)​​ 安装的时候注意: ,勾选 “安装 DLL 到 System 目录” 的选项。

欢迎加入QQ群一起学习和交流,只为学习和交流:275259334