【要約】Jupyter notebookでuvの仮想環境を認識する [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
開発者がuvを用いてPython環境を構築した際、VS Code上のJupyter Notebookから仮想環境が認識されない問題に直面した。環境構築の手順は適切であったが、IDE側での検知に失敗している。具体的には以下の状況が発生した。
- ・
uv add --dev ipykernelにより仮想環境へカーネルを導入済み。 - ・
uv run python -m ipykernel install --user --name=env1を実行。 - ・
jupyter kernelspec listではカーネルの存在を確認済み。 - ・しかし、VS Codeのカーネル選択一覧に
.venvが表示されない。
// Approach
開発者は、VS CodeのPython拡張機能のバージョンを変更することで、環境の認識問題を解決しようと試みた。原因の特定には至っていないが、拡張機能の更新による回避策を採用している。
- ・VS CodeのPython拡張機能を「Pre-release版」へ切り替える。
- ・これにより、uvで作成された仮想環境がJupyterのカーネルとして認識されるようになった。
// Result
VS Code上でuvによる仮想環境が、Jupyter Notebookのカーネルとして正常に利用可能になった。開発者は以下の成果を得た。
- ・Python拡張機能をPre-release版に更新し、カーネル認識問題を解消。
- ・uvを用いた高速な環境構築と、VS CodeでのJupyter利用を両立。
- ・ただし、標準版で認識されない根本的な原因については不明なままである。
Senior Engineer Insight
> uvのようなモダンなツールを導入する際、IDE側の対応遅延による互換性リスクを考慮すべきだ。本件のようにPre-release版で解決する場合、開発環境の標準化において「拡張機能のバージョン固定」が運用上の課題となる。現場では、ツール導入時にIDEとの連携テストを必須工程に組み込むべきである。また、原因不明のまま回避策に頼ることは、将来的なアップデートによる再発リスクを孕んでいる点に留意せよ。