返回 AI 资讯
社区讨论LinuxDo 最新

cline-pass 钉死上游

cline-pass 一个模型后面挂着好几家上游。同一个 deepseek-v4.1-flash,有时候是 DeepSeek 官方在服务,有时候是 fireworks 或者 novita。速度和质量差得不少,但客户端一般只让你选模型,不让你选是谁在服务。 这几天我把这块补上了:在本机架一个几百行的 Node 小代理,让指定的模型只允许走我指定的那几家渠道。 为什么客户端钉不了 Cline 网关认的字段是请求体里的 providerOptions.gateway.only(只许这几家)和 gateway.order…

内容摘要

作者:#剑十三 板块:#开发调优 cline-pass 一个模型后面挂着好几家上游。同一个 deepseek-v4.1-flash,有时候是 DeepSeek 官方在服务,有时候是 fireworks 或者 novita。速度和质量差得不少,但客户端一般只让你选模型,不让你选是谁在服务。 这几天我把这块补上了:在本机架一个几百行的 Node 小代理,让指定的模型只允许走我指定的那几家渠道。 为什么客户端钉不了 Cline 网关认的字段是请求体里的 providerOptions.gateway.only(只许这几家)和 gateway.order(按顺序优先)。这是网关侧的私有字段,不在 OpenAI 兼容的公开协议里,所以任何客户端的配置表单里都不会有对应的输入框。 但响应流里带着答案。流式返回的数据里有一串 "provider":"deepseek",告诉你这次是谁在服务。所以现状是:看得见,选不了。 我顺手试了另一家(opencode Zen)。它的 /v1/models 每个模型只有 created / id / object / owned_by 四个字段,/providers、/upstreams 这类接口全是 404,文档里也没提过它们,只说会替你把模型和渠道的组合测好、选好。它不是技术上做不到,是产品上没打算给你这个选择。 所以钉上游这件事得网关配合,客户端单方面干不了。 那就自己做一层 既然网关认那个字段、只是没人往里塞,那就补上: ZCode / 任意 OpenAI 兼容客户端 ↓ Base URL = http://127.0.0.1:3459/v1 本地小代理(pin-proxy.js) ↓ 补上 providerOptions.gateway.only,重算 content-length https://api.cline.bot/api 单文件,只用 Node 自带的 http 和 https,没有依赖。核心就这一段: function applyPin(body) { const prev = b

资讯来源

LinuxDo

原文链接

打开原文