1. 项目概述
最近在本地Ubuntu服务器上成功部署了一套完整的AI服务环境,核心组件包括Ollama、Qwen3.5:2b大模型和OpenClaw平台。这个方案最大的优势是完全离线运行,不需要依赖任何外部API服务,特别适合对数据隐私有严格要求的企业内部使用场景。
整套系统搭建完成后,可以通过Web界面直接与本地大模型交互,还能通过飞书机器人接入企业IM系统。实测下来,Qwen3.5:2b这个7B参数的模型在16G内存的Ubuntu虚拟机上运行流畅,响应速度在3-5秒左右,完全能满足日常问答、文档处理等基础AI需求。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 环境准备与组件解析
2.1 硬件配置建议
根据实测经验,建议部署环境满足以下配置:
- CPU:4核以上(AMD EPYC 7B12实测单次推理耗时4.2秒)
- 内存:16GB起步(Qwen3.5:2b模型加载后内存占用约9GB)
- 存储:至少50GB可用空间(模型文件约4.8GB)
- 显卡:非必须,但如果有NVIDIA显卡(如RTX 3060 12GB)可显著提升推理速度
提示:虚拟机部署时建议预留swap空间,我设置了8GB swap分区防止内存不足崩溃。
2.2 核心组件说明
Ollama:相当于本地版的模型托管平台,支持一键拉取和运行各种开源大模型。它的优势在于:
- 自动处理模型依赖关系
- 提供REST API接口(默认端口11434)
- 支持模型版本管理
Qwen3.5:2b:阿里云开源的轻量级大模型,特点是:
- 参数量2B,适合本地部署
- 中文理解能力强
- 支持8k上下文长度
OpenClaw:开源的AI服务网关,主要功能:
- 提供Web管理界面
- 统一API接入层
- 多平台对接能力(飞书、钉钉等)
3. 详细部署步骤
3.1 Ollama安装与配置
3.1.1 基础安装
bash复制# 官方一键安装脚本
curl -fsSL https://ollama.com/install.sh | sh
# 验证安装
ollama --version
# 预期输出:ollama version 0.1.xx
安装完成后会自动创建ollama用户和systemd服务,可以通过以下命令管理:
bash复制# 服务状态检查
sudo systemctl status ollama
# 开机自启设置
sudo systemctl enable ollama
3.1.2 模型拉取与运行
bash复制# 拉取Qwen3.5:2b模型(约4.8GB)
ollama pull qwen3.5:2b
# 运行模型交互测试
ollama run qwen3.5:2b
模型运行后,会进入交互式命令行界面,可以输入"你好"等简单指令测试。退出交互模式按Ctrl+D。
3.1.3 服务化运行
生产环境建议以后台服务方式运行:
bash复制# 创建持续运行的模型实例
nohup ollama run qwen3.5:2b > /var/log/ollama.log 2>&1 &
# 查看运行日志
tail -f /var/log/ollama.log
3.2 Node.js环境配置
OpenClaw需要Node.js 22+环境,推荐通过nvm管理:
bash复制# 安装nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.4/install.sh | bash
# 加载nvm
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
# 安装Node.js 24
nvm install 24
# 验证安装
node -v # 应输出 v24.x.x
npm -v # 应输出 11.x.x
3.3 OpenClaw安装与配置
3.3.1 基础安装
bash复制# Linux安装
curl -fsSL https://openclaw.ai/install.sh | bash
# 初始化配置
openclaw onboard --install-daemon
安装完成后需要重点配置模型接入:
bash复制openclaw config
配置流程中的关键选项:
- 选择 local 部署模式
- Provider选择 Custom Provider
- API地址填写
http://127.0.0.1:11434/v1(必须带/v1后缀) - API Key留空直接回车
- 兼容性选择 OpenAI-compatible
- Model ID填写
qwen3.5:2b
3.3.2 服务启动
bash复制# 启动网关服务
openclaw gateway start
# 启动Web界面
openclaw dashboard
默认会监听18789端口,由于安全限制需要SSH端口转发访问:
bash复制# 本地终端执行(将192.168.1.44替换为服务器IP)
ssh -N -L 18789:127.0.0.1:18789 root@192.168.1.44
浏览器访问 http://localhost:18789 即可进入Web界面。
4. 飞书集成配置
4.1 飞书应用创建
- 登录飞书开放平台
- 创建"企业自建应用"
- 记录App ID和App Secret
4.2 权限配置
需要批量导入以下权限配置(在应用权限管理页面):
json复制{
"scopes": {
"tenant": [
"im:message",
"im:chat",
"im:chat:read",
"im:chat:create",
"im:message.group_msg",
"im:message.p2p_msg:readonly"
]
}
}
4.3 OpenClaw侧配置
bash复制openclaw config set channels.feishu.enabled true
openclaw config set channels.feishu.appId [你的AppID]
openclaw config set channels.feishu.appSecret [你的AppSecret]
4.4 白名单设置
遇到权限问题时,可以临时关闭白名单限制:
bash复制openclaw config set security.dmPolicy pass
openclaw gateway restart
5. 常见问题排查
5.1 模型加载失败
现象:Ollama报错"unexpected EOF"
解决方案:
bash复制# 删除缓存重新拉取
ollama rm qwen3.5:2b
ollama pull qwen3.5:2b
5.2 API连接超时
现象:OpenClaw无法连接Ollama
检查步骤:
- 确认Ollama服务状态
bash复制
curl http://127.0.0.1:11434 - 检查防火墙
bash复制sudo ufw allow 11434/tcp
5.3 飞书消息未回复
排查方法:
- 检查OpenClaw日志
bash复制
journalctl -u openclaw -f - 验证飞书事件订阅
bash复制
openclaw pairing list
6. 性能优化建议
-
量化模型:使用GGUF量化版本减少内存占用
bash复制
ollama pull qwen3.5:2b-gguf -
启用GPU加速(如有NVIDIA显卡):
bash复制# 安装CUDA工具包 sudo apt install nvidia-cuda-toolkit # 重启Ollama sudo systemctl restart ollama -
调整Ollama参数:
bash复制# 修改服务配置文件 sudo nano /etc/systemd/system/ollama.service # 在ExecStart行添加: --numa --num_threads 4
这套本地AI方案部署完成后,我们团队已经将其用于内部文档查询、代码辅助编写等场景。特别是在敏感数据处理的场景下,完全离线的特性解决了数据外泄的顾虑。后续计划尝试接入更多本地模型,打造企业专属的知识库系统。
