- 核心问题:如何在不依赖云端服务、不泄露隐私的前提下,获得一个随时可用的AI助手?
- 解决方案:OpenClaw 是一款开源AI助手,完全运行在本地设备上,支持通过常用聊天应用(如微信、Telegram、Slack等)调用。
- 学完本文你将能:在本地部署OpenClaw,并通过聊天应用直接使用它,无需手动切换工具或担心数据外泄。
前置条件
- 硬件要求:一台支持运行AI模型的设备(建议至少8GB RAM,推荐16GB以上;支持CUDA的NVIDIA显卡可加速推理,非必需)
- 软件环境:
- 操作系统:Windows 10/11、macOS 12+、Linux(Ubuntu 20.04+ 或同等发行版)
- 已安装 Docker(推荐)或 Python 3.8+ 与 pip
- 已安装并登录一个支持的聊天应用(如 Telegram、微信开发者工具等)
- 网络条件:本地网络正常,能访问 GitHub 和 Docker Hub(用于下载镜像/模型)
分步操作
1. 下载并安装 OpenClaw
- 打开终端(Windows 使用 PowerShell 或 CMD,macOS/Linux 使用默认终端)
- 执行以下命令拉取 Docker 镜像(推荐,无需手动配置依赖):
docker pull openclaw/openclaw:latest
git clone https://github.com/openclaw/openclaw.git
cd openclaw
pip install -r requirements.txt
2. 配置聊天应用连接
- 根据你使用的聊天应用,获取对应的 API 密钥或 Webhook 地址:
- Telegram:在 Telegram 中搜索
@BotFather,创建新机器人,复制提供的 API Token - 微信:使用微信开发者工具创建企业自建应用,获取 AppID 和 AppSecret
- Slack:在 Slack API 页面创建应用,启用 Event Subscriptions 并获取 Bot Token
- 将上述凭证写入 OpenClaw 的配置文件
config.yaml(位于项目根目录或 Docker 挂载目录):
platform:
type: telegram # 或 wechat / slack
token: "YOUR_TOKEN_HERE"
3. 选择并加载AI模型
- OpenClaw 默认使用轻量级模型(如
microsoft/phi-2),可自动下载 - 如需使用更大模型(如
Llama-2-7b),在 config.yaml 中指定:
model:
name: "meta-llama/Llama-2-7b-chat-hf"
device: "cuda" # 或 "cpu"
- 首次启动时,模型会自动下载(约 3-15 分钟,取决于模型大小和网络速度)
4. 启动 OpenClaw
docker run -d --name openclaw -p 8080:8080 -v /path/to/config.yaml:/app/config.yaml openclaw/openclaw:latest
python main.py
- 确认终端输出显示
Server started on port 8080,且无报错
5. 通过聊天应用测试
- 打开已配置的聊天应用,向你的机器人发送任意消息(例如:“你好,今天天气怎么样?”)
- 预期结果:机器人应在 1-5 秒内回复,内容基于本地模型生成
- 若未收到回复,检查终端日志是否有错误提示(常见原因:模型未加载完成、API Token 错误)
预期结果
- 成功部署后,你可以在任何聊天应用中直接与本地AI助手对话
- 所有对话数据仅存储在本地设备,不会上传至任何第三方服务器
- 支持连续对话(上下文窗口默认 2048 tokens,可在配置中调整)
常见问题
| 问题 | 可能原因 | 解决方式 |
|---|
| 启动后无响应 | 模型未下载完成或路径错误 | 检查 config.yaml 中模型名称是否正确,或等待模型下载完毕 |
| 聊天应用收不到回复 | API Token 无效或网络不通 | 重新生成 Token,检查防火墙是否阻止了 8080 端口 |
| 回复速度慢 | 使用 CPU 推理,或模型过大 | 更换为更小模型(如 phi-2),或启用 GPU 加速 |
| 无法连接 Docker 镜像 | 网络限制或镜像源问题 | 更换 Docker 镜像源(如使用阿里云镜像加速器),或改用 Python 方式安装 |
注意事项
- 隐私边界:OpenClaw 本身不联网,但如果你在聊天应用中使用了需要联网的功能(如微信小程序),该应用仍可能收集数据。建议仅用于纯文本对话。
- 模型兼容性:仅支持 Hugging Face 格式的因果语言模型(Causal LM),不支持多模态模型(如图像生成)。
- 资源占用:运行 7B 参数模型约占用 6-8GB RAM,建议关闭其他大型应用。