---
title: "用venv隔离跑OCR示例：创建、激活、对照README钉依赖再装 - Angryecho"
description: "准备工作 已安装Python 3.12+（与Unlimited-OCR README测试口径接近更佳）。[1][2] 官方venv文档：https://docs.python.org/3/library/venv.html 。["
canonical_url: "https://www.angryecho.com/c/Python/p/P2TBBjU693towwCgy8AU2"
meta:
  "og:description": "准备工作 已安装Python 3.12+（与Unlimited-OCR README测试口径接近更佳）。[1][2] 官方venv文档：https://docs.python.org/3/library/venv.html 。["
  "og:image": "https://www.angryecho.com/_og/d/c_Post%2Ctitle_~5ZCQ5qe9572R%2Cdescription_~5ZCQ5qe95LiA5LiL77yM5bCx5LiK5ZCQ5qe9572R44CC%2CpostId_P2TBBjU693towwCgy8AU2%2Crevision_~MjAyNi0xMC0yN1QwMjo1Nzo0OS4yMjMzNTBa%2Cp_Ii9jL1B5dGhvbi9wL1AyVEJCalU2OTN0b3d3Q2d5OEFVMiI%2Cs_CtEUdqK8dUAI_qA2.png"
  "og:image:height": "630"
  "og:image:type": image/png
  "og:image:width": "1200"
  "og:title": 用venv隔离跑OCR示例：创建、激活、对照README钉依赖再装
---

> Index of every page on this site: [llms.txt](https://www.angryecho.com/llms.txt)

# **用venv隔离跑OCR示例：创建、激活、对照README钉依赖再装**

## 准备工作

- 已安装Python 3.12+（与Unlimited-OCR README测试口径接近更佳）。\[1]\[2]
- 官方venv文档： https://docs.python.org/3/library/venv.html 。\[1]

## 操作步骤

### 1、创建虚拟环境

做什么：在项目目录执行`python3 -m venv .venv`。  
为什么：把torch/transformers钉在隔离环境，避免污染系统Python。\[1]  
如何确认：目录下出现`.venv/`，其中有`bin/python`或`Scripts\python.exe`。

### 2、激活并确认解释器路径

做什么：macOS/Linux执行`source .venv/bin/activate`；Windows用`.venv\Scripts\activate`。然后`which python` / `where python`。  
为什么：装错到系统Python是最常见翻车。\[1]  
如何确认：路径指向项目里的`.venv`。

### 3、按第三方项目README安装钉死版本

做什么：例如按Unlimited-OCR列出的版本安装torch与transformers，再装项目自身依赖。\[2]  
为什么：多模态`trust_remote_code`模型对版本敏感。\[2]  
如何确认：`python -c "import torch; print(torch.__version__, torch.cuda.is_available())"`符合预期。

### 4、退出与重建

做什么：`deactivate`退出；环境坏了就删`.venv`重建，不要混用pip全局包。  
为什么：venv可丢弃是它的优点。\[1]  
如何确认：deactivate后`which python`回到系统路径。

### 5、把依赖冻结成requirements，便于同事复现

做什么：环境验证通过后执行`pip freeze > requirements-lock.txt`（或按项目推荐用uv/poetry导出）。  
为什么：只写“按README安装”无法锁定传递依赖。\[1]  
如何确认：新venv里`pip install -r requirements-lock.txt`后，关键`import`成功。

### 6、GPU不可用时显式失败，而不是静默CPU硬撑

做什么：在入口脚本加`assert torch.cuda.is_available(), "需要CUDA"`（或你的项目等价检查）。  
为什么：Unlimited-OCR类模型在CPU上可能极慢或直接不支持，静默回落会浪费时间。\[2]  
如何确认：在无GPU机器上脚本快速报错退出。

## 注意事项

- GPU驱动与CUDA不在venv里解决，需系统级就绪。\[2]
- 不要把 `.venv`提交进git。

## 常见问题

- **activate后pip仍指向系统？** 检查是否用了 `sudo pip`或IDE选错解释器；以 `which python`/ `which pip`为准。\[1]
- **torch安装CPU轮子？** 按PyTorch官网CUDA轮子索引安装，再回到项目README版本约束。\[2]
- **删了.venv但终端还显示venv前缀？** 执行 `deactivate`或重开终端。

做完后，你应有一个可丢弃的`.venv`、一份锁定依赖，以及在无GPU机器上会快速失败的入口检查。

> 说明：venv 步骤以 Python 官方文档为准；OCR 依赖版本以 baidu/Unlimited-OCR README 于 2026-10-24 所列为准。虚拟环境不解决 NVIDIA 驱动与 CUDA 安装问题，需在系统层先就绪再进 venv 装框架轮子。

## 来源

> \[1] [venv — Creation of virtual environments](https://docs.python.org/3/library/venv.html)，Python Docs，核对于2026-10-24。  
> \[2] [baidu/Unlimited-OCR README 依赖列表](https://github.com/baidu/Unlimited-OCR)，核对于2026-10-24。

#Python #venv #教程 #依赖隔离 #OCR

排序方式 :

### **成为第一条评论！**

Nobody's responded to this post yet. Add your thoughts and get the conversation going.

```json
{"@context":"https://schema.org","@graph":[{"@id":"https://www.angryecho.com/c/Python/p/P2TBBjU693towwCgy8AU2#post","@type":"DiscussionForumPosting","commentCount":0,"dateModified":"2026-10-27T02:57:49.223Z","datePublished":"2026-10-24T04:00:00.000Z","description":"准备工作 已安装Python 3.12+（与Unlimited-OCR README测试口径接近更佳）。[1][2] 官方venv文档：https://docs.python.org/3/library/venv.html 。[","headline":"用venv隔离跑OCR示例：创建、激活、对照README钉依赖再装","isPartOf":"https://www.angryecho.com/c/Python","mainEntityOfPage":"https://www.angryecho.com/c/Python/p/P2TBBjU693towwCgy8AU2","text":"准备工作\n\n\n\n\n\n已安装Python 3.12+（与Unlimited-OCR README测试口径接近更佳）。[1][2]\n\n\n\n官方venv文档：https://docs.python.org/3/library/venv.html 。[1]\n\n操作步骤\n\n1、创建虚拟环境\n\n做什么：在项目目录执行python3 -m venv .venv。\n为什么：把torch/transformers钉在隔离环境，避免污染系统Python。[1]\n如何确认：目录下出现.venv/，其中有bin/python或Scripts\\python.exe。\n\n2、激活并确认解释器路径\n\n做什么：macOS/Linux执行source .venv/bin/activate；Windows用.venv\\Scripts\\activate。然后which python / where python。\n为什么：装错到系统Python是最常见翻车。[1]\n如何确认：路径指向项目里的.venv。\n\n3、按第三方项目README安装钉死版本\n\n做什么：例如按Unlimited-OCR列出的版本安装torch与transformers，再装项目自身依赖。[2]\n为什么：多模态trust_remote_code模型对版本敏感。[2]\n如何确认：python -c \"import torch; print(torch.__version__, torch.cuda.is_available())\"符合预期。\n\n4、退出与重建\n\n做什么：deactivate退出；环境坏了就删.venv重建，不要混用pip全局包。\n为什么：venv可丢弃是它的优点。[1]\n如何确认：deactivate后which python回到系统路径。\n\n\n\n5、把依赖冻结成requirements，便于同事复现\n\n做什么：环境验证通过后执行pip freeze > requirements-lock.txt（或按项目推荐用uv/poetry导出）。\n为什么：只写“按README安装”无法锁定传递依赖。[1]\n如何确认：新venv里pip install -r requirements-lock.txt后，关键import成功。\n\n6、GPU不可用时显式失败，而不是静默CPU硬撑\n\n做什么：在入口脚本加assert torch.cuda.is_available(), \"需要CUDA\"（或你的项目等价检查）。\n为什么：Unlimited-OCR类模型在CPU上可能极慢或直接不支持，静默回落会浪费时间。[2]\n如何确认：在无GPU机器上脚本快速报错退出。\n\n注意事项\n\n\n\n\n\nGPU驱动与CUDA不在venv里解决，需系统级就绪。[2]\n\n\n\n不要把.venv提交进git。\n\n常见问题\n\n\n\n\n\nactivate后pip仍指向系统？ 检查是否用了sudo pip或IDE选错解释器；以which python/which pip为准。[1]\n\n\n\ntorch安装CPU轮子？ 按PyTorch官网CUDA轮子索引安装，再回到项目README版本约束。[2]\n\n\n\n删了.venv但终端还显示venv前缀？ 执行deactivate或重开终端。\n\n做完后，你应有一个可丢弃的.venv、一份锁定依赖，以及在无GPU机器上会快速失败的入口检查。\n\n\n\n说明：venv 步骤以 Python 官方文档为准；OCR 依赖版本以 baidu/Unlimited-OCR README 于 2026-10-24 所列为准。虚拟环境不解决 NVIDIA 驱动与 CUDA 安装问题，需在系统层先就绪再进 venv 装框架轮子。\n\n来源\n\n\n\n[1] venv — Creation of virtual environments，Python Docs，核对于2026-10-24。\n[2] baidu/Unlimited-OCR README 依赖列表，核对于2026-10-24。\n\n#Python #venv #教程 #依赖隔离 #OCR","url":"https://www.angryecho.com/c/Python/p/P2TBBjU693towwCgy8AU2","author":{"@type":"Person","name":"mahdi najarian","url":"https://www.angryecho.com/u/P7H9854183"},"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":0},{"@type":"InteractionCounter","interactionType":"https://schema.org/DislikeAction","userInteractionCount":0},{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":0},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":0}]}]}
```

## Sitemap

See the full [sitemap](https://www.angryecho.com/sitemap.md) for all pages.
