新闻详情

新闻详情

首页 / 资讯中心 / 详情

开源AI工作站openrig搭建实战:从硬件选型到本地大模型部署

发布时间:2026/10/2 11:21:53来源:尧图网络
开源AI工作站openrig搭建实战:从硬件选型到本地大模型部署
先聊点实在的openrig 不是哪个大厂出的整机也不是云厂商的现成套餐它是我自己断断续续折腾了一个多月才跑通的一套开源 AI 工作站机架方案。openrig 这个名字拆开就是 open 加 rigopen 表示开源rig 在技术圈里通常指一台专门干重活的主机所以合起来的意思很明确把从结构图纸到软件配置全部开放出来复刻一台能本地跑大模型的工作站。它能用来做 AI 推理、模型微调实验、容器化开发、长时间无人值守跑任务也适合想把 GPU 服务器环境玩明白的朋友作为学习样本。如果你是个 AI 应用开发者平时被各种 API 限额和数据合规问题折腾得够呛openrig 能给你一条本地化路径如果你是硬件 DIY 爱好者想看看一台 7x24 小时运行的 AI 机器和普通游戏主机的设计思路差在哪这篇也有完整的选型理由和踩坑记录如果你只是好奇开源硬件怎么和 AI 软件栈结合后面的内容基本按我实际动手的顺序写照着手抄也能抄出来。我在 openrig 上跑通了 Qwen2.5、Llama 3.1 这类主流开源模型的推理和容器化部署也顺手做了几组性能对比下面全部摊开讲。1. OpenRIG 是什么我为什么要搭一台开源 AI 工作站1.1 名字的由来与项目定位rig 这个词在老玩家的语境里有一台专门化整机的意思比如跑游戏的就叫 gaming rig跑渲染的就叫 render rig。openrig 延续了这个说法但它更强调开放机架结构用开源图纸和标准铝型材拼装软件栈全部用开源组件配置文件、BIOS 设置项、踩坑清单全部整理成文档。说白了它不是一台买来即用的机器而是一套可以按需改装的底子。项目定位也很直接做一台以 GPU 为中心的本地 AI 实验平台。和普通台式机相比openrig 的差异在三点第一它的结构是开放式的硬件换装和排障不需要拧半天侧板螺丝第二它的散热路径是专门为长时间负载设计的不是为了跑分那几分钟好看第三它的软件栈围绕容器化和模型服务构建装完系统后所有 AI 环境都跑在 Docker 里系统坏了环境也不会跟着崩。这套定位决定了它不适合拿来当纯粹的游戏主机也不适合完全没有动手意愿的人。但如果你愿意接受一周的搭建时间换来一个自己完全掌控的本地 AI 环境那它带来的回报会非常明显尤其当你天天要给不同模型做评测、要处理私有数据、要反复改推理参数的时候本地机器的价值根本不是按小时计费的云主机能比的。1.2 自建 rig 之前先想清楚这四个问题我见过不少朋友看到网上的服务器配置就跟着买结果装起来发现完全不是自己想的那样。下手之前先花半天想清楚下面四个问题。第一你到底要跑什么任务。如果只是调用 API 做应用开发那本地机器帮不了你多少如果你是做模型推理集成、需要反复调 prompt、做量化测试、微调小模型那本地 GPU 机器就是刚需。第二预算怎么分配。AI 场景下显卡永远是大头机箱、风扇这些能用便宜的但电源和散热别省。我的建议是先把 60% 预算砸向 GPU剩下的再考虑 CPU 和存储。第三这台机器要不要 7x24 小时跑。如果你只是白天开发晚上关机普通游戏主机方案也能凑合如果你要挂 API 服务、跑定时任务、处理夜间队列那必须按服务器标准考虑电源冗余和散热余量。第四你的动手能力在哪一层。openrig 不是成品机主板跳线、铝型材组装、驱动排错、Docker 网络这些都是必修课遇到问题能不能静下心看日志比多花两百块买配件重要得多。这四个问题想明白你再回来选硬件会发现很多纠结其实已经消失了。比如预算有限的人会自然放弃两张卡并行选择把一张高显存的卡压榨到极限没有 7x24 需求的人会放弃冗余电源省下来的钱够加一块大容量固态硬盘。1.3 整体架构一览硬件加软件双链路我习惯把 openrig 拆成两条链路来理解。硬件链路是机架结构、供电系统、计算部件、存储部件、散热风道每个部分各自模块化软件链路是操作系统、GPU 驱动、容器运行时、模型推理服务、前端界面、监控系统每一层各司其职。这两条链路交叉的地方就是 NVIDIA Container Toolkit 那一层它让容器里的应用能看到 GPU这也是很多初学者第一次装容器环境时最容易卡住的地方。下面的表格是我最终定版的基础架构层级硬件链路软件链路顶层开放式铝型材机架Web UI / API 服务计算层CPU、GPU、内存GPU 驱动、CUDA 运行时存储层NVMe 系统盘、数据盘文件系统、Docker 卷供电层ATX 3.0 电源、插线板电源管理、硬件监控散热层风冷散热器、机架风扇风扇策略、温度监控这个架构不是一次到位的。一开始我图省事用普通 ATX 机箱装了整套配置结果每次换显卡都要拔半天线后来才下决心换成开放式机架。实际用下来这种改动的收益远超预期后面我会把结构设计的细节单独拿出来讲。2. 硬件选型与装机设计最关键的决策都在这里2.1 核心部件清单照着这张表买基本不会翻车硬件选型我的原则只有一条在满足性能目标的前提下选市场上保有量大、资料多的产品。因为 openrig 本身追求开源和可复现选冷门硬件等于给自己挖坑。我最终定版的清单如下。部件型号选择选择理由CPUAMD Ryzen 9 7900X12 核 24 线程编译、容器调度、数据预处理都够用主板X670E 或 B650E 大板至少两个 PCIe x16 插槽方便后续加卡或扩展内存DDR5 64GB 套装2x32GBAI 场景里内存和显存一样重要别省GPUNVIDIA RTX 4090 24GB当前性价比最高的本地 AI 卡显存决定能跑多大模型系统盘2TB NVMe SSD装系统和模型缓存容量别低于 1TB数据盘4TB NVMe SSD放数据集、模型文件、容器镜像电源1200W ATX 3.0 白金为瞬态功耗留足余量12VHPWR 接口直接供电散热双塔风冷加三个 12cm PWM 风扇开放式机架风冷足够水冷维护成本更高机架2020 铝型材加角件标准件便宜好改网上图纸一大把先说 CPU为什么不是更便宜的 9900X 或更贵的 7950X7900X 的 12 核在编译代码、跑 Docker 多容器时已经很从容而且它和高端型号的差价足够把内存从 32GB 提到 64GB。AI 推理任务本身主要在 GPU 上算CPU 更多是在做数据搬运和预处理这时候核心数量比单核频率更重要。主板我建议至少选 B650E 以上主要是为了 PCIe 5.0 的支持虽然当前显卡跑 PCIe 4.0 也够但后续扩展卡、高速 SSD 都会吃总线带宽。GPU 是这台机器的灵魂。为什么非要 24GB 显存因为现在主流的 7B 到 14B 开源模型做 4bit 量化后大约占 5GB 到 10GB 显存21B 模型量化后要 12GB 左右24GB 显存意味着你可以不用把模型层切到内存全量驻留显存推理速度才能稳定跑满。更重要的是做 LoRA 微调这类任务时显存占用直接翻倍24GB 是起步线。2.2 开放式机架的结构设计与制作开放式机架是我觉得 openrig 项目和普通主机最直观的区别。很多人看到一堆铝型材和角件拼出来的架子第一反应是这能稳吗实际上 2020 欧标铝型材的刚性远超你想只要连接件拧紧整架结构比很多几百块的机箱都稳。我的尺寸方案是长 450mm、宽 250mm、高 550mm分上下两层。下层放电源和数据盘上层放主板和显卡。这样重心偏低搬动时不会翻而且电源的热风朝下排出不会和显卡抢风道。铝型材可以在网上按长度定制切割回来自己用角件和螺丝组装不需要焊接一把内六角扳手就能搞定。如果你不想自己设计GitHub 上搜 open-air pc case 或 benchtable 能找到大量现成图纸打印一份照着装就行。还有两个小细节容易被忽略。一是显卡支架RTX 4090 这种三风扇大卡非常重PCB 尾部下垂时间长了会导致接触不良必须用一个支撑臂顶住二是理线支架虽然开放式机架天然好理线但乱飞的风扇线和电源线会被风扇卷进去我后来加了两条垂直理线槽世界瞬间清净了。结构件整体成本大概两百元左右比买成品开放式机箱便宜一大截而且尺寸可以按自己需求改。2.3 供电和散热功耗怎么算余量怎么留供电是所有自建服务器项目里最不能省的部分也是最容易算错的部分。我之前用功耗估算公式手算过一脚CPU 满载 230WGPU 满载 450W主板内存风扇存储合计约 100W稳态总功耗约 780W。但这个数字只能作为稳态参考GPU 在负载突增时可能瞬间冲到 600W高端 CPU 也有类似现象如果电源没有足够的余量整机就会重启。所以我的选择是 1200W ATX 3.0 白金电源。ATX 3.0 标准的电源专门针对瞬态功耗做了加强允许在几毫秒内承担 2 倍额定功率的峰值输出这对 RTX 4090 非常重要。白金认证则保证高负载下转换效率在 92% 以上一天满载跑下来功耗差距能省出一顿饭钱。如果你以后计划插双卡那至少要 1600W别犹豫双卡瞬时功耗比单卡翻倍还多。散热设计上开放式机架的最大优势是风道很自由。我在底部设了两个进风扇顶部和后侧各设一个排风扇冷空气从下方进入经过 CPU 散热器和显卡后从上方排出。这个从下往上的垂直风道在开放式结构里天然形成不需要像封闭机箱那样手动规划导流。实测下来夏天 28 度空调房内GPU 满载温度稳定在 65 度左右显存温度 78 度左右长时间跑模型的负载下没有出现降频。3. 软件栈搭建从裸机到能跑大模型的 rig3.1 系统安装与 NVIDIA 驱动一个下午就能搞定硬件装好后最让人头大的就是软件环境。我的建议是系统直接用 Ubuntu 24.04 LTS别为了省事用带桌面环境的开发版LTS 版本的驱动支持和软件仓库稳定很多。安装过程没什么特别唯一要注意的是 BIOS 里把 Resizable BAR 和 Above 4G Decoding 打开不然有些新显卡在部分主板上会莫名其妙性能缩水等半天才反应过来是 BIOS 没开。驱动安装我踩过好几次坑最终的稳妥路线是直接用官方源安装不要从 NVIDIA 官网下载 .run 文件手动装。手动装的问题在于很容易把系统已有的驱动依赖搞乱而且后续升级内核后还要重装。我的操作很简单sudo apt update sudo apt upgrade -y sudo ubuntu-drivers autoinstall sudo reboot重启之后跑一下 nvidia-smi如果看到类似 Driver Version: 550.xxx 的输出就说明驱动已经识别到 GPU。这里有个小技巧系统装完驱动后第一次重启如果开机画面分辨率异常或者卡在黑色界面通常不是驱动坏了而是显示输出还在用核显或者 BIOS 的 CSM 兼容模式在捣乱进 BIOS 把 CSM 关掉基本就能解决。3.2 Docker 容器环境GPU 如何正确透传环境管理我只用 Docker没有别的原因就是隔离性。跑不同模型需要不同版本的 CUDA 运行时和 Python 依赖如果全装在裸机上环境之间互相拖累的噩梦我经历过太多回。Docker 的容器互相独立删掉重来也就几秒钟的事这才是折腾 AI 环境最该有的心态。安装 Docker Engine 可以走官方 apt 仓库但这一步对网络环境有要求如果你所在的网络拉取 Docker 镜像慢后面换几个国内镜像源就行。装完 Docker 后最关键的是装 NVIDIA Container Toolkit它不是显卡驱动而是一个让 Docker 容器能调用 GPU 的中间层curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | sed s#deb https://#deb [signed-by/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list sudo apt update sudo apt install -y nvidia-container-toolkit sudo nvidia-ctk runtime configure --runtimedocker sudo systemctl restart docker验证是否成功的命令很简单跑一个容器并执行 nvidia-smidocker run --rm --gpus all ubuntu:22.04 nvidia-smi如果能看到 GPU 信息那你的容器环境就有 GPU 权限了。这里有个概念特别容易绕晕--gpus all 不是把显卡插进容器里它只是让容器能访问宿主机上的 GPU 设备真正驱动和显存的管理权还在宿主机内核里。3.3 面向 AI 的核心应用Ollama 推理与 Web UI装了驱动和 Docker底层就通了接下来就是怎么让模型跑起来。我选了 Ollama 做推理引擎它最大的优势是真省心。一行命令装好拉模型、起服务、提供 OpenAI 兼容的 API对个人开发者来说够用了。Open WebUI 是前端的聊天界面可以直接连接 Ollama两者加在一起就是一套完整的本地模型服务。Ollama 的安装命令很简单curl -fsSL https://ollama.com/install.sh | sh安装之后顺手拉一个模型试试这里用 Qwen2.5 7B 举例ollama pull qwen2.5:7b ollama run qwen2.5:7bOpen WebUI 我用 Docker 方式跑命令也不复杂docker run -d -p 3000:8080 \ --add-hosthost.docker.internal:host-gateway \ -v open-webui:/app/backend/data \ --name open-webui \ --restart always \ ghcr.io/open-webui/open-webui:main注意那个 --add-host 参数它让容器里可以用 host.docker.internal 这个地址访问宿主机。Open WebUI 默认会通过这个地址去连本机的 Ollama 服务不加这个参数界面会一直提示连不上后端。我最初折腾了半天最后发现就是少了这一行。4. 实测跑通与性能调优一个 8B 模型的全链路4.1 部署 Llama 3.1 8B 的完整过程软件栈搭好以后我拿 Llama 3.1 8B 做了一次完整的部署测试把过程记录下来方便照抄。先拉模型ollama pull llama3.1:8b拉完之后先不急着进聊天界面我习惯先用命令行确认模型能正常响应ollama run llama3.1:8b 用一句话介绍 Docker如果正常返回文字说明推理链路是通的。接下来我用 API 接口做一次简单的性能测试看看生成速度到底怎么样curl http://localhost:11434/api/generate -d { model: llama3.1:8b, prompt: 写一段代码功能是计算斐波那契数列, stream: false }返回结果里会有 generate 耗时和 tokens 数量。我在 RTX 4090 上实测Q4_K_M 量化版的 8B 模型单请求并发下生成速度稳定在每秒 80 到 85 个 token。这个速度是什么概念相当于人类手打文字的十几倍日常对话场景完全够用连发生感都几乎没有。不过这组数据有个前提模型全部驻留在显存里。如果显存不够Ollama 会把一部分层放到内存里跑速度断崖式下跌。这也是我前面反复强调显存优先的原因显存决定一个模型能不能舒服地跑算力只影响能跑多快。4.2 性能参数调整实测显存和并发怎么平衡当你把 openrig 当服务挂出去就不只是自己一个人聊天了并发请求会立刻暴露之前的默认配置问题。Ollama 默认的并发策略比较保守大量并发时请求会排队响应时间拉长。我通过 systemd 覆盖配置调过两个关键参数sudo systemctl edit ollama.service在打开的配置里写上[Service] EnvironmentOLLAMA_NUM_PARALLEL2 EnvironmentOLLAMA_MAX_LOADED_MODELS1OLLAMA_NUM_PARALLEL 表示同一时间可以并行处理几个请求我建议先从 2 开始试。OLLAMA_MAX_LOADED_MODELS 表示同时驻留在显存里的模型数量24GB 显存跑 8B 模型驻留一个模型再加一个并行请求是相对稳的配置。实测对比很有参考价值单请求时候每个请求拿满 80 到 85 token/s把并发调到 2 后两个请求平均下来各自只有 40 token/s 左右并发调到 4单个请求速度直接掉到 22 token/s。这说明推理服务的吞吐量不是线性增长的显存的 KV Cache 会随并发增加而膨胀最终瓶颈不在算力而在显存带宽和使用率。对大部分个人场景OLLAMA_NUM_PARALLEL 设 2 最平衡兼顾响应速度和吞吐。4.3 日常监控与定时维护别装了就不管跑起来之后最忌讳的是扔在角落里不管。我的习惯是先把监控命令刻进肌肉记忆watch -n 1 nvidia-smi sensors第一条每秒钟刷新 GPU 占用、显存、温度和功耗第二条看 CPU 和主板温度。负载跑起来后如果 GPU 温度超过 83 度就该想想是不是风道堵了或者环境温度太高。另外 nvidia-smi 还能限制功率墙nvidia-smi -pl 350这行命令把 GPU 最大功耗限制在 350W性能损失大约 5% 到 8%但温度和风扇噪音会明显好很多。对我这种要把它放家里的场景这个取舍非常值。维护上我加了两个简单的定时任务一个是每天凌晨清理 Docker 的孤儿卷和日志另一个是每周更新系统安全补丁。日志清理尤其重要Open WebUI 跑久后日志文件会膨胀到几 GB磁盘写满的故障多半就是这么发生的。定时任务脚本不用复杂十几行 shell 就能搞定关键在于有而不是完美。5. 踩坑实录与排查思路这些问题你一定也会遇到5.1 常见问题速查表以下是我在搭建和运行 openrig 过程中最常遇到的几类问题整理成快速对照表方便现场排查。现象大概率原因快速排查解决办法开机屏幕无显示BIOS CSM 兼容模式或显示输出插错口插主板上核显口试一次关闭 CSM改 UEFI 启动nvidia-smi 报 No devices显卡供电线没插紧看显卡灯是否亮起重新插 12VHPWR 或 8pin 线Docker 容器看不到 GPUNVIDIA Container Toolkit 未配置跑 nvidia-ctk runtime configure 检查重装 toolkit 并 restart docker模型请求首次很慢模型在从磁盘加载到显存第二次请求是否明显变快正常现象预热即可高负载时整机重启电源余量不足或瞬时峰值超载查看系统日志 Kernel Panic 时间点限制功耗墙或升级更大电源GPU 温度持续高于 85 度风道积灰或显卡支架挡住散热sensors 看温度和风扇转速清灰、重排风扇方向这里面很多问题的排查思路是互通的先看硬件指示灯和系统日志再考虑软件配置。不要一上来就重装驱动那样通常浪费一晚上时间问题还在那。5.2 三个典型的现场排查过程第一个经典场景驱动安装完重启后黑屏。我当时第一反应是驱动装错了重新进恢复模式卸载驱动后发现还是黑屏。后来怀疑是 BIOS 设置问题进 BIOS 关掉 CSM、打开 Resizable BAR 后系统正常进桌面显卡驱动也识别了。这类问题在纯 UEFI 安装的系统里特别常见老式兼容模式有时会把显示输出引导到核显接口上。第二个经典场景Docker 容器启动时提示 could not select device driver with capabilities: [[gpu]]。这个报错的意思就是 Docker 不知道该怎么把 GPU 交给容器基本上都是 NVIDIA Container Toolkit 没装好或者配置没生效。我当时先确认驱动正常然后重新执行一遍 nvidia-ctk runtime configure --runtimedocker再重启 Docker 服务问题立刻解决。这里要注意顺序必须先装 Toolkit再配置运行时最后重启 Docker三步缺一不可。第三个经典场景最吓人模型多跑几分钟整机突然断电重启。一开始以为是显卡过热但温度记录显示才 68 度。后来翻系统日志发现每次重启都在高负载瞬间发生判断是电源瞬时功率不够。我把 GPU 功率墙限制到 350W 后稳了一阵但心里还是不踏实最终换了一颗 ATX 3.0 的 1200W 电源问题彻底消失。这个坑想告诉各位电源是自建工作站里最值得超预算的部分没有之一。5.3 我把 openrig 连续跑了 30 天的稳定性经验目前这台 openrig 已经连续运行三十多天没有出现过一次意外死机。我复盘下来稳定运行的关键不在某一个高端配件而是一套组合策略不超频、限制 GPU 功率墙、使用 ATX 3.0 电源、保持系统更新、模型和应用全部容器化。这套组合策略听起来不酷但实际收益很大尤其当机器放在家里而不是机房时少半夜被叫醒调试一次就值回所有保守配置的代价。如果非要给后来者一条最重要的建议那就是在装机前把这台机器会 7x24 小时运行这个前提写进每一个决策里。从这个前提出发你会自然选择更稳的主板供电、更大的电源余量、更保守的功耗调度、更勤快的日志清理计划。openrig 这台机器到今天还能安静稳定地跑在角落里靠的正是这些不显眼的保守决策。折腾完后你也会发现所谓的开源工作站项目到最后拼的往往不是某一个酷炫零件而是整套系统不出错的底线能力。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

AI工程从零到一:手写神经网络到全链路部署实战 2026/10/2 13:31:19

AI工程从零到一:手写神经网络到全链路部署实战

很多做AI的人,聊起"ai-engineering-from-scratch"这个词,第一反应是"从零手写一个神经网络"。说实话,我以前也这么想,总觉得不依赖任何深度学习框架、纯用NumPy把反向传播撸出来,才算真正入门。后…

阅读更多 →
Agent S2.5 在 OSWorld 基准上的完整部署与评测实战:本地 VMware 与 AWS 云端双方案运行指南 2026/10/2 13:31:19

Agent S2.5 在 OSWorld 基准上的完整部署与评测实战:本地 VMware 与 AWS 云端双方案运行指南

人工智能大模型AI Agent自主智能体GUI 自动化 【免费下载链接】Agent-S Agent S: an open agentic framework that uses computers like a human 项目地址: https://gitcode.com/GitHub_Trending/ag/Agent-S 点击查看 免费下载 本指南以仓库 osworld_setup/s2_5/OS…

阅读更多 →
Langchain4j文档处理实战:从加载到分割的完整指南 2026/10/2 13:31:13

Langchain4j文档处理实战:从加载到分割的完整指南

做 RAG 项目的这段时间,我踩过最深的坑,不是向量库选型,不是 Embedding 模型调参,而是最基础的文档处理环节。文本加载不干净、分割策略不对,后面所有环节的效果都会跟着崩。Langchain4j 在 Java 生态里把文档加载&…

阅读更多 →
追星小程序-ssm 2026/10/2 13:31:06

追星小程序-ssm

本项目为前几天收费帮学妹做的一个项目,在工作环境中基本使用不到,但是很多学校把这个当作编程入门的项目来做,故分享出本项目供初学者参考。 一、项目描述 基于ssm追星小程序通过Mysql数据库连接数据库 http://localhost:8080/ssm2g510/adm…

阅读更多 →
CSP-J初赛带答案试题高效刷题指南:三遍法榨干真题价值 2026/10/2 13:31:06

CSP-J初赛带答案试题高效刷题指南:三遍法榨干真题价值

简介:面向CSP-J组初赛考生与编程初学者的试题解析文档,基于2024年CSP-J组初赛部分真题整理,覆盖整数存储范围、进制转换、组合计数、格雷码、存储单位换算、C基本数据类型、循环语句及栈操作等高频考点。压缩包体积仅17KB,内含1个…

阅读更多 →
DeepSeek同款GRPO训练大提速:魔搭全流程方案配置与评测链路拆解 2026/10/2 13:31:06

DeepSeek同款GRPO训练大提速:魔搭全流程方案配置与评测链路拆解

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉