【uv 入門②】「マイ包丁は、引き出しに」uvx・uv tool・--dev と、pip より 47 倍速い引っ越し【VOICEVOX解説】
Jam Balaya
0:00 / 0:00
【uv 入門②】「マイ包丁は、引き出しに」uvx・uv tool・--dev と、pip より 47 倍速い引っ越し【VOICEVOX解説】
19 просмотров · 9 дн. назад
Jam Balaya
14 подписчиков
19 просмотров · 9 дн. назад
いつもの癖で pip install ruff と打ったら、「externally-managed-environment」で止められた。
uv 入門の続きです。Ruff の 3 通りの入れ方(uvx・uv tool install・uv add --dev)、1 ファイルで配れるスクリプト(PEP 723)、pip で作った今あるプロジェクトの uv への引っ越し、pip との速さ比べ、そして uv では入らないもの(GDAL)と pixi まで、実際の画面で打って確かめます。
■ この動画でやること
・パソコン全体の Python への pip install は、OS が止めている(PEP 668)。自分の物は自分の環境へ
・Ruff を 1 回だけなら uvx、いつでも使うなら uv tool install、プロジェクトの道具なら uv add --dev([dependency-groups] に書かれる)
・uv add --script で、1 ファイルのスクリプトの頭に依存を書く(PEP 723)。ファイル 1 つ渡せば uv run で動く
・pip と requirements.txt で作った今あるプロジェクトは、作り直さずに 2 段階で引っ越す。まず uv venv と uv pip install -r でそのまま速く。uv pip compile で版を固定(# via で何に付いてきたかも残る)
・次に uv init --bare と uv add -r で、uv のプロジェクトにする
・requests と rich を入れる時間は、キャッシュ無しで pip 2.899 秒・uv 0.468 秒(約 6 倍)、キャッシュありで pip 1.800 秒・uv 0.038 秒(約 47 倍)
・地図のライブラリ GDAL は、C で書かれた本体が要るので uv では入らない。pixi(conda-forge)なら gdalinfo まで入る
・Anaconda の規約では、従業員と契約者を合わせて 200 人を超える営利組織は有償。会社で使うなら規約と取ってくる先を確かめる
※ 収録は Docker の中の Debian(Python 3.13)で、uv 0.12.23 と pixi 0.81.0 を mise で入れています。速さは測るたびに少し変わります。
■ チャプター
0:00 オープニング(Ruff を入れようとしたら、止められた)
0:50 今回の内容
1:15 uvx と uv tool install
2:27 uv add --dev ruff
3:49 1 ファイルのスクリプトに、依存を書く(PEP 723)
5:14 今ある pip のプロジェクトを uv に引っ越す①: まず uv pip で速くする
7:10 引っ越し②: uv のプロジェクトにする
7:59 pip と uv、どれだけ速いのか
9:50 uv では入らないもの(GDAL)
10:39 pixi なら、C のライブラリごと入る
12:00 uv・pixi・Anaconda
12:52 おわりに
■ 関連リンク
uv 入門(activate を忘れても、もう動く): • 【uv 入門】「冷蔵庫の材料を、戸棚で探していたのだ」activate を忘れても、...
mise 入門: • 【mise 入門】バージョン管理はこれ1本でいい。nvm / pyenv が消える【...
uv(公式ドキュメント): https://docs.astral.sh/uv/
PEP 723(スクリプトのメタデータ): https://peps.python.org/pep-0723/
pixi: https://pixi.sh/
元にした記事:
https://kokohore56562wanwan.site/ja/b...
■ 動画で打ったコマンド
pip install ruff
uvx ruff --version
uv tool install ruff
uv tool list
uv add --dev ruff
uv run ruff format
uv run countdown.py
uv add --script countdown.py arrow
uv venv
uv pip install -r requirements.txt
uv pip compile requirements.txt -o requirements.lock
uv init --bare
uv add -r requirements.txt
time pip install -q -r requirements.txt
time uv pip install -q -r requirements.txt
uv add gdal
mise use -g pixi
pixi init
pixi add python gdal
pixi run gdalinfo --version
■ クレジット
【音声】VOICEVOX:ずんだもん / VOICEVOX:四国めたん
【立ち絵】坂本アヒル
【音楽】DOVA-SYNDROME(GT-K / KK / もっぴーさうんど / しゃろう / yuki)
【効果音】効果音ラボ
#uv #Python #Python入門 #プログラミング初心者 #ずんだもん #四国めたん #VOICEVOX