一、环境准备
部署前需确保宿主机已安装 Docker。不同系统的具体操作略有差异:
- Windows 用户:建议安装 WSL2 并配置 Docker Desktop,将 WSL2 网络模式设置为 Mirrored 以保证容器网络连通性。
- macOS/Linux 用户:直接安装 Docker Engine 即可。
具体安装步骤可参考官方文档,此处不再赘述。
二、部署 Miloco 后端服务
以下命令请在 WSL2 / Linux 终端或 macOS 终端中执行。
- 创建项目目录
mkdir miloco
cd miloco
2. **编写 docker-compose.yml**
使用编辑器创建 `docker-compose.yml` 文件。内容如下,注意缩进必须严格对齐(建议使用 2 个空格):
```yaml
services:
backend:
container_name: miloco-backend
image: ghcr.nju.edu.cn/xiaomi/miloco-backend:latest
network_mode: host
expose:
- ${BACKEND_PORT:-8000}
environment:
- BACKEND_HOST=${BACKEND_HOST:-0.0.0.0}
- BACKEND_PORT=${BACKEND_PORT:-8000}
- AI_ENGINE_HOST=${AI_ENGINE_HOST:-0.0.0.0}
- AI_ENGINE_PORT=${AI_ENGINE_PORT:-8001}
- BACKEND_LOG_LEVEL=${BACKEND_LOG_LEVEL:-info}
- TZ=${TZ:-Asia/Shanghai}
volumes:
- ./data:/app/miloco_server/.temp
- ./log/backend:/app/miloco_server/.temp/log
restart: unless-stopped
healthcheck:
disable: true
-
配置环境变量 新建
.env文件,定义基础参数。注意修正了原稿中的拼写错误(如LOG_LEVER应为LOG_LEVEL):vi .env内容如下:
TZ=Asia/Shanghai BACKEND_HOST=0.0.0.0 BACKEND_PORT=8000 BACKEND_LOG_LEVEL=info AI_ENGINE_HOST=0.0.0.0 AI_ENGINE_PORT=8001 AI_ENGINE_LOG_LEVEL=info -
启动服务 创建必要的挂载目录并启动容器:
mkdir -p data mkdir -p log/backend
docker compose up -d
等待镜像拉取完成,服务即开始运行。
### 三、部署视觉大模型
本地部署视觉模型可根据硬件条件选择不同方案:
- **通用方案**:推荐使用 LM Studio 或 Ollama 部署 GGUF 量化版模型,对 Windows 和 macOS 小白用户友好。
- **高性能方案**:若拥有 NVIDIA 显卡(如 RTX 3090/4090,显存≥24G),建议使用 vLLM 或 SGLang 进行生产级部署。
以下以 LM Studio 为例说明本地服务搭建流程。
#### 1. 下载与安装
访问官网下载安装包:https://lmstudio.ai/
#### 2. 基础设置
打开软件后进入设置界面:
- **App Settings-General-Language**:选择简体中文。
- **App Settings-Developer**:勾选'启用本地 LLM 服务'。
#### 3. 检查运行时环境
在设置页的 Runtime 选项卡下确认驱动支持情况:
- **NVIDIA 用户**:Vulkan llama.cpp, CUDA llama.cpp, CPU llama.cpp 等。
- **AMD 用户**:Vulkan llama.cpp, ROCm llama.cpp, CPU llama.cpp 等。
- **苹果用户**:Vulkan llama.cpp, Metal llama.cpp, MLX llama.cpp 等。
#### 4. 下载模型
在 Model Search 搜索框输入 `xiaomi-open-source/Xiaomi-MiMo-VL-Miloco-7B-GGUF`,点击下载按钮获取模型文件。
#### 5. 启动 API 服务
- 点击左侧开发者图标(绿色终端),加载刚才下载的模型。
- 确认状态显示为 `READY`。
- 将顶部开关从 `Stopped` 切换至 `Running`。
- 点击 `Server Settings`,开启'在网络中提供服务'。
- 记录右侧显示的局域网地址,例如 `http://192.168.50.210:1234`,后续对接需要用到。
### 四、服务对接与配置
假设 Docker 宿主机 IP 为 `192.168.50.123`,浏览器访问 `https://192.168.50.123:8000/`。首次登录需设置账号,回调地址填写 `192.168.50.123:8000`。
#### 1. 接入视觉模型
进入模型管理页面,选择'云端模型' -> '添加模型':
- **Base URL**:填入 LM Studio 的地址,如 `http://192.168.50.210:1234/v1`
- **API Key**:随意填写(本地验证通常不强制)
- **模型 ID**:`xiaomi-mimo-vl-miloco-7b`
- 保存后,在上方'视觉理解大模型'下拉菜单中选择该云端模型。
#### 2. 接入规划模型
若本地显存不足,可接入云端推理服务作为规划模型(如硅基流动):
- 注册并登录 https://cloud.siliconflow.cn/
- 生成 API 密钥(sk 开头)。
- 同样在'添加模型'页面配置:
- **Base URL**:`https://api.siliconflow.cn/v1`
- **API Key**:填入生成的密钥
- **模型 ID**:`Qwen/Qwen3-8B`
- 完成后在'规划大模型'中选择对应云端模型。
至此,Miloco 的核心链路已打通,可在 AI 中心开始体验。
### 五、优化建议
- **规划模型选型**:Qwen3-8B 适合入门,若追求工具调用的稳定性,可尝试 Kimi K2 或 Minimax M2 等更强模型。
- **视觉模型精度**:有条件建议部署全精度版本并使用 vLLM 服务,以获得更佳的响应质量。
- **架构灵活性**:官方推荐方式集成了 AI Engine,本质是对 llama.cpp 的封装。分离式部署允许独立升级各组件,灵活性更高。
