在 VS Code 中管理 Jupyter 内核
Visual Studio Code 笔记本的内核选择器可帮助您为笔记本选择特定的内核。您可以通过单击笔记本右上角的“选择内核”或使用“笔记本:选择笔记本内核”命令通过命令面板打开内核选择器。
打开内核选择器后,VS Code 将显示最近使用的 (MRU) 内核:
注意:在 VS Code 的早期版本(版本 <1.76)中,VS Code 默认显示所有可用内核。
要查看其他内核,您可以单击“选择另一个内核...”。所有现有内核都分为内核源选项,这些源由开箱即用的 Jupyter 扩展支持:
默认情况下,VS Code 会推荐您之前在笔记本上使用过的内核,但您可以选择连接到任何其他 Jupyter 内核,如下所示。VS Code 还会记住您笔记本最后选择的内核,并在您下次打开笔记本时自动选择它们。
Jupyter 内核
Jupyter Kernels类别列出了 VS Code 在其运行的计算系统上下文(您的桌面、GitHub Codespaces、远程服务器等)中检测到的所有 Jupyter 内核。每个 Jupyter 内核都有一个 Jupyter内核规范或 Jupyter kernelspec,其中包含一个 JSON 文件 ( kernel.json
),其中包含有关内核的详细信息 - 名称、描述以及作为内核启动进程所需的 CLI 信息。
Python 环境
Python环境类别列出了 VS Code 从其运行的计算系统(桌面、Codespace、远程服务器等)检测到的 Python 环境。它显示按类型(例如 conda、venv)分组的所有 Python 环境 - 无论是否安装IPyKernel 。
注意:您不需要将jupyter安装到您要使用的 Python 环境中。只需要 IPyKernel 包即可将 Python 进程作为内核启动并针对您的笔记本执行代码 (
pip install ipykernel
)。访问Jupyter 扩展 wiki以了解更多信息。
现有的 Jupyter 服务器
现有Jupyter 服务器类别列出了之前连接的远程 Jupyter 服务器。您还可以使用此选项连接到远程或本地运行的现有 Jupyter 服务器。例如,找到 Jupyter 服务器的 URL,http://<ip-address>:<port>/?token=<token>
并将其粘贴到输入正在运行的 Jupyter 服务器的 URL选项中,以连接到远程服务器并使用该服务器对笔记本执行代码。
当您启动远程服务器时,请务必:
- 允许所有来源(例如
--NotebookApp.allow_origin='*'
)以允许外部访问您的服务器。 - 将笔记本设置为侦听所有 IP (
--NotebookApp.ip='0.0.0.0'
)。
连接后,所有活动的 Jupyter 会话都将显示在此列表中。
您可以通过以下方式从服务器的内核规范创建新会话:
- 运行笔记本:选择笔记本内核命令。
- 选择选择另一个内核。
- 选择现有的 Jupyter 服务器。
- 选择您的服务器。
代码空间 Jupyter 服务器
“连接到 Codespace”类别包含一种特殊类型的 Jupyter 服务器,您可以在其中使用由GitHub Codespaces提供支持的远程 Jupyter 服务器,这是一种每月可免费使用最多 60 小时的云资源。要使用 Codespaces Jupyter 服务器:
-
注意:如果您使用的是 VS Code 网页版(vscode.dev或github.dev),则已经为您安装了此扩展。还要确保Jupyter 扩展也已安装。
-
转到命令面板 ( ⇧⌘P (Windows、Linux Ctrl+Shift+P ) ),选择Codespaces: 登录,然后按照步骤登录 Codespaces。
-
单击笔记本右上角的Select Kernel打开内核选择器,然后选择Connect to Codespace。
提示:如果您没有看到“连接到代码空间”选项,请转到命令面板 ( ⇧⌘P (Windows、Linux Ctrl+Shift+P ) ),选择“开发人员:重新加载窗口”以重新加载窗口,然后重试。
这不是必需的,但您还可以在GitHub Codespaces 页面上管理所有 Codespaces 和 Codespaces Jupyter 服务器。要了解更多信息,您可以阅读GitHub Codespaces 文档。
添加内核选项
如果你的机器上没有任何 Jupyter 内核或 Python 环境,VS Code 可以帮助你设置:转到命令面板 ( ⇧⌘P (Windows, Linux Ctrl+Shift+P ) ),选择Python: Create Environment,并按照提示操作。您还可以通过安装其他扩展(例如Azure 机器学习)来添加选择内核的其他方法。