文章目录
- 1 测试目的
- 2 物理机选项
- 2.1 系统规格
- 2.2 磁盘识别与部署规划
- 3 RTX 3090安装
- 3.1 初始化物理安装
- 3.2 故障现象
- 3.3 NVIDIA 驱动安装与状态确认
- 3.4 RTX3090深度验证
- 4 模型选择分析
- 5 Ollma下载安装与验证
- 5.1 工具定位
- 5.2 安装过程
- 6. 模型参考目录配置
- 6.1 目录创建
- 6.2 设置系统环境变量
- 7 Ollama模型仓库结构与复用
- 8 模型下载与运行命令
- 8.1 主力 Coding 模型
- 8.2 DeepSeek 推理模型
- 8.3 下载状态说明
- 8.4 下载期间的观察命令
- 9 模型验证
- 9.1 模型下载完成后的验收命令
- 9.2 AI Coding 测试建议
- 附录A 本次部署命令清单
- 系统规格
- 磁盘
- 显卡枚举
- GPU验证
- Ollama验证
- 目录与变量
- 模型下载与运行
- 仓库检查与备份
1 测试目的
本次本地化部署AI的目的,是为了验证开源AI模型对Ai coding的提升效率
2 物理机选项
因为手头没有空闲服务器,本地使用空闲PC做物理机搭建测试环境
2.1 系统规格
用到的命令如下
systeminfo wmic cpu get name2.2 磁盘识别与部署规划
diskpart list diskexitGet-PhysicalDisk3 RTX 3090安装
3.1 初始化物理安装
找到一块Geforce RTX 3090,经常尝试可以安装到PC中。
- 确认 RTX 3090 使用主板 PCIe x16 插槽,并稳固插入。
- 连接显卡上的两个 8-pin PCIe 供电接口。当前电源为 AIGO 550W,能够完成启动和驱动加载,但高负载仍需重点观察稳定性。
- 原显示器通过主板 VGA 接口连接。插入独显后,主板可能自动将独显设为主显示设备,因此本地 VGA 黑屏,但 Windows 仍可启动并通过 RDP 登录。
- RTX 3090 本身不提供 VGA 模拟接口;如需本地显示,应优先使用显卡 HDMI/DisplayPort,或在 BIOS 中启用集成显卡/iGPU Multi-Monitor。
3.2 故障现象
• 本地显示器黑屏、无信号。
• 远程 RDP 可正常连接,说明主机与 Windows 未死机。
• 设备管理器新增 Microsoft Basic Display Adapter,并带黄色感叹号。
• 设备属性显示 Code 43:Windows 已停止该设备。
wmic path win32_VideoController get name Get-PnpDevice|Where-Object{$_.Class-eq"Display"}pnputil /enum-devices /class Display3.3 NVIDIA 驱动安装与状态确认
从 NVIDIA 官网下载并安装适配 RTX 3090 的驱动。部署目标为 AI/CUDA 和稳定运行,因此选择 Studio Driver。驱动安装完成并重启后,设备管理器正确显示 NVIDIA GeForce RTX 3090,黄色感叹号和 Code 43 消失。
nvidia-smi3.4 RTX3090深度验证
nvidia-smi-qnvidia-smi --query-gpu=power.draw,temperature.gpu,utilization.gpu,memory.used,memory.total--format=csv-l1nvidia-smi-l1深度检查显示:PCIe 链路宽度为 x16;主机最高 Gen3,显卡最高 Gen4;空闲时 Current Gen1 属于节能降速。HW Thermal Slowdown、HW Power Brake Slowdown 与 SW Thermal Slowdown 均为 Not Active,未发现过热或硬件功率制动。
风险提示
350W 表示 RTX 3090 的当前功率上限,不是显卡永远消耗350W,也不是整台PC功耗。整机真实功耗应使用插座功率计测量。AIGO 550W 在AI持续负载下余量有限,如出现黑屏、自动重启、Kernel-Power 41 或 nvlddmkm 重置,应优先升级为优质 750W–850W 电源。
4 模型选择分析
基于本地化Ai Coding的目的,结合PC测试机的规格,分析如下。
CPU i5-10400 足以承担 Ollama 调度,主要推理负载由 RTX 3090 承担。32B 量化模型接近 24GB 显存上限,长上下文和多人并发可能导致部分数据进入系统内存,因此64GB RAM是重要保障。
5 Ollma下载安装与验证
5.1 工具定位
Ollama 是本地大语言模型运行时和模型管理平台,不是模型本身。Ollama 负责模型下载、完整性校验、加载、GPU调用、本地 API 和生命周期管理。Ollama App 中显示的 Cline、Qwen Code、Terminal 等属于可连接 Ollama 的客户端或AI应用入口,并非已安装模型。
5.2 安装过程
- 下载并安装 Windows 版 Ollama。
- 首次打开 App 后出现 Welcome、Sign Up 和 Apps 等界面。登录并非命令行拉取本地公开模型的必要前提。
- 首次在旧 PowerShell 窗口执行 ollama 命令时,因 PATH 尚未刷新而提示无法识别命令。关闭并重新打开 PowerShell 后恢复。
ollama--version确认版本:0.40.8 ollama list未下载模型时列表为空属于正常状态。
6. 模型参考目录配置
6.1 目录创建
New-Item-ItemTypeDirectory-PathC:\AI\Models-ForceNew-Item-ItemTypeDirectory-PathC:\AI\OpenWebUI-ForcedirC:\AI6.2 设置系统环境变量
setx OLLAMA_MODELS"C:\AI\Models"/M命令返回“成功: 指定的值已得到保存”表示系统级环境变量已写入注册表。 setx 不会更新当前 PowerShell 进程,因此紧接着执行 echo $env:OLLAMA_MODELS 仍可能为空。
reg query"HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"/v OLLAMA_MODELSecho$env:OLLAMA_MODELS要让新变量被读取,应退出系统托盘 Ollama、关闭所有 PowerShell 窗口,并重新打开 PowerShell;最稳妥方式为注销或重启 Windows。仅在当前窗口临时生效可执行:
$env:OLLAMA_MODELS="C:\AI\Models"7 Ollama模型仓库结构与复用
manifest 不是应用程序。manifest 可理解为模型“目录索引/说明书”,用于告诉 Ollama 在执行 ollama run qwen2.5-coder:32b 时应组合并加载哪些 blob。其机制与容器镜像的 layers + manifest 类似。
复用条件
后续重装或升级 Ollama 时,只要完整保留 C:\AI\Models(包括 blobs 和 manifests),并再次将 OLLAMA_MODELS 指向该目录,通常可直接识别和复用已有模型,无需重新下载。运行同名 pull 时,Ollama 会先校验本地对象,缺失部分才需要补充下载。
setx OLLAMA_MODELS"C:\AI\Models"/M ollama list ollama pull qwen2.5-coder:32b注意:如果重装 Windows 时格式化 C 盘,C:\AI\Models 也会被删除。因此“独立目录”便于管理,但不等于备份。建议任务完成后将整个模型仓库复制到 D 盘或外置存储。
robocopy C:\AI\Models D:\Backup\OllamaModels /MIR /R:2 /W:28 模型下载与运行命令
8.1 主力 Coding 模型
ollama pull qwen2.5-coder:32b
ollama run qwen2.5-coder:32b
8.2 DeepSeek 推理模型
ollama pull deepseek-r1:32b
ollama run deepseek-r1:32b
8.3 下载状态说明
• 32B量化模型通常约20GB上下,首次下载可能持续数小时,取决于国际出口、代理/VPN线路和CDN节点。
• 预计剩余时间是动态估算,应以界面显示的实际 MB/s 和已下载百分比为准。
• 同一模型只保留一个 pull 进程。不要在两个 PowerShell 窗口重复执行同一 pull 命令。
• 如需暂停,可在下载窗口按 Ctrl+C。再次执行相同 pull 时通常会复用已经下载且校验有效的 blob。
• 是否关闭代理不能一概而论。记录代理与直连的实际下载速度后,选择更快且稳定的线路。
8.4 下载期间的观察命令
ollama list Get-Process *ollama* Get-ChildItem C:\AI\Models-Recurse|Measure-Object Length-Sumnvidia-smi-l1下载阶段 GPU 通常不会高负载;模型完成下载并开始推理后,显存占用、GPU利用率和功耗才会明显上升。
9 模型验证
9.1 模型下载完成后的验收命令
ollama list
ollama run qwen2.5-coder:32b
nvidia-smi --query-gpu=name,power.draw,temperature.gpu,utilization.gpu,memory.used,memory.total --format=csv -l 1
Get-EventLog -LogName System -Newest 100 | Where-Object {$_.EventID -eq 41}
9.2 AI Coding 测试建议
• PowerShell:生成 Windows 服务状态监控与CSV导出脚本。
• CI/CD:生成 Jenkinsfile 或 Azure DevOps YAML,并要求解释权限、Secrets与失败重试。
• 代码审查:输入不含敏感信息的示例项目,测试缺陷识别、重构建议和单元测试生成。
• 架构分析:对同一问题分别调用 Qwen2.5-Coder-32B 与 DeepSeek-R1-32B,对比正确性、响应速度和显存占用。
附录A 本次部署命令清单
系统规格
systeminfo
wmic cpu get name
磁盘
diskpart
list disk
exit
Get-PhysicalDisk
显卡枚举
wmic path win32_VideoController get name
Get-PnpDevice | Where-Object {$_.Class -eq “Display”}
pnputil /enum-devices /class Display
GPU验证
nvidia-smi
nvidia-smi -q
nvidia-smi -l 1
nvidia-smi --query-gpu=power.draw,temperature.gpu,utilization.gpu,memory.used,memory.total --format=csv -l 1
Ollama验证
ollama --version
ollama list
ollama ps
目录与变量
New-Item -ItemType Directory -Path C:\AI\Models -Force
New-Item -ItemType Directory -Path C:\AI\OpenWebUI -Force
setx OLLAMA_MODELS “C:\AI\Models” /M
reg query “HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment” /v OLLAMA_MODELS
echo $env:OLLAMA_MODELS
模型下载与运行
ollama pull qwen2.5-coder:32b
ollama run qwen2.5-coder:32b
ollama pull deepseek-r1:32b
ollama run deepseek-r1:32b
仓库检查与备份
Get-ChildItem C:\AI\Models -Recurse
Get-ChildItem C:\AI\Models -Recurse | Measure-Object Length -Sum
robocopy C:\AI\Models D:\Backup\OllamaModels /MIR /R:2 /W:2