type
status
date
slug
summary
tags
category
icon
password
构建一个2B的千问大模型
硬件与底层环境要求
在开始之前,请确保您的 Ubuntu 环境满足以下条件:
- GPU: NVIDIA GPU(建议 8GB 显存以上,2B 模型 FP16 占用约 4.5GB,但运行推理和 Gazebo 仿真建议预留空间)。
- CUDA: 12.1 或更高版本。
- Python: 3.9 或 3.10。
为了不污染系统环境,建议使用miniconda创建虚拟环境。环境路径通常为/home/你的用户名/miniconda3/envs/qwen_vlm
1.底层驱动与硬件激活
这一阶段确保了显卡能被系统识别,并能够被 AI 框架调用。
- 驱动安装:使用
ubuntu-drivers devices寻扎末尾带有recommended字样的版本。 - 安装指令:
sudo apt install nvidia-driver-XXX(XXX 替换为数字版本)。
- 安全启动(MOK)处理:
- 现象:
nvidia-smi报错,提示驱动未加载。 - 解决:重启进入 BIOS,禁用 Secure Boot (安全启动),彻底解决内核拒绝加载驱动的问题。
- 状态验证:终端输入
nvidia-smi看到 4060 显卡信息表格,标志着底层打通。
2.Python 虚拟环境构建
这一阶段确保了 AI 环境与 ROS2 系统环境互不干扰。
- 管理工具:安装 Miniconda,利用其轻量化的特性管理 Python 环境。
- 环境创建:运行
conda create -n qwen_2b python=3.10。
- 激活环境:
conda activate qwen_2b。
3.核心 AI 框架安装
这一阶段安装了连接硬件与算法模型的“桥梁”。
- PyTorch 安装:
- 指令:执行支持 CUDA 12.1 的安装命令。
- 避坑:忽略 ROS2 引起的
generate-parameter-library-py依赖冲突报错。
- 验证 GPU 连通性:
- 验证指令
torch.cuda.is_available()返回 True。
4.Qwen2-VL 专属库部署
这一阶段安装了处理视觉和语言融合任务的特定组件。
- Transformers:通过 Git 或国内镜像安装最新版
transformers(确保版本支持 Qwen2-VL)。
- 多模态工具:安装
accelerate(显存优化)、qwen-vl-utils(视频/图片预处理)。
- 下载器:安装
modelscope,用于避开海外网络限制。
5.模型权重获取与验证
这一阶段完成了大脑“记忆”的装载。
- 权重下载:使用
snapshot_download脚本从 ModelScope 拉取约 4.5GB 的 Qwen2-VL-2B-Instruct 权重。
- 推理验证:编写
brain_test.py。 - 关键设置:
device_map="auto"将模型自动加载到 4060 上。 - 测试结果:模型成功识别出“卧室”及家具细节,证明全链路运行正常。
- 测试代码示例
问题总结
阶段 | 遇到的问题/挑战 | 最终对策与解决方法 |
环境管理 | 担心 Anaconda 太臃肿,影响系统。 | 安装了 Miniconda,创建了独立的 qwen_2b 虚拟环境。 |
底层驱动 | nvidia-smi 报错,找不到显卡驱动。 | 通过 ubuntu-drivers 安装 nvidia-driver-580 专有驱动。 |
安全启动 | 驱动被拒绝(Key rejected by service)。 | 进入 BIOS 禁用了 Secure Boot,彻底打通内核与驱动的连接。 |
深度学习库 | PyTorch 安装时出现 ROS2 依赖冲突。 | 忽略冲突提示,确保 torch-cu121 在 Conda 环境内成功安装。 |
源码安装 | pip install git+... 下载缓慢或卡死。 | 切换至国内镜像源或手动安装,成功部署最新版 transformers。 |
模型获取 | 官方 Hub 下载太慢。 | 使用 ModelScope (魔搭) 镜像,5分钟内完成 4.5GB 权重下载。 |
通用方法归纳
🛠️ 大模型部署的“四层架构”流程
第一层:底层环境 (Hardware & Driver)
目标: 让操作系统能“使唤”动你的显卡。
- 安装驱动:没有驱动,显卡只是一块板砖。你今天通过
ubuntu-drivers和nvidia-smi解决的就是这个问题。
- CUDA Toolkit:这是 NVIDIA 专门为计算准备的工具箱。虽然现在很多库(如 PyTorch)自带了精简版 CUDA,但系统底层的稳定支持是基础。
第二层:运行容器 (Python Environment)
目标: 给模型一个干净、独立的房间,防止版本冲突。
- 虚拟环境 (Conda):为了防止 A 模型的库把 B 模型的库弄乱。
- 核心引擎 (PyTorch):这是目前最主流的深度学习框架。它负责把复杂的数学公式转化成显卡能算的矩阵运算。
第三层:算法框架 (Transformers & Toolkits)
目标: 安装能够“阅读”模型权重的软件。
- Transformers 库:这是 Hugging Face 出品的行业标准。它定义了模型该如何加载、如何分词(Tokenize)。
- 多模态插件 (Accelerate/VL-Utils):对于视觉模型(VL),还需要额外的插件来处理图片和视频,并优化显存占用。
第四层:模型权重 (Model Weights)
目标: 下载大脑的“记忆体”。
- 权重文件 (.safetensors):这是大模型经过数月训练后的结果,通常有好几个 GB。
- 配置文件 (.json):告诉程序这个模型有多少层、用了什么算力。
💡 总结成一句话
“环境装好(驱动/Conda),框架搭好(PyTorch/Transformers),记忆下好(Weights),代码接好(Processor/Model)。”
有关问题,欢迎您在底部评论区留言,一起交流~
- Author:Koreyoshi
- URL:https://tangly1024.com/article/2d5c7b13-c6a7-80e2-adfb-fe8bd41cd051
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!






