Trước giờ chỉ dùng uv trong project để quản lý, cài đặt các gói, thư viện cho project. Nay cần tải model trên Hugging Face, chợt phát hiện ra một cách để cài các ứng dụng Python thông qua uv khá tiện, không cần bắt buộc phải quản lý gói thông qua nix.

Ví dụ muốn cài hf CLI:

> uv tool install hf

Tool hf sẽ được cài và đặt vào thư mục bin trong biến môi trường PATH để có thể chạy từ bất kỳ đâu mà không cần uv. Hiểu đơn giản, uv tool như nix hoặc apt, cài gói ở cấp độ user-space, còn uv pip dùng để quản lý thư viện cho riêng từng project.

> which hf
/Users/taoquangne/.local/bin/hf

> hf --version
1.11.0

Tất nhiên đi kèm là một vài param giúp quản lý, liệt kê, nâng cấp gói, nói chung rất tiện để cài các tool Python mà không phải đau đầu dùng package manage của OS hoặc tìm cách có binary để execute.

> uv tool list
hf v1.11.0
- hf
ruff v0.15.11
- ruff

Ngoài ra, có thể sử dụng uvx một alias của uv tool run để có thể chạy “thử” một ứng dụng mà không cần cài đặt. Trông tương tự nix-shell -p lolcat, shell được init, cài gói lolcat, thoát shell là gói bay màu.

uvx black bin/convert-to-gguf.py
# equivalent
uv tool run bin/convert-to-gguf.py