跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonAI

UV Python 包管理工具使用教程(Ubuntu 24.04)

介绍在 Ubuntu 24.04 LTS 环境下使用 UV 进行 Python 包管理的完整教程。UV 是 Astral 开发的下一代工具,替代 pip 和 venv,具备极速解析、虚拟环境集成及锁文件支持。内容包括安装验证、初始化项目、依赖管理(add/remove/sync)、虚拟环境操作、缓存清理及工程化实践。通过 uv init 创建项目,uv add 安装依赖,uv run 运行脚本,配合 pyproject.toml 和 uv.lock 实现环境一致性。适合需要高效管理 Python 开发环境及部署的场景,特别兼容大模型依赖如 torch 和 transformers。

女王发布于 2026/3/26更新于 2026/5/2328 浏览

UV 使用教程(适配 Ubuntu 24.04 LTS)

前言

UV 是由 Astral 公司开发的下一代 Python 包管理工具,旨在替代 pip、venv、pip-tools 等传统工具,核心优势是极致的速度(依赖解析速度比 pip 快 10-100 倍)、一站式功能(集成虚拟环境、依赖解析、锁文件、缓存管理)、原生兼容 Ubuntu 系统,同时完全兼容 Python 生态(支持 pyproject.toml、requirements.txt)。它可以很方便地管理一台电脑上不同的 Python 版本,是运行不同环境下程序的好帮手。

前置条件

  • 默认电脑已下载 Python 3.XX.X 版本
  • 默认操作者有一定基础的 Linux 命令行基础
  • 默认操作者的电脑里已有项目

一、安装 UV

1.1 系统兼容性验证

Ubuntu 24.04 LTS 已满足 UV 运行要求(glibc 2.35+),无需额外依赖,直接安装即可。

系统支持版本核心依赖
LinuxUbuntu 20.04+、CentOS 8+glibc 2.28+
1.2 一键安装(推荐)

打开终端,执行官方安装脚本(自动适配 x86_64 架构,无 sudo 权限也可安装):

curl -LsSf https://astral.sh/uv/install.sh | sh
安装原理说明
  • 脚本会自动下载适配 Ubuntu 24.04 的 UV 二进制文件;
  • 默认安装到 ~/.cargo/bin/(依赖 Rust 的 cargo 环境,脚本会自动处理);
  • 自动将 ~/.cargo/bin/ 加入用户环境变量 PATH。
1.3 验证安装

安装完成后,重启终端(使环境变量生效),执行以下命令验证:

uv --version # 示例输出:uv 0.4.14 (a1b2c3d 2026-01-01) # 版本号可能更新

若提示 uv: command not found,手动添加环境变量并重启终端:

echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
1.4 卸载 UV

如需卸载,执行以下命令(彻底清理安装文件和缓存):

# 删除 UV 二进制文件
rm -f ~/.cargo/bin/uv
# 清理 UV 缓存(可选,释放磁盘空间)
rm -rf ~/.cache/uv
# 清理 UV 配置文件(可选)
rm -rf ~/.config/uv

二、核心概念

在使用 UV 前,先理解 4 个核心概念,避免操作误区:

概念作用对应文件/目录
虚拟环境隔离项目依赖,避免全局 Python 环境污染(Ubuntu 系统 Python 需保留系统依赖).venv/(项目根目录,默认隐藏)
pyproject.toml项目配置文件,定义依赖、Python 版本、项目元信息(替代 requirements.txt)项目根目录/pyproject.toml
uv.lock依赖锁文件,记录所有依赖(含间接依赖)的精确版本(保证多环境一致性)项目根目录/uv.lock
缓存存储下载的依赖包、编译后的扩展,避免重复下载/编译(节省时间和带宽)~/.cache/uv(用户级缓存目录)

三、基础操作

3.1 初始化项目

进入你的 Python 项目目录(如 ~/coding/sxu_202501_v2),执行 uv init 完成项目初始化,自动创建虚拟环境和配置文件:

# 进入项目目录(替换为你的实际项目路径)
cd ~/coding/sxu_202501_v2
# 初始化项目(默认创建虚拟环境 +pyproject.toml+uv.lock)
uv init
执行后项目目录结构(Ctrl + H 可查看隐藏目录)
sxu_202501_v2/
├── .venv/          # 自动创建的虚拟环境(隐藏目录,包含独立 Python 解释器)
├── pyproject.toml  # 项目配置文件(依赖、Python 版本等)
└── uv.lock         # 依赖锁文件(自动生成,不可手动编辑)
自定义初始化参数(新手跳过)
# 指定 Python 版本(Ubuntu 24.04 默认 Python 3.12,可指定其他已安装版本)
uv init --python 3.12
# 不自动创建虚拟环境(仅生成配置文件,适合手动管理环境)
uv init --no-venv
# 指定项目名称和作者(会写入 pyproject.toml)
uv init --name "auto-grading-agent" --author "lemon <[email protected]>"
# 初始化时直接安装依赖(如 numpy、transformers)
uv init --python 3.12 --add numpy transformers
3.2 虚拟环境操作

UV 的虚拟环境默认与项目绑定(.venv/),无需手动创建,核心操作如下:

激活虚拟环境

激活后终端前缀会显示 (.venv),表示已进入隔离环境(所有操作仅对当前项目生效):

source .venv/bin/activate
验证虚拟环境激活状态
# 查看当前 Python 解释器路径(应指向.venv/bin/python)
which python # 示例输出:/home/lemon/coding/sxu_202501_v2/.venv/bin/python
# 查看当前 pip 路径(应指向.venv/bin/pip)
which pip
退出虚拟环境
deactivate
查看虚拟环境信息
# 查看虚拟环境路径
uv venv --path # 示例输出:/home/lemon/coding/sxu_202501_v2/.venv
# 查看虚拟环境中已安装的依赖
uv pip list
删除虚拟环境
# 方法 1:UV 内置命令(推荐,安全清理)
uv venv --remove
# 方法 2:手动删除(等价于内置命令)
rm -rf .venv
3.3 依赖管理

UV 的依赖管理围绕 pyproject.toml 展开,兼容传统 requirements.txt,核心命令是 uv add(安装)、uv remove(卸载)、uv sync(同步)。

安装依赖
安装单个生产依赖(新手跳)
# 安装最新稳定版(如 requests、transformers)
uv add requests
uv add transformers
# 安装指定版本(避免版本兼容问题)
uv add requests==2.31.0
uv add transformers==4.41.0
# 安装版本范围(允许自动更新小版本)
uv add requests>=2.28.0,<3.0.0
uv add torch>=2.0.0,<2.5.0
# 安装 Git 仓库中的依赖(如自定义分支的包)
uv add git+https://github.com/huggingface/transformers.git@main
安装开发依赖(仅本地开发用,如测试工具,新手跳)

开发依赖不会被打包到生产环境,用 -d/--dev 标记:

# 安装单个开发依赖(如 pytest 用于测试)
uv add pytest -d
# 安装多个开发依赖(代码格式化、lint 等)
uv add black flake8 isort mypy -d
从 requirements.txt 导入依赖(兼容旧项目)

如果你的项目已有 requirements.txt,可直接导入到 pyproject.toml:

# 导入生产依赖
uv add -r requirements.txt
# 导入开发依赖(需单独创建 requirements-dev.txt,新手跳)
uv add -r requirements-dev.txt -d
卸载依赖
# 卸载单个生产依赖
uv remove requests
# 卸载多个生产依赖
uv remove numpy pandas
# 卸载开发依赖
uv remove pytest -d
更新依赖
# 更新单个依赖到最新版(按 pyproject.toml 的版本约束)
uv add requests@latest
# 更新所有生产依赖到最新兼容版本
uv sync --upgrade
# 更新所有依赖(包括开发依赖)到最新兼容版本
uv sync --upgrade --dev
# 强制更新所有依赖到最新版(忽略版本约束,可能导致兼容问题,不建议使用)
uv sync --upgrade-all
同步依赖

当 pyproject.toml 或 uv.lock 变更(如拉取他人代码、更新依赖),执行 uv sync 同步本地环境:

# 同步生产依赖 + 开发依赖(本地开发用)
uv sync
# 仅同步生产依赖(部署到服务器时用)
uv sync --no-dev
# 同步时强制重新安装所有依赖(修复环境异常)
uv sync --force
3.4 运行 Python 脚本/命令

UV 提供 uv run 命令,无需手动激活虚拟环境,直接使用项目环境运行代码(避免误操作全局环境):

# 运行你的项目脚本
uv run main.py
# 运行带参数的脚本(如传入配置文件、数据路径)
uv run main.py --config config.yaml --data ./data
# 运行 Python 交互环境(使用项目虚拟环境的 Python)
uv run python
# 运行开发工具(如 pytest 测试、black 格式化)
uv run pytest tests/
uv run black src/
uv run flake8 src/

四、依赖管理深度解析(新手了解即可)

4.1 pyproject.toml 详解

pyproject.toml 是 PEP 621 标准的项目配置文件,UV 生成的默认内容如下(带详细注释):

[project]
name = "auto-grading-agent" # 项目名称(初始化时指定)
version = "0.1.0" # 项目版本
description = "Add your description here" # 项目描述(可手动补充)
authors = [
  { name = "lemon", email = "[email protected]" } # 作者信息 (可省略)
]
dependencies = [ # 生产依赖(uv add 添加的包自动写入)
  "requests>=2.31.0",
  "transformers>=4.41.0",
]
requires-python = ">=3.12" # Python 版本约束(Ubuntu 24.04 默认 3.12)

dev-dependencies = [ # 开发依赖(uv add -d 添加的包自动写入)
  "pytest>=7.0.0",
  "black>=24.0.0",
]

[tool.uv]
# UV 专属配置(优化 Ubuntu 环境下的使用体验)
virtualenv = { path = ".venv" } # 虚拟环境路径(固定为项目内.venv)
pip-compatibility = true # 兼容 pip 的依赖解析逻辑(避免兼容问题)
手动编辑 pyproject.toml(进阶)

如果需要调整依赖版本约束、添加项目元信息,可直接编辑该文件,修改后执行 uv sync 生效:

# 示例:添加 LLM 相关依赖
[project]
dependencies = [
  "requests>=2.31.0",
  "transformers>=4.41.0",
  "torch>=2.0.0",
  "accelerate>=0.30.0",
  "peft>=0.10.0",
]
4.2 锁文件(uv.lock)详解
  • 作用:记录所有依赖(包括间接依赖,如 transformers 依赖的 huggingface-hub)的精确版本、下载来源、哈希值,确保在任何 Ubuntu 环境中安装的依赖完全一致;
  • 生成时机:uv init、uv add、uv lock 会自动生成/更新;
  • 手动更新锁文件:当修改 pyproject.toml 后,执行 uv lock 更新锁文件;
  • 强制重新生成锁文件:uv lock --force(忽略缓存,重新解析所有依赖,解决锁文件冲突);
  • Git 提交要求:多人协作时,需将 uv.lock 提交到 Git 仓库,避免环境不一致。
4.3 依赖导出(兼容传统工具)

如需将 UV 管理的依赖导出为 requirements.txt(如适配旧部署流程),执行以下命令:

# 导出生产依赖到 requirements.txt(含版本范围)
uv export > requirements.txt
# 导出开发依赖到 requirements-dev.txt
uv export --dev > requirements-dev.txt
# 导出锁文件中的精确版本(无版本范围,保证完全一致)
uv export --locked > requirements-locked.txt
# 导出时排除指定依赖(如无需导出 torch)
uv export --exclude torch > requirements-no-torch.txt

五、缓存精细化管理

UV 的缓存默认存储在 ~/.cache/uv,包含下载的依赖包、编译后的 C 扩展(如 torch 的 CUDA 扩展),是磁盘占用的主要来源,核心操作如下:

5.1 查看缓存信息
uv cache info
# 示例输出:
# Cache directory: /home/lemon/.cache/uv
# Total size: 3.2 GB
# - Downloads: 2.5 GB (原始依赖包下载缓存)
# - Artifacts: 0.6 GB (编译后的扩展,如 CUDA 相关)
# - Virtualenvs: 0.1 GB (虚拟环境缓存)
5.2 清理缓存
# 清理全部缓存(最常用,安全无副作用)
uv cache clean
# 清理后提示:Deleted 3.2 GB of cache
# 仅清理未使用的依赖缓存(保留当前项目用到的,避免重复下载)
uv cache prune
# 仅清理指定包的缓存(如清理 transformers 的旧版本缓存)
uv cache clean transformers
# 仅清理编译后的扩展缓存(如 CUDA 版本切换后)
uv cache clean --artifacts
# 清理缓存并强制刷新索引
uv cache clean --index
5.3 禁用缓存(不推荐使用)
# 安装依赖时不使用缓存(强制重新下载)
uv add requests --no-cache
# 同步依赖时不使用缓存
uv sync --no-cache

六、工程化实践(Ubuntu 开发/部署)

6.1 多人协作规范(Git 相关)
  1. 必须提交到 Git 的文件:pyproject.toml、uv.lock(保证所有人环境一致);
  2. 协作流程:
    • 拉取他人代码后,执行 uv sync 自动同步依赖;
    • 新增依赖后,执行 uv add <pkg>,提交 pyproject.toml 和 uv.lock;
    • 版本冲突时,优先执行 uv lock --force 重新生成锁文件。

必须忽略的文件:添加到 .gitignore,避免提交冗余文件:

# 在项目根目录创建 .gitignore
cat > .gitignore <<EOF
# UV 相关
.venv/
uv.lock.bak
# 缓存和临时文件
__pycache__/
*.pyc
*.pyo
# 环境变量文件
.env
.env.local
# 大文件
*.pth
*.bin
models/
EOF
6.2 Ubuntu 系统下的 IDE 集成(VSCode/PyCharm)
VSCode 集成
  1. 打开项目后,VSCode 会自动识别 .venv 虚拟环境;
  2. 手动指定解释器:
    • 按 Ctrl+Shift+P,输入'Python: Select Interpreter';
    • 选择 ./.venv/bin/python(项目内的虚拟环境);
  3. 安装 Python 插件后,可直接运行/调试脚本(自动使用虚拟环境)。
PyCharm 集成
  1. 打开项目 → File → Settings → Project: 项目名 → Python Interpreter;
  2. 点击齿轮图标 → Add → Virtualenv Environment;
  3. 选择 Existing environment,浏览到项目内的 .venv/bin/python → OK。
6.3 离线模式(无网络环境开发)
# 1. 在线环境预下载依赖到缓存
uv cache add -r requirements.txt
# 2. 拷贝缓存目录到离线 Ubuntu 机器(如通过 U 盘)
cp -r ~/.cache/uv /media/lemon/U 盘中的缓存目录
# 3. 离线机器设置缓存目录并安装依赖
export UV_CACHE_DIR="/media/lemon/U 盘中的缓存目录"
uv sync --offline
6.4 部署到 Ubuntu 服务器(无开发依赖)
# 1. 服务器安装 UV(同本地安装命令)
curl -LsSf https://astral.sh/uv/install.sh | sh
source ~/.bashrc
# 2. 拉取项目代码
git clone https://github.com/your-username/auto-grading-agent.git
cd auto-grading-agent
# 3. 同步生产依赖(忽略开发依赖)
uv sync --no-dev
# 4. 运行项目(后台运行,适合长期部署)
nohup uv run main.py > app.log 2>&1 &

七、故障排查

7.1 常见错误及解决方案
错误现象原因分析解决方案
uv: command not found环境变量未生效或安装失败1. 重启终端;2. 手动添加环境变量:echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> ~/.bashrc && source ~/.bashrc;3. 重新执行安装脚本
依赖安装失败(网络超时)国外 PyPI 镜像访问缓慢配置国内镜像:uv config set registry https://pypi.tuna.tsinghua.edu.cn/simple
虚拟环境激活失败(权限不足).venv/bin/activate 无执行权限赋予权限:chmod +x .venv/bin/activate,再重新激活
依赖解析冲突(Version solving failed)依赖版本约束冲突(如 A 需 B>=2.0,C 需 B<=1.0)1. 放宽 pyproject.toml 中的版本约束;2. 执行 uv lock --force 强制解析;3. 更换依赖版本
编译依赖失败(如 torch、numpy)缺少系统编译依赖安装编译工具:sudo apt install build-essential python3-dev libopenblas-dev
uv run 提示'无权限访问文件'目标文件/目录权限不足赋予权限:chmod -R 755 目标目录(如 chmod -R 755 ./data)
7.2 查看详细日志
# 运行命令时输出详细日志(如安装依赖失败)
uv add transformers --verbose
# 查看 UV 的日志文件(Ubuntu 下的日志路径)
cat ~/.cache/uv/logs/uv.log
# 导出日志到文件(方便调试)
uv add torch --verbose 2>&1 > uv-install-log.txt

八、性能优化

8.1 加速依赖安装

配置国内 PyPI 镜像(清华源),解决国外镜像访问慢的问题:

# 永久设置清华源(全局生效)
uv config set registry https://pypi.tuna.tsinghua.edu.cn/simple
# 验证配置是否生效
uv config get registry
# 输出:https://pypi.tuna.tsinghua.edu.cn/simple
8.2 并行安装与编译优化
# 并行安装依赖(指定 8 个并发任务,Ubuntu 24.04 支持多线程)
uv add numpy pandas transformers --jobs 8
# 编译依赖时启用优化(针对 CPU 架构优化,提升运行速度)
export UV_BUILD_FLAGS="-O3 -march=native"
uv add numpy
# 编译时应用优化 flags
8.3 减少缓存占用(长期优化)
# 设置缓存最大大小(如限制为 10GB)
uv config set cache.max-size "10GB"
# 自动清理 7 天前的未使用缓存(定期执行)
echo 'uv cache prune --older-than 7d' >> ~/.bashrc
# 每次终端启动时执行

九、UV vs 传统工具

功能UVpip + venvPipenvPoetry
依赖解析速度极快(毫秒级)慢(秒/分钟级)中等中等
虚拟环境集成内置(自动创建)需手动创建(python -m venv)内置内置
锁文件自动生成(uv.lock)无自动生成(Pipfile.lock)自动生成(poetry.lock)
缓存管理精细化命令(clean/prune)基础(pip cache)无基础
开发依赖区分原生支持(-d)需手动维护两份 txt原生支持原生支持
Ubuntu 兼容性原生适配兼容但繁琐兼容但易出问题兼容但依赖多
大模型依赖安装(如 torch)自动编译优化需手动指定 wheel易失败配置复杂
9.1 从 pip 迁移到 UV
# 1. 进入原 pip 管理的项目目录
cd ~/coding/old-project
# 2. 导出 pip 依赖到 requirements.txt
pip freeze > requirements.txt
# 3. 用 UV 初始化项目(自动创建虚拟环境)
uv init --python 3.12 --add -r requirements.txt
# 4. 验证迁移成功(运行项目)
uv run main.py

十、常用命令速查表

基础命令
命令作用
uv --version查看 UV 版本
uv init初始化项目 + 虚拟环境
uv add <pkg>安装生产依赖
uv add <pkg> -d安装开发依赖
uv remove <pkg>卸载依赖
uv run <script>运行 Python 脚本(使用项目环境)
uv sync同步依赖到虚拟环境
虚拟环境命令
命令作用
source .venv/bin/activate激活虚拟环境
deactivate退出虚拟环境
uv venv --path查看虚拟环境路径
uv venv --remove删除虚拟环境
uv run python --version查看虚拟环境 Python 版本
缓存命令
命令作用
uv cache info查看缓存信息(大小、路径)
uv cache clean清理全部缓存
uv cache prune清理未使用的缓存
uv cache clean <pkg>清理指定包的缓存
高级命令
命令作用
uv lock生成/更新锁文件
uv lock --force强制重新生成锁文件
uv export导出依赖到 requirements.txt
uv config set <key> <value>配置 UV 全局参数(如镜像)
uv sync --no-dev仅同步生产依赖(部署用)
uv sync --upgrade更新所有依赖到最新兼容版本

总结

  1. UV 是 Ubuntu 24.04 LTS 下 Python 开发的最优解,核心优势是速度快、集成度高、操作简洁,完全替代 pip+venv;
  2. 核心工作流:uv init(初始化项目)→ uv add(安装依赖)→ uv run(运行代码)→ uv sync(同步环境)→ uv cache clean(清理缓存);
  3. 多人协作时,提交 pyproject.toml 和 uv.lock,忽略 .venv,确保所有开发者环境一致。

目录

  1. UV 使用教程(适配 Ubuntu 24.04 LTS)
  2. 前言
  3. 前置条件
  4. 一、安装 UV
  5. 1.1 系统兼容性验证
  6. 1.2 一键安装(推荐)
  7. 安装原理说明
  8. 1.3 验证安装
  9. 1.4 卸载 UV
  10. 删除 UV 二进制文件
  11. 清理 UV 缓存(可选,释放磁盘空间)
  12. 清理 UV 配置文件(可选)
  13. 二、核心概念
  14. 三、基础操作
  15. 3.1 初始化项目
  16. 进入项目目录(替换为你的实际项目路径)
  17. 初始化项目(默认创建虚拟环境 +pyproject.toml+uv.lock)
  18. 执行后项目目录结构(Ctrl + H 可查看隐藏目录)
  19. 自定义初始化参数(新手跳过)
  20. 指定 Python 版本(Ubuntu 24.04 默认 Python 3.12,可指定其他已安装版本)
  21. 不自动创建虚拟环境(仅生成配置文件,适合手动管理环境)
  22. 指定项目名称和作者(会写入 pyproject.toml)
  23. 初始化时直接安装依赖(如 numpy、transformers)
  24. 3.2 虚拟环境操作
  25. 激活虚拟环境
  26. 验证虚拟环境激活状态
  27. 查看当前 Python 解释器路径(应指向.venv/bin/python)
  28. 查看当前 pip 路径(应指向.venv/bin/pip)
  29. 退出虚拟环境
  30. 查看虚拟环境信息
  31. 查看虚拟环境路径
  32. 查看虚拟环境中已安装的依赖
  33. 删除虚拟环境
  34. 方法 1:UV 内置命令(推荐,安全清理)
  35. 方法 2:手动删除(等价于内置命令)
  36. 3.3 依赖管理
  37. 安装依赖
  38. 安装单个生产依赖(新手跳)
  39. 安装最新稳定版(如 requests、transformers)
  40. 安装指定版本(避免版本兼容问题)
  41. 安装版本范围(允许自动更新小版本)
  42. 安装 Git 仓库中的依赖(如自定义分支的包)
  43. 安装开发依赖(仅本地开发用,如测试工具,新手跳)
  44. 安装单个开发依赖(如 pytest 用于测试)
  45. 安装多个开发依赖(代码格式化、lint 等)
  46. 从 requirements.txt 导入依赖(兼容旧项目)
  47. 导入生产依赖
  48. 导入开发依赖(需单独创建 requirements-dev.txt,新手跳)
  49. 卸载依赖
  50. 卸载单个生产依赖
  51. 卸载多个生产依赖
  52. 卸载开发依赖
  53. 更新依赖
  54. 更新单个依赖到最新版(按 pyproject.toml 的版本约束)
  55. 更新所有生产依赖到最新兼容版本
  56. 更新所有依赖(包括开发依赖)到最新兼容版本
  57. 强制更新所有依赖到最新版(忽略版本约束,可能导致兼容问题,不建议使用)
  58. 同步依赖
  59. 同步生产依赖 + 开发依赖(本地开发用)
  60. 仅同步生产依赖(部署到服务器时用)
  61. 同步时强制重新安装所有依赖(修复环境异常)
  62. 3.4 运行 Python 脚本/命令
  63. 运行你的项目脚本
  64. 运行带参数的脚本(如传入配置文件、数据路径)
  65. 运行 Python 交互环境(使用项目虚拟环境的 Python)
  66. 运行开发工具(如 pytest 测试、black 格式化)
  67. 四、依赖管理深度解析(新手了解即可)
  68. 4.1 pyproject.toml 详解
  69. UV 专属配置(优化 Ubuntu 环境下的使用体验)
  70. 手动编辑 pyproject.toml(进阶)
  71. 示例:添加 LLM 相关依赖
  72. 4.2 锁文件(uv.lock)详解
  73. 4.3 依赖导出(兼容传统工具)
  74. 导出生产依赖到 requirements.txt(含版本范围)
  75. 导出开发依赖到 requirements-dev.txt
  76. 导出锁文件中的精确版本(无版本范围,保证完全一致)
  77. 导出时排除指定依赖(如无需导出 torch)
  78. 五、缓存精细化管理
  79. 5.1 查看缓存信息
  80. 示例输出:
  81. Cache directory: /home/lemon/.cache/uv
  82. Total size: 3.2 GB
  83. - Downloads: 2.5 GB (原始依赖包下载缓存)
  84. - Artifacts: 0.6 GB (编译后的扩展,如 CUDA 相关)
  85. - Virtualenvs: 0.1 GB (虚拟环境缓存)
  86. 5.2 清理缓存
  87. 清理全部缓存(最常用,安全无副作用)
  88. 清理后提示:Deleted 3.2 GB of cache
  89. 仅清理未使用的依赖缓存(保留当前项目用到的,避免重复下载)
  90. 仅清理指定包的缓存(如清理 transformers 的旧版本缓存)
  91. 仅清理编译后的扩展缓存(如 CUDA 版本切换后)
  92. 清理缓存并强制刷新索引
  93. 5.3 禁用缓存(不推荐使用)
  94. 安装依赖时不使用缓存(强制重新下载)
  95. 同步依赖时不使用缓存
  96. 六、工程化实践(Ubuntu 开发/部署)
  97. 6.1 多人协作规范(Git 相关)
  98. 在项目根目录创建 .gitignore
  99. UV 相关
  100. 缓存和临时文件
  101. 环境变量文件
  102. 大文件
  103. 6.2 Ubuntu 系统下的 IDE 集成(VSCode/PyCharm)
  104. VSCode 集成
  105. PyCharm 集成
  106. 6.3 离线模式(无网络环境开发)
  107. 1. 在线环境预下载依赖到缓存
  108. 2. 拷贝缓存目录到离线 Ubuntu 机器(如通过 U 盘)
  109. 3. 离线机器设置缓存目录并安装依赖
  110. 6.4 部署到 Ubuntu 服务器(无开发依赖)
  111. 1. 服务器安装 UV(同本地安装命令)
  112. 2. 拉取项目代码
  113. 3. 同步生产依赖(忽略开发依赖)
  114. 4. 运行项目(后台运行,适合长期部署)
  115. 七、故障排查
  116. 7.1 常见错误及解决方案
  117. 7.2 查看详细日志
  118. 运行命令时输出详细日志(如安装依赖失败)
  119. 查看 UV 的日志文件(Ubuntu 下的日志路径)
  120. 导出日志到文件(方便调试)
  121. 八、性能优化
  122. 8.1 加速依赖安装
  123. 永久设置清华源(全局生效)
  124. 验证配置是否生效
  125. 输出:https://pypi.tuna.tsinghua.edu.cn/simple
  126. 8.2 并行安装与编译优化
  127. 并行安装依赖(指定 8 个并发任务,Ubuntu 24.04 支持多线程)
  128. 编译依赖时启用优化(针对 CPU 架构优化,提升运行速度)
  129. 编译时应用优化 flags
  130. 8.3 减少缓存占用(长期优化)
  131. 设置缓存最大大小(如限制为 10GB)
  132. 自动清理 7 天前的未使用缓存(定期执行)
  133. 每次终端启动时执行
  134. 九、UV vs 传统工具
  135. 9.1 从 pip 迁移到 UV
  136. 1. 进入原 pip 管理的项目目录
  137. 2. 导出 pip 依赖到 requirements.txt
  138. 3. 用 UV 初始化项目(自动创建虚拟环境)
  139. 4. 验证迁移成功(运行项目)
  140. 十、常用命令速查表
  141. 基础命令
  142. 虚拟环境命令
  143. 缓存命令
  144. 高级命令
  145. 总结
  • 💰 8折买阿里云服务器限时8折了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • 阿里推出 AI 编程插件 Qoder,JetBrains 集成体验一周评测
  • TwinRL-VLA:基于数字孪生的强化学习在现实世界机器人操作中的应用
  • 智慧农业-无人机枸杞树病害检测数据集 深度学习框架基于YOLOV8枸杞病害检测系统 无人机智慧农业枸杞病害巡检
  • C++11 新特性(下):Lambda、可变参数模板与包装器
  • Trae AI IDEA 插件实战指南:提升 Java 开发效率
  • Discord中创建机器人的流程
  • LazyLLM 多 Agent 应用实践:源码部署与可视化 Web 调试
  • 前端实现浏览器通知功能指南
  • 利用 AI 工具擦除视频中的动态人物和文字
  • ToDesk 内置 ToClaw AI 实现科技新闻日报自动化实战
  • Windows 本地运行 DeepSeek 大模型的三步指南
  • PythonWin7 解决 Windows 7 Python 兼容性问题指南
  • LLM 项目实战:使用 LLaMA-Factory 进行 DPO 训练
  • 扣子工作流详解:逻辑结构与常见节点
  • 使用 DeepFace 与 OpenCV 实现实时情绪分析
  • AI 视频生成模型开源实战:从选型到生产环境部署的避坑指南
  • VR、具身智能与人形机器人:构建现实世界的智能接口
  • FPGA 是什么:现场可编程门阵列详解
  • VS Code 远程开发时 GitHub Copilot 失效排查指南
  • Java 泛型核心机制与实战指南

相关免费在线工具

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online