jupyter 设置 python内部环境(非win环境)PYDEVD_DISABLE_FILE_VALIDATION

python3.11 + jupyter 在运行时总是出现有冻结模块的错误,这个错误是因为python3.11版本导致的,python3.10没问题,而且不影响使用,此处提示需要设置PYDEVD_DISABLE_FILE_VALIDATION=1

你可以每次运行jupyter前通过

import os
os.environ['PYDEVD_DISABLE_FILE_VALIDATION'] = '1'

设置环境变量。

但是这样好麻烦,强迫症不能忍!
下面给出一劳永逸的方法:

运行

jupyter kernelspec list

以查看包含已安装内核以及文件存储位置的列表
直接修改你需要用的目录下的kernel.json

结尾加"env"参数,这是我修改后的格式

{
 "argv": [
  "/你的python路径/不用修改/...",
  "-m",
  "ipykernel_launcher",
  "-f",
  "{connection_file}"
 ],
 "display_name": "Python 3 (此处昵称可以输入中文)",
 "language": "python",
 "metadata": {
  "debugger": true
 },
 "env": {"PYDEVD_DISABLE_FILE_VALIDATION":"1","TF_CPP_MIN_LOG_LEVEL":"2"}
}

特别注意不要忘记在每个参数后加英文逗号,参数之间也有逗号

保存后重新启动jupyter

在jupyter notebook里新建一行代码块

%env

运行后可以看到当前python使用的环境变量


可能有的人会出现提示

tensorflow/core/platform/cpu_feature_guard.cc:182] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations

类似这样的小错误。如果你使用GPU,那么可以忽略这个问题(大概…)
可以通过设置TF_CPP_MIN_LOG_LEVEL为2 来忽略这个级别的错误。