uv工具的安装:
curl -LsSf https://astral.sh/uv/install.sh | sh
uv工具的安装:
curl -LsSf https://astral.sh/uv/install.sh | sh
# 查看uv的版本
uv --version
# 将uv更新到最新版本
uv self update
当然有关uv的用法还有很多。
https://docs.astral.sh/uv/
等到后期用到python项目时再来补充,需要用再学效率更高。
1、使用虚拟环境
# 创建名为pelican的虚拟环境并指定python版本。
uv venv pelican --python 3.12
# 激活pelican虚拟环境
source pelican/bin/activate
# 将软件包安装到虚拟环境中
uv pip install "pelican[markdown]"
重写写一下基本使用,主要用于虚拟环境,使用起来确实相较于conda更快。
# 安装 uv 包管理工具
curl -LsSf https://astral.sh/uv/install.sh | sh
# 创建集中管理的虚拟环境目录
# mkdir -p ~/.venvs
# 在该目录下创建项目虚拟环境
uv venv ~/.venvs/docling-env --python 3.12
# 激活虚拟环境
source ~/.venvs/docling-env/bin/activate
# 安装 docling 包
uv pip install docling
可以参考这个集中管理虚拟环境的方式,也可以在各自对应的项目中新建.venv作为虚拟环境目录。
uv的实操也可以参考mcp中的quick start,里面的命令就是一些uv的基本操作。
uv tool install
, uv pip install
, uv add
的区别与联系这三个命令都利用了 uv
高效的包解析和安装能力,但它们服务于不同的目的,操作的环境和影响也不同。
uv pip install
pip install
的直接替代品,用于在当前激活的 Python 环境(通常是项目虚拟环境)中安装包。requirements.txt
文件或 pyproject.toml
中的依赖项。pyproject.toml
文件来记录依赖关系(除非是根据 pyproject.toml
进行安装)。pip install
。requirements.txt
或 pyproject.toml
文件安装项目依赖。uv tool install
~/.local/bin
),方便直接调用。pipx install
。ruff
, black
, httpie
, ansible
等,而不想让它们的依赖影响你的项目。uv add
pyproject.toml
文件中。pyproject.toml
文件,将该包添加到 [project.dependencies]
或 [project.optional-dependencies]
下(取决于是否使用了 --optional
等参数)。poetry add
或 pdm add
或 npm install <package> --save
。特性 | uv pip install |
uv tool install |
uv add |
---|---|---|---|
主要目的 | 安装包到当前环境 | 安装命令行工具到隔离环境 | 安装包到当前环境并记录到 pyproject.toml |
目标环境 | 当前激活的 Python 环境 (通常是 venv) | 为每个工具创建独立的隔离环境 | 当前激活的 Python 环境 (通常是 venv) |
修改pyproject.toml ? |
否 | 否 | 是 |
类比工具 | pip install |
pipx install |
poetry add , pdm add |
典型用例 | 安装项目依赖、临时安装包 | 安装全局可用的 Python CLI 工具 | 为项目添加新的、需要管理的依赖项 |
联系:
uv
的底层引擎进行快速的依赖解析和安装。uv pip install
和 uv add
都作用于当前的项目环境,但 uv add
额外承担了维护 pyproject.toml
的责任,更侧重于声明式依赖管理。uv pip install
更像是执行安装动作本身。uv tool install
则完全不同,它关注的是工具的安装和隔离,而非项目依赖。简单来说:
uv add
来管理你项目代码直接依赖的库。uv pip install -r requirements.txt
或 uv sync
(如果使用 uv 管理依赖) 来根据配置文件安装项目依赖。uv tool install
来安装你希望全局使用的 Python 应用程序/工具。