uv python package manager
文章目录
如何换源
全局配置
方法: 修改 ~/.config/uv/uv.toml
腾讯源
1index-url = "https://mirrors.cloud.tencent.com/pypi/simple" # 腾讯源清华源
1index-url = "https://pypi.tuna.tsinghua.edu.cn/simple"华为源
1index-url = "https://repo.huaweicloud.com/repository/pypi/simple"
项目内配置
配置文件 pyproject.toml
| |
初始化 uv init
uv init –python $(which python)
作用: 决定使用的 python 版本,但是不会把 $(which python) 所在的环境当作默认环境
依赖和安装 package
uv add
作用: 安装 package ,并更新 pyproject.toml 和 uv.lock
uv add --active
添加 package 到激活的环境中
uv pip install
作用: 跳过 uv 的依赖管理机制,直接使用 pip 安装到当前环境中
要点:
- 不更新 pyproject.toml 的依赖管理
uv tree 依赖列举
作用: 类似 pdm list –graph(–tree)
使用 .venv 以外的 python / venv
注意:
- uv 不能真的支持 通过别的工具创建的 venv
即便激活的别的 venv, eg: conda, python -m venv; uv 也不会使用这些 python, 而是作为
uv init/uv install/uv tree等的参考但是
- uv init 不会使用 –python 指定的 venv 作为默认环境,而只是作为 python version 的参考
- uv add
使用环境变量 UV_PROJECT_ENVIRONMENT
使用 UV_PROJECT_ENVIRONMENT 环境变量指定实际使用的虚拟环境的路径
注意:
- 如何指定的路径已经创建了一个环境,不是通过
uv创建的, uv 默认会删除它,并重新创建一个
--python 和 USE_PYTHON
使用 –python 参数
uv add --python $(which python)uv tree --python $(which python)
使用环境变量
USE_PYTHON: python 的绝对路径
uv sync
安装依赖
--active
是否使用已经激活的环境(即非 .venv 以外的已经激活的其他 python venv)
指定 venv 目录
| |
VIRTUAL_ENV=/venv+--active- 注意: –active 和 ViRTUAL_ENV 两个都需要
无效方法:
- –python 这个是用来创建 venv 使用的 python 路径
uv + pytorch
参考:
例子: linux + pytorch + cuda118
| |
{ index = "pytorch-cu118", marker = "sys_platform == 'linux'" }- 通过 marker 限定不同 platform 使用不同的 index
文章作者
上次更新 2025-09-24 (360d44c)