Jupyter 添加虚拟环境 Kernel 笔记
一、如何将虚拟环境添加到 Jupyter在实际开发中经常会遇到这样的情况Jupyter Notebook 安装在 base 环境中项目依赖安装在独立虚拟环境中例如base环境 │ └── jupyter notebook langchain环境 │ ├── python ├── langchain └── 其他依赖希望实现使用 base 环境中的 Jupyter但是运行 langchain 环境中的代码。1. 进入目标虚拟环境首先进入需要添加到 Jupyter 的环境conda activate langchain此时后续操作都会针对 langchain 环境。2. 安装 ipykernel执行pip install ipykernel作用让这个 Python 环境具备作为 Jupyter Kernel 的能力。3. 注册 Kernel执行python -m ipykernel install --user --name langchain --display-name Python(langchain)其中--name langchain表示 Kernel 的内部名称。--display-name Python(langchain)表示 Jupyter 界面中显示的名称。--user表示将 Kernel 配置写入当前用户的 Jupyter 配置目录。4. 查看是否注册成功执行jupyter kernelspec list如果出现Available kernels: python3 langchain说明注册成功。之后打开 NotebookKernel ↓ Python(langchain)即可使用该环境。二、为什么 Jupyter 在 base 环境却能使用其他环境这里需要理解 Jupyter 的运行机制。很多人的误解Jupyter安装在哪里 ↓ 只能使用哪里的Python实际上不是。Jupyter 本身不负责执行 Python 代码。它主要负责提供 Notebook 页面管理代码单元管理 Kernel真正执行代码的是 Kernel。整体结构浏览器 | | Jupyter Server | | Kernel | | Python解释器所以base 中的 Jupyter 只是管理端。真正运行代码的是被选择的 Kernel。三、ipykernel 注册到底做了什么执行python -m ipykernel install --user ...并不会复制整个虚拟环境。它主要生成一个 Kernel 配置文件。例如 WindowsC:\Users\用户名\AppData\Roaming\jupyter\kernels\langchain里面有kernel.json内容类似{ argv: [ D:\\anaconda3\\envs\\langchain\\python.exe, -m, ipykernel_launcher ], display_name: Python(langchain) }其中最重要的是D:\anaconda3\envs\langchain\python.exe它告诉 Jupyter当用户选择 Python(langchain) 时启动这个 Python。四、为什么 base 的 Jupyter 能找到这个环境因为注册时使用了--user它写入的是当前操作系统用户的 Jupyter 配置目录。例如C:\Users\用户名\AppData\Roaming\jupyter\kernels这个目录中保存有哪些 KernelKernel 名称启动命令对应 Python 路径当你启动(base) jupyter notebookJupyter 会扫描这些目录。发现kernels └── langchain └── kernel.json于是显示Python(langchain)五、Kernel 和虚拟环境的区别需要注意Kernel 不等于虚拟环境。二者关系虚拟环境 langchain ├── python.exe ├── numpy ├── torch └── langchain Kernel kernel.json 记录 使用哪个python 如何启动 显示什么名字可以理解为虚拟环境提供运行代码的实际环境Kernel告诉 Jupyter 如何连接这个环境关系Jupyter | | Kernel(ipykernel) | | Python虚拟环境 | | 第三方库六、进一步理解1. 一个虚拟环境可以有多个 Kernel例如同一个环境langchain环境 python.exe注册Kernel A Kernel B那么 Jupyter 中可能出现Python(实验A) Python(实验B)但是两个 Kernel 都可能指向langchain/python.exe所以一个环境可以对应多个 Kernel。2. 一个 Kernel 也不一定对应虚拟环境Kernel 可以指向系统 PythonC:\Python311\python.exe也可以指向conda 环境D:\anaconda3\envs\langchain\python.exe所以Kernel 本质是一个启动配置而不是一个完整运行环境。七、最终总结添加 Jupyter 环境的核心流程创建虚拟环境 ↓ 安装 ipykernel ↓ 注册 Kernel ↓ 生成 kernel.json 配置文件 ↓ Jupyter扫描配置 ↓ 选择对应 Kernel 执行代码核心思想虚拟环境负责提供 Python 解释器和依赖Kernel 负责连接 Jupyter 和这个 Python 环境。Jupyter 通过扫描 Kernel 配置文件找到并启动对应的 Python。因此Jupyter(base) | | Kernel(langchain) | | langchain虚拟环境这就是为什么一个安装在 base 环境的 Jupyter可以同时管理多个不同的 Python 环境。

相关新闻

智能驾驶HIL仿真系统测试流程

智能驾驶HIL仿真系统测试流程

1 工作程序1.1交付前准备1.1.1智驾HIL测试风险预警机制建立针对可能影响智驾HIL测试任务交付质量与进度的各类风险因素,提前开展预警识别和防范管控。若因不可抗力因素(如自然灾害、核心设备突发故障、关键仿真模型数据源中断等)导致智驾HIL测…

2026/7/22 14:10:12 阅读更多 →
自动化脚本中如何实现定时任务?

自动化脚本中如何实现定时任务?

在编写自动化脚本的过程中,定时执行任务是一个极其常见且核心的需求。无论是每日的自动打卡、定时的数据采集,还是周期性的应用巡检,都离不开可靠的定时调度能力。冰狐智能辅助平台为开发者提供了多种实现定时任务的技术路径,涵盖…

2026/7/22 14:10:12 阅读更多 →
Codebase-Memory:大模型时代AI编程助手的代码记忆优化方案

Codebase-Memory:大模型时代AI编程助手的代码记忆优化方案

1. 项目背景与核心价值Codebase-Memory这个开源项目最近在开发者社区引发了广泛讨论,它解决了大模型时代一个非常实际的痛点:如何让AI编程助手(Agent)更高效地理解你的代码库。传统方式下,每次与AI对话都需要重新上传或…

2026/7/22 14:09:11 阅读更多 →

最新新闻

独立游戏团队如何用AI降低成本?从试错、人力和返工成本拆解

独立游戏团队如何用AI降低成本?从试错、人力和返工成本拆解

独立游戏团队用AI降低成本,重点不是把所有制作工作都交给AI,而是减少前期试错、人力等待、临时资产、外包返修和流程切换带来的隐性消耗。对小团队来说,真正消耗预算的往往不是单个模型,而是方向没定就开始精做、玩法还在改就制作…

2026/7/22 14:55:29 阅读更多 →
理发店收银系统选型避坑:5个高频问题与架构应对

理发店收银系统选型避坑:5个高频问题与架构应对

从系统架构和落地角度,新手开理发店的收银环节存在几个典型陷阱,本文逐一拆解并给出验证方法。过度采购(全家桶陷阱) 刚开业核心链路仅:收银结算→会员办卡→提成计算→对账。选型应支持按需开通版本、全版本可试用&am…

2026/7/22 14:55:29 阅读更多 →
094、多帧合成与夜景模式:运动对齐与噪声抑制的平衡

094、多帧合成与夜景模式:运动对齐与噪声抑制的平衡

094、多帧合成与夜景模式:运动对齐与噪声抑制的平衡 一、一个让我失眠三周的Bug 2019年秋天,某旗舰机项目进入最后调试阶段。夜景模式拍静态场景效果惊艳,但一旦画面中出现行人或车辆,边缘就出现鬼影——不是简单的模糊,而是像幽灵一样半透明的重影。更诡异的是,有时候拍…

2026/7/22 14:55:29 阅读更多 →
嵌入式USB驱动开发:深入解析中断与模式寄存器配置实战

嵌入式USB驱动开发:深入解析中断与模式寄存器配置实战

1. 项目概述与核心价值 在嵌入式系统开发中,尤其是涉及到USB、以太网这类高速外设通信时,中断处理机制的设计与配置往往是决定系统实时性和稳定性的关键。很多开发者可能对应用层协议驾轻就熟,但一旦深入到驱动层面,面对芯片手册里…

2026/7/22 14:55:29 阅读更多 →
C2000 eQEP模块深度解析:从正交编码器原理到伺服控制实战

C2000 eQEP模块深度解析:从正交编码器原理到伺服控制实战

1. 项目概述与核心价值 在伺服电机、机器人关节、数控机床这类对运动精度要求极高的场合,如何实时、准确地获取电机转子的位置和速度,是整个控制系统的基石。增量式编码器,作为一种经济、可靠且分辨率可观的传感器,成为了这个问题…

2026/7/22 14:55:29 阅读更多 →
AI 音乐生成的 Prompt 工程:如何用自然语言精确描述音乐意图

AI 音乐生成的 Prompt 工程:如何用自然语言精确描述音乐意图

AI 音乐生成的 Prompt 工程:如何用自然语言精确描述音乐意图 一、你把"欢快的音乐"塞进生成模型,出来的却是 80 年代电子游戏配乐 AI 音乐生成最早令人失望的地方,不是音质不好,是你描述的和你得到的完全不搭。输入&quo…

2026/7/22 14:54:29 阅读更多 →

日新闻

TI DSP系统配置模块SYSCFG详解:中断机制与主设备优先级配置实战

TI DSP系统配置模块SYSCFG详解:中断机制与主设备优先级配置实战

1. 项目概述与SYSCFG模块的核心价值在嵌入式系统,尤其是像TI C6000系列这样的高性能DSP开发中,我们常常会与芯片手册里那些密密麻麻的寄存器打交道。很多开发者可能更关注算法实现、内存优化或者外设驱动,但对于一个稳定、高效的系统而言&…

2026/7/22 0:00:26 阅读更多 →
微信Server酱:高到达率的应急通知方案实践

微信Server酱:高到达率的应急通知方案实践

1. 为什么我们需要"最次"的通知方案? 在数字化协作环境中,消息通知系统的重要性不言而喻明。但现实情况是,企业级通知方案往往需要复杂的API对接(如企业微信、钉钉、飞书),个人开发者的小项目又经…

2026/7/22 0:00:26 阅读更多 →
甲方要的“简洁“PPT,到底是简洁还是省事?

甲方要的“简洁“PPT,到底是简洁还是省事?

甲方说"简洁一点",乙方听到的是"少做几页"。甲方说"不要太复杂",乙方理解成"别放图表了"。结果交过去,甲方说"我说的简洁不是这个意思"。"简洁"这个词在PPT语境里,是…

2026/7/22 0:00:26 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/22 8:58:19 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/21 5:34:47 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/22 12:54:44 阅读更多 →

月新闻