我用绿联 NAS 搭了一个 AI 统一入口:CLI Proxy API 接入 NVIDIA大模型(保姆级教程)

前言

这段时间新模型出的实在太快了。MiniMax M2.7、Kimi K2.5、GLM-5.1,一个接一个,看得人总想都上手试试。可真正开始折腾之后才发现,麻烦的不是模型不够多,而是每个平台都有自己的 API 地址、密钥和接入方式,配来配去很容易把自己绕进去。

我后来干脆换了个思路:与其每接一个模型就改一次配置,不如先给自己搭一个统一入口。这样上游接 NVIDIA,后面想继续加别的平台也不麻烦;下游不管是聊天工具、知识库还是工作流,都只认我自己的地址和 Key,就不用反复改来改去了。

相信大家肯定听说过不少次CPA这篇文章就以绿联 NAS 为例,手把手带你把 CLI Proxy API 跑起来,再把 NVIDIA 接进去,搭一个适合个人长期自用的 AI 统一入口。整个过程尽量按保姆级思路来写,跟着一步步做下来就行。

1 什么是 CLI Proxy API?

image-20260426155243224

开源项目地址:https://github.com/router-for-me/CLIProxyAPI

CLI Proxy API 本身不是模型,也不是某一家厂商的官方接口。你可以把它理解成放在上游模型服务下游客户端之间的一层统一代理。它的核心作用,就是把原本分散的模型入口收口起来,对外提供更统一的调用方式。官方 README 里也明确把它定义成一个提供 OpenAI / Gemini / Claude / Codex 兼容 API 的代理服务。

这类工具最有用的地方在于:你不用每接一个新模型,就去改一遍客户端配置。上游这边可以接 OpenAI、Gemini、Claude,也可以通过兼容方式继续接入其他 OpenAI-compatible 平台;下游这边不管是聊天工具、脚本、知识库还是工作流,只需要对接你自己的统一地址和 API Key 就够了。CLI Proxy API 官方也列出了对兼容客户端和 SDK、多账号访问,以及 OpenAI-compatible upstream 的支持。

对于个人自用场景来说,CLI Proxy API 比较实用的能力主要包括:

  • 兼容多种接口风格:支持 OpenAI、Gemini、Claude、Codex 兼容 API 形式,方便不同客户端统一接入。
  • 支持 OAuth 登录:目前支持 OpenAI Codex 和 Claude Code 等通过 OAuth 方式接入。
  • 多账号轮询与负载分担:支持部分上游的多账号 round-robin 负载均衡。
  • 支持流式输出、工具调用和多模态输入:官方 README 列出了 streaming / non-streaming、function calling / tools,以及文本和图片输入支持。
  • 支持 OpenAI-compatible 上游扩展:可以通过配置接入其他兼容 OpenAI 的服务,这也是后面接入 NVIDIA 时会用到的关键能力。
  • 内置管理页面:从较新版本开始,Web UI 已经随主程序一起提供,可以通过 management.html 进入,管理配置、API Keys、凭据、日志和用量。

简单来说,CLI Proxy API 更像是你自己的 AI 统一入口层。先把它部署到绿联 NAS 上,后面再把 NVIDIA 这样的上游接进去,整个使用和维护都会轻松很多。

2 环境准备:安装 Docker 并开启 SSH

CLI Proxy API 这套东西后面要靠 Docker 跑起来,所以正式开始之前,先把绿联 NAS 上的基础环境准备一下。这里不用折腾太多,先把两样东西弄好就行:一个是 Docker,另一个是 SSH。Docker 负责跑服务,SSH 则是为了后面方便直接进终端执行部署命令。

如果这两项你之前已经配过,那这一节可以直接略过,往下看部署部分就行。

2.1 安装 Docker

先进入绿联 NAS 首页,打开应用中心:
image-20260116184339833

打开之后,在里面搜索 Docker。找到应用后直接点安装,等它装完就可以了:
image-20260116184437287

装好之后,桌面上会多出一个 Docker 图标,说明容器环境已经准备好了:
image-20260116184741051

这里我建议顺手点进去看一眼,确认 Docker 能正常打开。因为后面 CLI Proxy API 的部署、启动和运行,都会用到它。

2.2 开启 SSH 并连接到 NAS

Docker 安装好之后,还需要开启 SSH,这样后面才能通过终端执行部署命令。

首先,需要先给绿联NAS开启SSH远程登录功能,点击首页的控制面板,然后点击终端机图标,点击进入:
image-20260423211056283

点击勾选SSH功能,然后点击应用(注意:SSH密码为登录的密码,建议密码一定要设置强密码,特别是公网环境下!!):
image-20260116180938327

开启完成后,在电脑端打开终端工具。Windows 可以直接使用 PowerShell,电脑上摁【Win + X】键,选择终端(管理员),macOS 和 Linux 则使用系统自带终端即可。然后输入下面的命令连接到你的 NAS:

# ssh 你的绿联NAS用户名@你的绿联NAS访问IP地址
ssh susu@192.168.50.99

image-20260116181936035

连接上绿联NAS的终端后,在终端中输入如下命令,切换至root用户:

sudo -i

image-20260116183450018

完成以上准备后,就可以正式开始部署 CLI Proxy API 了。

3 使用一键脚本部署 CLI Proxy API

前面的 Docker 和 SSH 都准备好之后,接下来就可以正式把 CLI Proxy API 部署到绿联 NAS 上了。

如果全程手动去搭,前面还得自己建目录、处理权限、准备配置文件,再一步步把容器跑起来。为了省掉这些重复操作,我这里把部署初期常用的步骤整理成了一个一键脚本,直接执行就能把基础环境先跑起来。

先在终端里执行下面这条命令:

curl -fsSL https://gitee.com/jun-wan/script/raw/master/cliproxyapi_deploy/cpa_docker_deploy.sh -o /tmp/cpa_docker_deploy.sh && chmod +x /tmp/cpa_docker_deploy.sh && /tmp/cpa_docker_deploy.sh

执行命令后,终端会先进入脚本初始化界面,如下图所示:

image-20260424222044954

这里选择 【1】,或者直接按回车使用默认配置即可。后面的几个步骤也是一样,如果你暂时不打算改默认参数,直接一路回车就能继续部署:
image-20260424222153195

等脚本执行完成后,终端里会输出部署结果,界面大致如下:
image-20260424222318611

这时候可以直接复制终端里显示的管理页面(登录地址),粘贴到浏览器中打开,就能进入 CLI Proxy API 的登录页面:
image-20260424222346770

然后再使用终端输出的管理员账号和密码登录后台,进入 CLI Proxy API 的管理界面:
image-20260424222413670

到这里,CLI Proxy API 就已经在绿联 NAS 上成功跑起来了。下一步,我们继续完成初始化配置,并把 NVIDIA 上游接进来。

4 注册登录 NVIDIA 获取API Key

前面的步骤只是把 CLI Proxy API 这个统一入口先搭起来,接下来才是真正把模型上游接进来。这里我先以 NVIDIA 为例,演示如何注册英伟达账号,获取 API Key,并完成上游接入配置。

4.1 注册并登录 NVIDIA 账号

英伟达模型页:https://build.nvidia.com/

前面已经把 CLI Proxy API 部署好了,接下来就可以开始准备上游渠道。这里先以 NVIDIA 为例,在正式接入之前,需要先准备好 NVIDIA 账号,并生成后面要用到的 API Key。NVIDIA Build 当前仍提供 Get API Key 入口,用于申请开发测试用的 serverless API。

首先,打开 NVIDIA Build 页面,点击右上角的 Login 按钮:

image-20260424161755696

如果你已经有 NVIDIA 账号,直接登录即可;如果还没有,就输入自己的邮箱地址,按页面提示继续注册:
image-20260424161853023

接下来按照页面提示设置密码,完成验证校验后,点击创建账户:
image-20260424162124345

创建完成后,系统会向你的邮箱发送一封验证邮件。登录邮箱获取验证码,按提示完成验证后继续下一步:
image-20260424162311197

完成邮箱验证后,页面通常还会要求补充一些基础资料,例如账号名称等,按提示填写即可:

image-20260424162502581

登录完成后,如果右上角出现 Verify 提示,再继续按页面引导完成账号验证:

image-20260424162926884

按提示填手机号进行验证,支持国内+86的手机号填写,验证完成后,这个账号就可以继续用来生成 API Key 了:
image-20260424163054975验证完成后就搞定啦!

4.2 获取 NVIDIA API Key

账号准备好之后,下一步就是生成 API Key。

点击右上角头像,在菜单中找到 API Keys,然后进入 Key 管理页面:

image-20260424163515480

进入后,点击 Generate API Key 按钮,先给这个 Key 起一个名字,再根据自己的需要选择有效期,然后生成即可:

image-20260424163714257

生成完成后,页面会给出一串 API Key。把它复制保存好,下一步回到 CLI Proxy API 后台配置 NVIDIA 上游时会用到,如下图:

image-20260424163815068

拿到 Key 之后,就可以继续下一步,把 NVIDIA 作为上游接入到 CLI Proxy API 中了。

5 在 CLI Proxy API 中添加 NVIDIA 上游

前面的 NVIDIA 账号和 API Key 都准备好之后,接下来就可以回到 CLI Proxy API 后台,把 NVIDIA 作为一个 OpenAI 兼容上游 接进来了。CLI Proxy API 官方文档里也专门提供了 OpenAI Compatibility Providers 这一类配置方式,用来接入兼容 OpenAI 接口风格的模型服务。

首先,在左侧菜单中找到 AI 提供商。然后向下滚动,在最下方找到 OpenAI 兼容提供商,点击右侧的 添加提供商 按钮。

image-20260426160606590

进入添加页面后,先给这个提供商起一个名称,方便后面区分。然后在 Base URL 一栏中填写 NVIDIA 的接口地址:

https://integrate.api.nvidia.com/v1

填好后,点击右侧的 从 /models 获取 按钮:

image-20260426161928772

点击之后,程序会尝试从当前填写的 Base URL 拉取可用模型列表。如果没有自动显示出来,也可以手动再点一次获取,然后全选模型列表,点击添加:

image-20260426162626070

模型添加完成后,继续向下滚动到页面底部,在 API Key 的位置填入前面在 NVIDIA 后台生成的密钥。然后任选一个刚刚添加的模型(推荐选择gpt-oss-120b),先做一次连接测试:
image-20260426163022558

如果页面提示 密钥测试通过,说明这条 NVIDIA 上游已经可以正常使用了。确认没有问题后,点击底部的 保存 按钮即可完成添加。

到这里,NVIDIA 就已经成功接入到 CLI Proxy API 里了。下一步,我们再用实际的模型调用测试一下,看看这条统一入口是否已经能够正常工作。CLI Proxy API 官方文档也说明,OpenAI 兼容提供商最终会通过标准的兼容接口方式进行模型调用。

6 接入客户端使用:这里以 OpenClaw 为例

前面在后台把 NVIDIA 上游测试通过之后,其实这套 CLI Proxy API 统一入口就已经能正式拿来用了。后面不管是接 OpenClaw、Hermes、Cherry Studio,还是 Open WebUI,整体思路都差不多:客户端不再直接对接 NVIDIA,而是统一走我们刚刚搭好的这套入口。

这样做的好处也很直接,后面如果你想增加新的模型渠道,或者替换某个上游,就不用再挨个修改客户端配置了,只需要在 CLI Proxy API 这一层调整即可。

下面我就以 OpenClaw 为例,实际演示一下客户端该怎么填写地址、API Key 和模型,把这套统一入口真正用起来。

6.1 获取CLI Proxy API 的调用密钥

在把 CLI Proxy API 接入客户端之前,先把后面要用到的统一 API Key 复制出来。

进入后台后,在左侧菜单中找到 配置面板,然后进入 认证配置 页面。在这里可以看到当前的 API 密钥列表,直接复制其中一条密钥即可使用;如果你想单独给某个客户端创建新的调用密钥,也可以在这里自行新增:image-20260426165207423

另外,页面下方 系统配置 中的 使用统计 开关也建议顺手打开,然后点击底部的保存按钮。这样后面在接入客户端并开始调用之后,就可以更方便地查看请求记录和使用情况:
image-20260426165502613

到这里,后面接入 OpenClaw 时要用到的 CLI Proxy API 统一 API Key 就准备好了。

6.2 在 OpenClaw 中填写地址和 API Key

这里我以本地 Windows 上已经安装好的 OpenClaw 为例,演示一下如何把前面搭好的 CLI Proxy API 统一入口接进去。

先在 Windows 的 CMDPowerShell 中执行下面这条命令,进入 OpenClaw 的配置向导:

openclaw configure

进入配置向导后,先选择 Local,然后进入 Model,接着选择 Custom Provider(自定义提供商),如下图所示:image-20260426172040881

接下来开始填写 CLI Proxy API 的连接信息,具体可以按下面的思路来配置:

  • API Base URL:填写你部署在绿联 NAS 上的 CLI Proxy API 地址,并在末尾加上 /v1
    例如:

    http://192.168.50.99:8317/v1
    
  • API Key:填写前面在 CLI Proxy API 后台复制出来的统一 API Key

  • Endpoint compatibility:选择 OpenAI-compatible

  • Model ID:填写你前面在 CLI Proxy API 中已经添加成功的模型名称

完整填写示例如下图所示:image-20260426172541933

这里有两个地方要特别注意:

第一,API Key 填的是 CLI Proxy API 的统一调用密钥,不是 NVIDIA 后台生成的原始 Key
第二,Model ID 也不要照抄固定示例,而是填写你前面在 CLI Proxy API 中实际接入成功的模型名称

当界面中出现 Verification successful. 提示时,就说明当前这组配置已经验证通过。最后选择 Continue (Done) 保存并退出即可。

到这里,OpenClaw 就已经成功接入到你自己搭好的 CLI Proxy API 统一入口中了。

6.3 在OpenClaw中对话测试一下

完成配置后,如果当前会话还没有切换到刚刚新增的模型,可以先重启一下网关,或者直接在网页端修改当前会话使用的模型,再发送一次 /new 重新开启新会话。处理好之后,就可以直接开始对话测试了。

这里我直接输入下面这段内容进行验证:

你运行在什么操作系统上,当前接入的是什么模型?你可以干什么?

如下图所示:
image-20260426174517656

可以看到,OpenClaw 已经能够正常返回回答,而且回复中也识别出了当前接入的模型信息,说明前面配置的 CLI Proxy API 统一入口已经生效了。

例如,这里返回的内容大致如下:

我运行在 Windows 11(内部版本 10.0.22621) 的 64 位环境上,GPU 是 RTX 2080 Ti。当前使用的模型是ustom‑192‑168‑50‑99‑8317/openai/gpt‑oss‑120b,这也是系统默认的模型。

我可以直接在工作区里读取、编辑和创建文件,执行 shell 命令,调度 cron 任务,搜索并抓取网页内容,控制浏览器进行交互,管理子会话(如代码生成子代理),以及使用 TTS、消息发送等工具。还有一些专门的技能(coding‑agent、healthcheck、weather 等)可以按需调用。有什么需要我帮忙的,尽管告诉我!

到这里,就说明 OpenClaw 已经成功通过 CLI Proxy API 接入了前面配置好的 NVIDIA 上游模型。后面无论你是继续接入其他客户端,还是再增加新的模型渠道,整体思路也都是类似的。

7 下载安装cpolar

前面这些步骤,其实已经把最核心的部分做完了:CLI Proxy API 跑起来了,NVIDIA 接进来了,客户端也能正常调用了。换句话说,这套 AI 统一入口在局域网里已经是能直接拿来用的状态。

接下来要解决的,就是“怎么让它不只局限在家里网络里”。如果你想在公司、咖啡店,或者其他外网环境下也能继续访问这套服务,那就需要借助内网穿透工具把它映射到公网。

这里推荐继续使用 cpolar 内网穿透。先把 cpolar 安装到绿联 NAS 上,后面再把 CLI Proxy API 的页面和接口穿透出去,这样就能实现公网访问了。

7.1 什么是cpolar?

image-20250910114418412

  • cpolar 是一款内网穿透工具,可以将你在局域网内运行的服务(如本地 Web 服务器、SSH、远程桌面等)通过一条安全加密的中间隧道映射至公网,让外部设备无需配置路由器即可访问。
  • 广泛支持 Windows、macOS、Linux、树莓派、群晖 NAS 等平台,并提供一键安装脚本方便部署。

7.2 安装cpolar

前面已经把 CLI Proxy API 部署好了,接下来就可以继续在绿联 NAS 上安装 cpolar,为后面的公网访问做准备。

先回到前面连接绿联 NAS 时使用的 PowerShell 终端,执行下面这条命令,一键安装 cpolar:

sudo curl https://get.cpolar.sh | sh

image-20260426180352143

安装完成后,再执行下面这条命令,检查 cpolar 服务是否已经正常启动:

sudo systemctl status cpolar

image-20260118213830382

如果终端中显示为 active (running),就说明 cpolar 当前已经处于正常运行状态。

确认服务启动成功后,在浏览器中输入:

绿联 NAS 的 IP 地址 + 9200 端口

就可以访问 cpolar 的 Web UI 管理页面了。

image-20260118213922836

可以看到页面能够正常打开,就说明 cpolar 已经安装完成,并且 Web UI 也可以正常访问。 如果你还没有注册 cpolar 账号,也可以直接在页面底部点击入口跳转注册。

8 穿透CLIProxyAPI页面以实现公网访问

前面把 cpolar 安装好并注册登录之后,接下来就可以开始为 CLI Proxy API 创建公网访问地址了。

登录 cpolar Web UI 后,进入左侧菜单中的 隧道管理 > 隧道列表。然后点击 创建隧道,新建一条用于访问 CLI Proxy API 的公网隧道:

隧道列表

创建时,先设置一个方便辨识的隧道名称,例如 cpa。然后按下面的方式填写参数:

  • 协议:选择 http

  • 本地地址:填写 CLI Proxy API 的实际运行端口
    例如前面部署时使用的是 8317,这里就填写:

    8317
    
  • 地区:这里选择 China Top

全部填写完成后,点击下方的 创建 按钮:

image-20260426182658783

创建成功后,继续进入 状态 > 在线隧道列表,就可以看到刚刚生成的公网访问地址。通常会同时生成两条记录,一条是 HTTP,另一条是 HTTPS

image-20260426182751020

这里直接复制其中一条公网地址进行访问测试。为了打开 CLI Proxy API 的管理页面,记得在公网地址后面拼接:

/management.html

例如:

https://你的公网地址/management.html

如下图所示:

image-20260426182900478

如果页面能够正常打开,就说明这条穿透已经生效了。接下来再输入前面设置好的管理密钥或登录信息,测试一下是否能够正常进入后台:
image-20260426182929292

成功进入 CLI Proxy API 管理页面后,就说明这套服务已经不仅能在局域网中访问,也可以通过公网地址进行远程管理了。

9 固定二级子域名(升级任意套餐皆可)

前面通过 cpolar 创建好公网隧道后,其实已经可以从外网正常访问 CLI Proxy API 的管理页面了。不过这里生成的公网地址通常是随机分配的,后面如果隧道重建或者地址发生变化,客户端里原来填写的访问地址也得跟着修改。

如果你希望后面长期稳定使用,或者想让客户端尽量做到“配一次就不怎么改”,那接下来更推荐再给这条隧道配置一个固定的二级子域名。这样后面无论是自己远程访问,还是接给其他工具使用,都会更方便一些。

首先,登录 cpolar 控制台,进入预留页面,然后选择其中的保留二级子域名。在这里填写好地区、名称以及描述(描述可以不填),最后点击保存即可:

https://dashboard.cpolar.com/reserved

操作步骤如下图所示:

image-20260426184508227

保留成功后,列表中会新增一条二级子域名记录,如我这里设置的为cpatest01。需要注意的是,二级子域名是唯一的,每个账号最终保留到的名称都不一样,请以你自己实际保留成功的名称为准。

接下来,回到本地 cpolar 管理界面,进入左侧菜单中的隧道管理 → 隧道列表,找到前面创建好的 cpa 隧道:

image-20260426184601209

点击右侧的【编辑】按钮,把域名类型改为“二级子域名”,在 Sub Domain 栏中输入你之前保存好的名称(例如 cpatest01),然后点一下 【更新】:

image-20260426184635124

更新完成之后,接着进入【状态】→【在线隧道列表】就可以看到公网地址由之前随机字符串变成现在固定的二级子域名形式:

image-20260426185348226

接下来同样记得在公网地址后面拼接 /management.html 再进行访问测试:
image-20260426185453850

如果页面能够正常打开,并且可以顺利进入 CLI Proxy API 的管理后台,就说明这条固定二级子域名已经配置成功了。这样后面无论是你自己远程管理,还是让客户端长期使用这个地址,都会稳定很多。

10 总结

到这里,我们就已经在绿联 NAS 上把 CLI Proxy API 跑起来了,并成功接入了 NVIDIA 上游模型,还通过 OpenClaw 做了实际调用测试。这样一来,这套服务在局域网里已经可以正常使用;如果再配合 cpolar 做公网穿透和固定二级子域名,后面不管是在外网远程访问,还是接给其他客户端长期使用,都会方便很多。

  • 先在绿联 NAS 上完成 Docker、SSH、CLI Proxy API 和 cpolar 的基础部署,把整个运行环境搭起来。
  • 再到 NVIDIA 这边注册账号、申请 API Key,并在 CLI Proxy API 后台通过 OpenAI 兼容提供商的方式把上游接进去。
  • 最后把这套统一入口接入 OpenClaw 进行测试,再配合 cpolar 做公网穿透和固定二级子域名,整个链路就算真正跑通了。

整体来看,这套方案最适合的就是像你我这样想把多个模型入口统一起来、又不想在每个客户端里反复改地址和 Key 的场景。后面如果你还想继续接入 Cherry Studio、Open WebUI、Hermes 之类的工具,思路其实也都是类似的:统一走 CLI Proxy API 这一层就够了。

感谢阅读本文,如果有任何问题可以留言交流。 cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站

Share:

发表回复

目录

On Key

推荐文章