Як встановити та використовувати uv Python Package Manager

Python-середовище активно розвивається, і менеджерів пакетів для нього більше, ніж достатньо. Але що, як з’явився інструмент, який одночасно простий, швидкий і справді сучасний?
Цей гайд допоможе тобі розібратись, що таке uv, як його встановити та як з ним працювати на різних оперативних системах.
Що таке uv?
uv — надзвичайно швидкий інсталятор і розпізнавач пакетів Python, написаний мовою Rust. Наразі він вважається найшвидшим серед аналогів, таких як pip і pipx. Створений командою Astral, яка також розробила Ruff (статичний аналізатор для Python).
uv — це інструмент, який дозволяє:
[1] Блискавично швидке встановлення пакетів і визначення сумісних залежностей
[2] Сумісність із наявними Python-інструментами та робочими процесами
[3] Вбудоване керування віртуальними середовищами
[4] Підтримка сучасних стандартів пакування
[5] Надійне фіксування залежностей та відтворювані середовища
[6] Ефективне використання памʼяті, зокрема для великих проєктів
Що ще вміє uv?
Ще одна цікава функція — робота з версіями Python. uv поки не замінює pyenv повністю, але може частково перекрити його задачі, наприклад, створювати середовища під конкретні версії Python.
Якщо у тебе встановлений Python 3.10, а потрібна версія 3.8, то є два варіанти. Перший — завантажити архів з офіційного сайту та скомпілювати вручну. Другий — скористатися pyenv, який автоматично встановить потрібну версію й дозволить створювати середовища саме під неї.
Як встановити uv на Linux, Windows та macOS
uv є кросплатформним і може бути встановлений різними способами. Найнадійніший — через офіційний скрипт.
[1] На macOS і Linux uv можна встановити через офіційний скрипт. Просто виконай таку команду в терміналі:
curl -LsSf https://astral.sh/uv/install.sh | sudo sh
[2] За допомогою Powershell на Windows (переконайся, що запускаєш Powershell з правами адміністратора):
powershell -ExecutionPolicy ByPass -c “irm https://astral.sh/uv/install.ps1 | iex”
[3] uv також доступний через Homebrew:
brew install uv
[4] Якщо ти все ж віддаєш перевагу інсталювати його через Pip або Pipx, виконай одну з таких команд:
pip install uv
pipx install uv
Як використовувати uv
Після встановлення можна одразу створювати віртуальні середовища, додавати залежності або запускати пакети Python.
[1] Створення проєкту та середовища
uv venv
uv використовує глобальний кеш, щоб повторно не завантажувати однакові бібліотеки. Завдяки цьому типові залежності встановлюються значно швидше, що пришвидшує налаштування середовища.
За стандартом VS Code автоматично розпізнає створене середовище (venv) і працює з ним без потреби додаткових налаштувань.
[2] Якщо необхідно, можна вказати власну назву і вибрати потрібну версію Python:
uv venv my-env –python 3.12.4
[3] Перед встановленням пакетів активуй віртуальне середовище:
- Linux / macOS
source .venv/bin/activate
Ініціалізація нового проєкту
[1] Щоб встановити бібліотеку у середовище, просто використовуй знайому команду через uv:
uv pip install requests
uv автоматично створює або оновлює lock-файл із точними версіями залежностей (аналогічно тому, як це працює у pip-tools).
[2] Хочеш зберегти залежності у файл? Ось так можна згенерувати requirements.txt або uv.lock:
uv pip freeze > requirements.txt
[3] Щоб синхронізувати середовище з lock-файлом використовуй:
uv pip sync
Це дозволяє відтворити середовище точно з тими версіями, які були зафіксовані раніше.
[4] pyproject.toml
Навіть якщо ти ще не працював з uv, цілком можливо, що файл pyproject.toml уже є у твоєму проєкті.
uv читає цей файл, щоб дізнатися:
- Назву та версію проєкту
- Яку версію Python ти використовуєш
- Перелік основних залежностей (без точних версій)
Поточні можливості uv
Станом на зараз uv вже має все необхідне для комфортної роботи в більшості Python-проєктів:
- Стабільно працює з понад 10 000 бібліотек із PyPI
- Сумісний із типовими робочими процесами pip, virtualenv
- Активно розвивається, має відкритий код і підтримку спільноти
Попри те, що деякі розширені сценарії (poetry, pipx, pyproject.toml) ще не повністю підтримуються, uv уже зараз підходить як легке й швидке рішення для роботи.
Корисні джерела
Документація ще не надто велика, але регулярно оновлюється й добре структурована. Більшість відповідей можна знайти у GitHub-репозиторії або на офіційній сторінці.
Підсумуємо
uv ще не досконалий, але вже встиг зарекомендувати себе як стабільний інструмент для роботи з Python. Якщо тобі важлива продуктивність і надійність у роботі з пакетами — варто дати uv шанс. Тим більше встановити й протестувати його можна всього за кілька хвилин.
Хочеш опанувати нові навички? Хутчіше приєднуйся до наших курсів і отримуй практичні знання. А якщо цей гайд був для тебе корисним, поділись думками в коментарях.