Appearance
常见问题与已知限制
Q:返回 401。 A:设了 PROXY_API_KEY,但客户端没带对。key 要放在 Authorization: Bearer <key> 或 x-api-key: <key> 里。
Q:浏览器里报 403 origin_not_allowed。 A:这是防护生效。只有回环来源的页面能直接调它;把一个部署在公网的网页指向 127.0.0.1:3100,浏览器发出的 Host / Origin 不再是回环,就会被拒。要放行得显式配 ALLOWED_ORIGINS / ALLOWED_HOSTS,并且先想清楚为什么。
Q:模型返回了 tool_calls,但内容是一坨纯文本。 A:工具调用是提示词注入 + 文本解析实现的,不是原生 function calling。模型没按要求的 JSON 结构输出时,代理会把这段内容降级成普通文本返回。遇到这种情况换个模型标识或把工具描述写得更直白。
Q:tool_calls 里的参数 JSON 要等整个回答结束才有。 A:是的,解析结果在流结束时才补齐。边流边取参数的用法在这个代理上行不通。
Q:Chat Test 页要等很久才一次性出结果。 A:Chat Test 页不走流式,它把整个回答收完再显示。想验证流式行为,用真实客户端发。
Q:并发一高就变慢甚至超时。 A:每个请求会起一个独立的 CLI 子进程,没有连接池。子进程本身要排队,超时默认在分钟级(见配置项的 QODERCN_TIMEOUT_MS)。
Q:Usage 页的数字能当账单看吗? A:不能。它按字符长度估算(约 3 字符折 1 token)记在本机,官方配额读数没有实现,officialQuota.supported 就是 false。清零只影响本机统计。
Q:Windows 上长提示报截断。 A:cmd.exe 单条命令有 8191 字符上限,长提示走命令行会被切。这是平台限制,仓库里已按参数方式绕开,但仍可能碰到。
Q:我传了一个不认识的模型名,为什么不报错? A:未知标识会回落到默认路由而不是拒绝请求。这是兼容性优先的取舍,代价是"你以为在用 A 模型,实际用的是默认路由"。调试时先在 Models 页核对标识。
Q:能不能给团队同事一起用? A:不建议,也不支持。它按本机自用设计:没有多租户、没有限流、没有配额隔离,任何能碰到端口的人都在花你的配额。
Q:ChatGPT 官方 App 里加不了它? A:官方 App 不允许添加自定义 provider,这是 OpenAI 客户端侧的限制,不是代理的问题。
Q:这个项目和上游是什么关系? A:本仓库是 avaritiachaos/qoder-proxy 的二次开发版本,MIT 协议,上游与二开两方版权都在 LICENSE 里保留。二开部分的维护与答疑由本仓库负责,请不要把问题提到上游去。
Q:它会把我的对话内容发到哪儿? A:请求经 CLI 发往 Qoder 官方服务(qoder.com / qoder.com.cn),这与你自己用 CLI 时完全一致;代理本身在回环地址上,不额外上传内容,usage.json 里也不保存提示词、回答或令牌正文。