在VPS服务器上面安装OpenClaw并使用OpenRouter的免费API的一些“坑” | Some "pits" about installing OpenClaw and using OpenRouter's free API on a VPS server

这里只是记录一下安装和使用的过程,考虑到OpenClaw在快速迭代,可能在未来文章中提到的问题会被解决。

前段时间从ClawdBot改名到最后确定为OpenClaw,又有什么私人AI,安全问题,Mac Mini抢购之类的新闻,一个周末就爆发出来了,于是想着自己也跑一下。目前大致跑了起来了,看到相关的个人安装教程不多,官方的又自然不能适配各种情况,于是想着自己写一下回馈社区,毕竟自己搭博客等等的时候也是看了许多前面的安装经验的。

考虑到LLM的执行的不稳定性和已经确认的风险,不打算在本地跑,而是在远程VPS上面跑。看概念上说,如果是调取远程的API,服务器本身的性能没有那么重要,差不多有性能能跑起来就行了,于是直接在vultr上面就选了最便宜的版本,这里就遇到了第一个坑了。虽然运行没什么资源要求,使用官方的安装脚本的话,对内存还是有不少要求的,会出现内存问题无法安装,感觉是可以远程本地搞好之后再传到服务器上面,不过我对于nodejs不是很熟悉,所以就放弃了而是转成用我之前在香港的机器去安装。安装完之后看运行时的占用,是非常低的,感觉最低配的服务器也能跑起来的。

因为只是玩玩,没打算在上面投入什么,就打算用OpenRouter,这个上面,结果又遇到了第二个坑了。OpenRouter有一个auto的模式自动路由到合适的模型上,也有一个free的版本路由到free的模型上面去。但是,这两个名字输到openclaw的配置里面都不行,考虑到提供商的名字问题,尝试了openrouter/openrouter/freeopenrouter/free 都不行,一直提示Unknown model。然后想着是不是路由模型有不一样的格式导致OpenClaw无法识别,于是找到deepseek的一个标着free的模型填进去,也不行。最后发现好像OpenClaw支持的模型名字是固定的,只能是在配置列表里面的名字才可以,有些新的模型名字是没有的,所以到配置列表里面选了一个free的模型。但是还有问题,提示404 No endpoints found matching your data policy (Free model publication),按照指示在OpenRouter里面设置接受一些隐私相关的内容,才跑起来了。看起来还可以。

看介绍OpenClaw是支持ChatGPT和Claude的订阅的,Claude的部分是学校的授权,没有code的部分的授权,但是ChatGPT的部分是有codex的,但是没办法用提示受限,不知道是不是因为在服务器在香港的缘故,后面可能会加个代理出去看看能不能用,毕竟免费的API的模型选择和频率限制还是蛮多的。

关于设置方面,有一个Web UI的界面,可以localhost上面访问,但是因为我是在远程服务器上面跑的,所以自然不能localhost访问而是要实际ip地址访问,在服务器里面开放了端口和在运营商的安全组配置端口之后,还是无法访问,看起来是对于非本机的访问做了限制的,这方面安全风险还好。如果想要访问的话,按照官网上的ssh的端口绑定就可以了,之后在本地服务器localhost可以直接访问了。

在通讯软件配置上面,我选了Telgram,按指引一步一步走没遇到什么问题,就不多说了。

目前虽然跑起来对了,但是很多相关的skills之类的配置还没搞,应该会继续完善,后面可能再写一篇相关的设置。