DreamServer:一条命令跑起完整本地AI栈
posts posts 2026-05-17T20:10:00+08:00DreamServer 是一个开源本地 AI 部署方案,通过一条命令自动完成 GPU 检测、模型选择、服务编排和功能配置。涵盖 LLM 推理、Chat UI、语音、Agent、工作流、RAG 与图像生成,支持 NVIDIA/AMD/Apple Silicon/Intel Arc 四种硬件平台,附硬件分级与扩展机制详解。技术笔记AI, 开源, 本地部署, llama.cpp, RAG, Docker, 自托管什么是 DreamServer
DreamServer 是 Light Heart Labs 出品的开源项目,目标只有一个:让任何人在自己的硬件上跑起一套完整的本地 AI 栈,不需要云端,不需要订阅。
这套栈包含:LLM 推理引擎、网页聊天界面、语音识别与合成、Agent 框架、工作流自动化、RAG 知识库检索、图像生成,以及一整套隐私保护与监控工具。项目自称"主权 AI 基础设施",核心理念是 AI 不该被几家大公司垄断,普通人应该能在自己机器上运行。
截至 2026 年 5 月,GitHub 获得约 950 颗星、192 个 Fork,主分支保持活跃更新,支持 Linux(NVIDIA + AMD + Intel Arc)、Windows(NVIDIA + AMD)、macOS(Apple Silicon)三个平台。
为什么需要它
自己搭一套本地 AI 环境,这件事在 DreamServer 出现之前非常费劲。你需要:
- 手工配置 llama.cpp 或其他推理引擎
- 手动写 Docker Compose 把 Open WebUI、Whisper、Kokoro、Qdrant 等服务串起来
- 处理 GPU 驱动、CUDA/ROCm 版本兼容问题
- 解决服务间 API 端口和认证信息的对接
大多数人在第三步就放弃了,付费给 OpenAI。
DreamServer 把这些全封装进了一个模块化安装器。安装器分 6 个库、13 个阶段,每个阶段独立可插拔。你不需要懂 CUDA,不需要写 Docker 配置,一条命令下去,它会检测你的 GPU、选合适的模型、生成安全凭证、启动全部服务、创建一个可用的聊天界面。
整个过程大约 5–10 分钟交互配置,加上 10–30 分钟下载第一个模型。之后打开浏览器访问 http://localhost:3000,就可以开始对话了。
核心架构
DreamServer 的架构分为三层:核心服务、API 网关、扩展服务。
核心服务是必装的,包括:
| 服务 | 端口 | 用途 |
|---|---|---|
| llama-server | 8080 / 11434 | LLM 推理引擎,基于 llama.cpp |
| open-webui | 3000 | 网页聊天界面 |
| dashboard | 3001 | 系统控制面板 |
| dashboard-api | 3002 | 系统状态 REST API |
| litellm | 4000 | OpenAI 兼容的 API 网关,支持本地/云端/混合模式 |
扩展服务可选安装,涵盖语音、Agent、工作流、检索、图像生成和隐私工具:
- 语音:Whisper(语音识别,端口 9000)+ Kokoro(语音合成,端口 8880)
- Agent:Hermes Agent(本地化浏览器 Agent)+ OpenClaw(AI 代理框架)+ APE(Agent 策略引擎)
- 工作流:n8n(可视化工作流自动化,支持 400+ 集成)
- 检索:Qdrant(向量数据库)+ TEI Embeddings(文本向量化)+ SearXNG(隐私搜索引擎)+ Perplexica(深度研究引擎)
- 图像:ComfyUI(节点式图像生成)
- 隐私与监控:Privacy Shield(PII scrubbing 代理)+ Token Spy(Token 用量监控)+ Langfuse(LLM 可观测性追踪)
所有服务通过 Docker Compose 组织,GPU-specific 的配置(如 NVIDIA 的 docker-compose.nvidia.yml、AMD Strix Halo 的 docker-compose.amd.yml)作为 overlay 挂载,不影响基础配置。
硬件自动检测与分级
DreamServer 安装时做的第一件事是检测你的 GPU,然后根据显存或统一内存大小自动选择最合适的模型分级。不需要你懂硬件,安装器会输出清晰的决策日志。
NVIDIA 分级
| 分级 | 显存 | 默认模型 | 上下文长度 | 代表 GPU |
|---|---|---|---|---|
| Tier 0 | < 8GB / CPU | Qwen3.5 2B | 8K | 任意或无 GPU |
| Tier 1 | 8–11 GB | Qwen3.5 9B (Q4_K_M) | 16K | RTX 4060、RTX 3060 12GB |
| Tier 2 | 12–20 GB | Qwen3.5 9B (Q4_K_M) | 32K | RTX 3090、RTX 4080 |
| Tier 3 | 20–40 GB | Qwen3 30B-A3B MoE (Q4_K_M) | 32K | RTX 4090、A6000 |
| Tier 4 | 40+ GB | Qwen3 30B-A3B MoE (Q4_K_M) | 128K | A100、H100、多卡 |
| NV_ULTRA | 90+ GB | Qwen3 Coder Next (Q4_K_M) | 128K | 多卡 A100/H100 |
AMD Strix Halo(统一内存)
| 分级 | 统一内存 | 默认模型 | 上下文长度 |
|---|---|---|---|
| SH_COMPACT | 64–89 GB | Qwen3 30B-A3B MoE | 128K |
| SH_LARGE | 90+ GB | Qwen3 Coder Next | 128K |
Apple Silicon
同样基于统一内存分级,M 系列芯片的统一内存直接用于 LLM 推理。llama-server 在 macOS 上以原生二进制运行,通过 Metal 加速,无需 Docker 容器(其他服务仍运行在 Docker 中)。
手动指定分级:./install.sh --tier 3,或指定模型族:MODEL_PROFILE=gemma4 ./install.sh。
安装流程
Linux / macOS
curl -fsSL https://raw.githubusercontent.com/Light-Heart-Labs/DreamServer/main/dream-server/get-dream-server.sh | bash如果是手动克隆:
git clone https://github.com/Light-Heart-Labs/DreamServer.git
cd DreamServer/dream-server
./install.sh安装器会依次执行 13 个阶段:环境检测 → GPU 识别 → Docker 验证 → 模型分级 → 组件选择(交互式)→ 凭证生成 → 系统调优 → 服务启动 → 完整性检查。每一步都有清晰的日志输出,出错时会告诉你具体原因和修复建议。
Windows
先安装 Docker Desktop(需要 WSL2 后端),确保 Docker 在运行,然后:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
git clone https://github.com/Light-Heart-Labs/DreamServer.git
cd DreamServer
.\install.ps1安装完成后会在桌面创建 Dashboard 快捷方式,管理命令是 .\dream-server\installers\windows\dream.ps1 status。
验证安装
./scripts/dream-preflight.sh这个脚本会逐个检查所有服务的健康状态,全部通过后你就可以打开 http://localhost:3000 创建第一个账号,开始聊天了。
模型切换
安装器选定的模型不一定永久不变。DreamServer 内置了 dream CLI,用来做模型管理和服务生命周期管理:
dream model current # 查看当前运行的模型
dream model list # 列出所有可用的分级
dream model swap T3 # 切换到 Tier 3切换到尚未下载的模型之前,需要先预下载:
./scripts/pre-download.sh --tier 3
dream model swap T3如果你已经有 GGUF 文件,直接放到 data/models/ 目录,然后修改 .env 中的 GGUF_FILE 和 LLM_MODEL,再:
dream restart llm模型切换失败时自动回滚,这是安装器内置的安全机制。
dream-cli 用法
dream 是整个栈的统一管理接口:
dream status # 查看所有服务状态和 GPU 使用情况
dream list # 列出所有已注册的服务及其端口
dream logs llm # 实时查看 llama-server 日志(也支持 stt、tts)
dream restart [service] # 重启指定服务或全部服务
dream start / stop # 启停整个栈
dream mode cloud # 切换到云端 API 模式(LiteLLM 代理 OpenAI/Anthropic)
dream mode local # 切回本地推理模式
dream mode hybrid # 本地优先,云端兜底
dream enable n8n # 启用某个扩展服务
dream disable whisper # 禁用某个服务
dream config show # 查看当前 .env 配置(密钥已脱敏)
dream preset save gaming # 保存当前配置快照为预设
dream preset load gaming # 加载预设
dream preset diff gaming # 对比两个预设的差异扩展服务的启用和禁用通过 manifest.yaml 发现,不需要手动编辑 compose 文件。
扩展机制
DreamServer 的设计哲学是可修改。每项服务都是一个扩展,扩展的目录结构如下:
extensions/services/
my-service/
manifest.yaml # 元数据:名称、端口、健康检查端点、GPU 后端需求
compose.yaml # Docker Compose 片段(安装时自动合并进主 stack)要让安装器发现并注册一个扩展,只需要把它放到 extensions/services/ 目录。安装器会扫描所有 manifest.yaml,构建完整的服务注册表,包括健康检查、端口分配和依赖关系。
启用和禁用扩展不需要重启整个栈:
dream enable my-service
dream disable my-service
dream list # 查看所有已注册服务如果想自己开发扩展,参考官方文档中的 Extensions 指南 和 Installer Architecture。
与同类方案的对比
| Dream Server | Ollama + Open WebUI | LocalAI | |
|---|---|---|---|
| 覆盖范围 | 完整 AI 栈:推理 + 聊天 + 语音 + Agent + 工作流 + RAG + 图像 | 仅 LLM + 聊天 | 仅 LLM |
| 一键安装覆盖 | 全部服务,自动配置 | 仅 LLM + 聊天,其他需手动 | 仅 LLM |
| 硬件自动检测 | NVIDIA + AMD Strix Halo + Apple Silicon + Intel Arc + CPU | 无 | 无 |
| AMD APU 统一内存 | 平台专用加速后端,installer 自动选择 | 部分(Vulkan) | 不支持 |
| Autonomous Agent | Hermes Agent / OpenClaw | 无 | 无 |
| 工作流自动化 | n8n(400+ 集成) | 无 | 无 |
| 语音(STT + TTS) | Whisper + Kokoro | 无 | 无 |
| 图像生成 | ComfyUI | 无 | 无 |
| RAG 流水线 | Qdrant + embeddings | 无 | 无 |
| 扩展系统 | Manifest-based,热插拔 | 无 | 无 |
| 多 GPU | 支持(NVIDIA) | 部分支持 | 部分支持 |
核心差异在于:Ollama 和 LocalAI 是单点工具,DreamServer 是完整方案。一条命令装完,你得到的不只是聊天机器人,而是一套可以跑语音助手、自动化工作流、RAG 知识库问答和图像生成的本地 AI 平台。
局限性与适用场景
DreamServer 适合以下场景:
- 有可用 GPU(8GB+ 显存或统一内存)且希望数据完全本地化的用户
- 技术团队需要快速搭建内部 AI 能力原型
- 开发者需要一套可复现的本地 AI 开发环境
不适合以下场景:
- 完全没有 GPU:可以用 CPU 模式跑 Tier 0(2B 模型),但体验远不如 GPU 加速版本
- 需要最高性能:同等的云端算力(如 H100 集群)远超过任何单机的本地推理性能;DreamServer 的价值在数据主权而非性能极限
- 仅需要简单聊天:Ollama 单体安装更轻量,DreamServer 的全部功能需要一定的学习成本
总结
DreamServer 解决的核心问题是本地 AI 部署的复杂性。它把原本需要折腾数天的配置工作压缩到一条命令,让有硬件的人都能跑起一套生产级的本地 AI 栈。模块化的架构意味着你可以只安装需要的服务,扩展机制允许你随时加入新的能力。
对于关心数据隐私、想要摆脱云端订阅的开发者或技术团队,这是一套值得投入时间了解的方案。最快的上手方式是执行一条安装命令,然后打开 http://localhost:3000。
官方文档:Quickstart · Hardware Guide · Extensions · FAQ
相关项目:llama.cpp · Open WebUI · ComfyUI · Qwen