OpenClaw 现在可以在 Raspberry Pi 5 上与 SignalK 一起运行,让船主可以通过 Telegram 给船只发消息,并在几秒钟内收到实时遥测数据。这种组合开箱即用,但一些配置上的小问题可能会导致守护进程停滞并浪费 Token 额度。
为什么基于 Pi 的 LLM 对航海者至关重要
小型船只通常缺乏使用云端 AI 服务的带宽或预算。Raspberry Pi 5 提供了足够的算力来托管 OpenClaw(一个开源的 LLM 驱动助手),而 SignalK 则为航海数据提供了标准化的 API。两者结合,提供了一个低成本的船载聊天界面,无需离开船只即可回答“我的速度是多少?”或“水有多深?”等问题。
实现协同工作的组件
- OpenClaw 直接在 Pi 的操作系统上运行,使用本地模型栈。
- SignalK 在 Docker 容器中运行,通过 REST (HTTP) API 发布 JSON 格式的传感器读数。
- 两个程序保持隔离:OpenClaw 调用 SignalK 的端点,而 SignalK 永远不会看到 LLM 的内部进程。
由于通信使用的是纯 HTTP,因此不需要特殊的网络技巧。只需单个以太网或 Wi-Fi 链路即可保持循环运行。
初次构建者容易踩到的坑
必须保留 Gateway 模式定义 – OpenClaw 配置中包含一个
gateway.mode键,用于告知守护进程如何暴露其 API。如果将其删除,服务会静默停止。安全的修复方法是:openclaw config set gateway.mode local单位转换不是自动的 – SignalK 遵循国际单位制 (SI)。速度以米/秒传输,深度以米传输。如果向 LLM 询问“节 (knots)”或“英尺 (feet)”,它会直接回显原始数字,从而导致误导性的答案。请在 Agent 的提示词中添加转换逻辑,或者在将 JSON 反馈给用户之前进行后处理。
历史数据是一个独立的插件 – 默认情况下,OpenClaw 只能看到最新的快照。要询问趋势(例如“过去一小时风力增加了吗?”),你需要 SignalK 的 InfluxDB 历史插件。安装并启用它,然后将历史端点暴露给 Agent。
Raspberry Pi OS 缺少
jq– 许多教程假设命令行 JSON 处理工具jq已预装。但 Pi 的镜像并未自带该工具。与其安装额外的软件包,不如让 OpenClaw 自己解析原始 JSON;现代 LLM 处理嵌套结构的能力足以应对大多数遥测查询。不要禁用 Ollama 插件 – Ollama 为本地语言模型提供运行时环境。禁用它会切断模型后端,导致 Agent 无法生成回复。即使你不使用它的额外工具,也要保持该插件处于启用状态。
在不牺牲实用性的前提下降低 Token 账单
在本地运行语言模型时,每当模型处理请求时仍会产生 Token 成本。通过两个实用的调整,我将使用量减少了约四分之一:
精简工具集 – OpenClaw 捆绑了一整套开发工具(代码执行、文件浏览等)。与船只相关的助手很少需要运行环境和文件系统访问之外的功能。切换到最小配置(minimal profile)可以减少不必要的 Token 消耗。
延长缓存保留时间 – 配置允许你在内存中更长时间地保留系统提示词和近期上下文。更长的缓存意味着模型不必在每条 Telegram 消息上重新编码相同的指令,从而节省了每次往返的 Token。
对于喜欢静默监控的用户,内置的 cron 功能可以按计划轮询关键传感器(电池电压、深度警报)。只有当超过阈值时,Agent 才会推送 Telegram 警报,从而保持聊天频道整洁。
谁是受益者,谁需要警惕
- 船主 获得了一个廉价的船载对话界面。无需订阅费,也不依赖蜂窝数据。
- 开源维护者 看到了一次真实的部署,它在受限的环境中对 OpenClaw 和 SignalK 都进行了压力测试,暴露了平时难以发现的 Bug。
- 云端 LLM 提供商 失去了一个利基市场细分,但他们在处理 Pi 无法应对的大规模推理或多模态输入方面仍具有优势。
主要的风险在于可靠性:电源故障或 Docker 崩溃可能会使助手失效。冗余设计(第二个 Pi、UPS 后备电源)可以缓解这个问题,但会增加成本。用户还应保管好 Telegram Bot Token;一旦 Token 泄露,任何人都可以查询船只的传感器。
下一步关注点
- 模型更新 – 随着更新、更高效的量化模型出现,它们将在 Pi 的 ARM 核心上运行得更快,从而进一步降低延迟。
- SignalK 扩展 – 社区构建的用于 AIS、雷达或天气预报的插件可以暴露给 LLM,从而扩大对话范围。
- 安全性加固 – 相关项目已经在尝试为 SignalK-OpenClaw API 提供端到端加密,这对于在公海航行的任何船只来说都是明智之举。
总结
在配备 SignalK 的 Raspberry Pi 5 上部署 OpenClaw,可以将一艘普通的船只转变为具备聊天功能的平台,但成功取决于能否保持网关模式、处理单位转换、启用历史记录存储,并保持 Ollama 插件持续运行。精简工具集并延长缓存保留时间以保持较低的 Token 使用量,并利用 cron 闹钟在没有重要事项时保持静默。其结果是一个低成本、实时的遥测助手,完全在船上运行,为水手提供聊天机器人的便利,而无需承担云服务的昂贵费用。
