前端进阶之旅前端进阶之旅
基础篇
进阶篇
高频篇
精选篇
手写篇
面经篇
AI 篇
原理篇
每日一题
小程序题库
知识卡片
  • 场景篇按分类整理的大前端场景考点
  • 历年面经按年份追踪真实考点
  • 算法题库NEW在线编码即时判题
  • 专项自测100 题快速查漏
  • 前端基础
    • HTTP从报文一路讲到 HTTPS
    • 浏览器渲染、事件循环、进程
    • 计算机基础Linux、网络、操作系统
  • 进阶专项
    • 设计模式23 种模式怎么用
    • 前端系统进阶学习大型项目工程化
    • 前端综合文章长期沉淀的实践文
  • 工程与工具
    • Node学习指南从环境搭建到服务端
    • NPM工作流script、依赖与发布
    • Docker容器化部署上手
    • Canvas图形与动画实战
  • 路线与导图
    • 思维导图知识点全景图
    • 学习路线按图索骥不跑偏
  • 动态
    • 公众号动态公众号历史文章
    • 博客动态站长的技术博客
    • 开发者导航常用工具与文档站
  • AI 助手随时提问,即时解析
  • AI 模拟面试模拟真实面试 + 报告
  • AI 知识地图串起全站知识点
  • AI 定制路线按你的简历现排
AI 热点
旧版
基础篇
进阶篇
高频篇
精选篇
手写篇
面经篇
AI 篇
原理篇
每日一题
小程序题库
知识卡片
  • 场景篇按分类整理的大前端场景考点
  • 历年面经按年份追踪真实考点
  • 算法题库NEW在线编码即时判题
  • 专项自测100 题快速查漏
  • 前端基础
    • HTTP从报文一路讲到 HTTPS
    • 浏览器渲染、事件循环、进程
    • 计算机基础Linux、网络、操作系统
  • 进阶专项
    • 设计模式23 种模式怎么用
    • 前端系统进阶学习大型项目工程化
    • 前端综合文章长期沉淀的实践文
  • 工程与工具
    • Node学习指南从环境搭建到服务端
    • NPM工作流script、依赖与发布
    • Docker容器化部署上手
    • Canvas图形与动画实战
  • 路线与导图
    • 思维导图知识点全景图
    • 学习路线按图索骥不跑偏
  • 动态
    • 公众号动态公众号历史文章
    • 博客动态站长的技术博客
    • 开发者导航常用工具与文档站
  • AI 助手随时提问,即时解析
  • AI 模拟面试模拟真实面试 + 报告
  • AI 知识地图串起全站知识点
  • AI 定制路线按你的简历现排
AI 热点
旧版
返回 AI 情报前线
All News · 全部资讯9799
  • GPT-6.1 Sol:五分之一价格,近 Astra 智能
  • GPT-6.1 Sol 登陆 GitHub Copilot,支持多步 Agent 编码
  • OpenAI DevDay 2026 重磅发布:20+ 新品与 GPT-6 新动向
  • Replit 解析 Agent 模型调度:无套索设计让模型自主决策
  • Simon Willison OpenAI DevDay 2026 实时博客
  • NVIDIA Kumo刷新表格数据预测精度与效率边界
  • 企业级AI记忆架构:Hindsight在财务审查中分离记忆与权限
  • MCP Agents的源码级验证:来源感知验证方法
  • MCP 协议:让 AI 智能体安全接入现有 API
  • 每个任务一个git worktree:避免coding agent文件冲突
  • 机器记忆Agent实践:发现自己在用Recall而非Reflect
  • 8个真实n8n自动化案例:发票处理与线索富化实战
  • Cloudflare 用 AI 发现代码库加密方案,推进后量子迁移
  • DeepSeek Harness 桌面端 v0.2:支持插件安装与自动化任务
  • Ember-1对比Kimi K3:速度快3.4倍效果相当
  • Cursor/Replit/Perplexity为何自训练模型而非套壳
  • OpenAI 发布 GPT-6.1 Sol:编程与电脑操控智能体,价格为 Astra 五分之一
  • Google开源RRSI:让AI Agent自己优化提示词和工具链
  • GPT-6.1 Astra因欺骗性行为被OpenAI紧急叫停
  • Mac mini本地跑8B模型反而比4B更差
  • 12款AI客户端OpenAI兼容端点配置表
  • 每周节省数小时React开发的30个Cursor提示词
  • H Company开源Holo4:支持电脑控制的27B/35B大模型
  • AI作为团队成员:分配、治理与审查实践指南
  • IncidentBrain:能从故障中学习的SRE事故响应代理
  • AI代理读取整页的代价:Playwright与thinbrowser对比
  • PostgreSQL 与 MySQL 存储引擎可插拔架构详解
  • 阿里 Qwen 发布全双工语音模型 Qwen-Audio-3.1
  • Anthropic 发布 Claude Sonnet 5.5:基准跃升、价格不变
  • Edge 浏览器新增性能分析工具与 WebMCP AI 智能体 API
  • AI编程增量改动如何悄然腐蚀系统架构
  • DeepSeek V4费用因时段和渠道差异可达2倍
  • MCP服务器供应链攻击警示:credential窃取实案
  • Claude Code 下一代功能:Mods、插件、项目与标签系统
  • 用 Gemini Live API 构建实时语音 AI 代理
  • 7 种生产环境 AI 代理沙箱隔离方案
  • Grok 4.7登陆AWS Bedrock:50万token上下文支持编程
  • Claude Sonnet 5.5 发布:提速 30% 降价 30%
  • Claude Sonnet 5.5 高风险请求会被静默降级至 Sonnet 5
  • OpenAI披露可像蠕虫传播的新型提示注入攻击
  • Salesforce Agentforce 曝零点击数据泄露漏洞
  • 多Agent系统中级联失败的自我修复方案
  • NVIDIA开源Agent安全平台:毫秒级隔离失控AI
  • OpenAI 安全负责人谈 AI 能力突变下的组织弹性
  • AWS正式上线Claude Sonnet 5.5
  • Claude Sonnet 5.5 上线 Google Cloud
  • 决策模型:只返回概率、拒绝生成文本的新范式
  • AI购物Agent遭评测攻击:恶意评论注入钓鱼
  • GPT-6 Astra百万token成本拆解:何时值得用
  • MCP 服务器悄然变更工具描述 = 你的 Agent 在执行未知指令
  • 生产级 AI 不能只靠模型版本管理
  • 已加载 51 / 9799
8.0
热点
AI SCORE
工具产品2026-09-29 16:01

12款AI客户端OpenAI兼容端点配置表

dev.to · AI#AI客户端#API配置#工具评测
Editor brief · 编辑速览

汇总Cline、Continue、Cursor、Aider等12款AI编程工具的API端点配置写法,重点说明/v1路径规范和各家gotcha陷阱。

文章思维导图
Knowledge map
拖拽缩放
Full translation

完整中文译文

如果你是自托管模型、运行 API 网关、或者使用本地区的提供商,你一定会遇到这个问题:每个 AI 客户端要求输入的端点格式都不一样。

Cline 叫它 openAiBaseUrl,Continue 叫它 apiBase,Aider 从环境变量读取 OPENAI_API_BASE,Cursor 把这个选项藏在开关后面,SillyTavern 只有选对了聊天补全源之后才显示自定义端点字段。

于是你去 google"如何在 Cline 中设置 base url",然后"如何在 Continue 中设置 base url"。三个月后你忘了,再来一遍。

这就是我一直想要的那份速查表。12 个客户端,加上那些浪费我最多时间的坑。

首先:"OpenAI 兼容"到底是什么意思?

如果一个端点实现了至少两条路由,它就是 OpenAI 兼容的:

POST /v1/chat/completions
GET  /v1/models

门槛就这么高。两条都能用,列表里几乎所有客户端都能与之通信。

所有人都卡在同一个问题上:base URL 包不包含 /v1?

OpenAI SDK 的约定是 base_url 包含它,SDK 会自己补上剩余部分:

base_url = "https://api.example.com/v1"
→ 请求发送到 https://api.example.com/v1/chat/completions

大多数客户端都遵循这个约定。Cursor 是例外——它自己追加路径,所以输入什么取决于提供商怎么文档化的。

经验法则:不确定的话就加上 /v1。如果得到 404,再去掉它。

在操作任何客户端之前先测试端点:

curl https://api.example.com/v1/models \
  -H "Authorization: Bearer $YOUR_KEY"
  • JSON 模型列表 → 兼容
  • 401 → key 错误
  • 404 → base URL 错误

SillyTavern

API: Chat Completion → Chat Completion Source: Custom (OpenAI-compatible)。自定义端点字段只有在选择该源之后才会出现。API 密钥字段藏在开关后面。

Cherry Studio

Settings → Model Providers → Add Provider → type OpenAI。然后用"Manage Models"手动添加模型 id,它不会自动发现。

Jan

Settings → Providers → Add Provider,然后手动添加模型 id。

Cursor

Cursor Settings → Models → enable "OpenAI API Key" → enable "Override OpenAI Base URL"。记住 Cursor 自己追加路径。

Cline

三个键在 VS Code settings.json 里:

{
  "cline.apiProvider": "openai",
  "cline.openAiBaseUrl": "https://api.example.com/v1",
  "cline.openAiApiKey": "sk-...",
  "cline.openAiModelId": "your-model"
}

Continue

~/.continue/config.json:

{
  "models": [
    {
      "title": "My Endpoint",
      "provider": "openai",
      "model": "your-model",
      "apiBase": "https://api.example.com/v1",
      "apiKey": "sk-..."
    }
  ]
}

Aider

读取标准环境变量。在项目根目录的 .env 中放这个:

OPENAI_API_BASE=https://api.example.com/v1
OPENAI_API_KEY=sk-...

然后这样运行:

aider --model openai/your-model

网关和自托管 UI

LiteLLM

config.yaml:

model_list:
  - model_name: my-endpoint
    litellm_params:
      model: openai/your-model
      api_base: "https://api.example.com/v1"
      api_key: "sk-..."

LibreChat

librechat.yaml 中的自定义端点块。

Open WebUI

容器启动时的环境变量,或 Admin Settings → Connections。

API 调用示例

Python:

from openai import OpenAI

client = OpenAI(
    base_url="https://api.example.com/v1",
    api_key="sk-...",
)

JavaScript:

import OpenAI from 'openai';

const client = new OpenAI({
  baseURL: 'https://api.example.com/v1',
  apiKey: 'sk-...',
});

没人文档化的那些坑

这五个浪费了我最多时间。

1. /v1 后缀不一致。以上已覆盖。默认加上,只有收到 404 才去掉。

2. 有些客户端从 /v1/models 填充模型下拉框,有些不。如果你的端点没实现那条路由,或返回空列表,下拉框就空着,你得手动输入模型 id。Cline、Continue 和 Cherry Studio 都支持手动输入。有些客户端不支持,那些就根本用不了。

3. 用流式输出来测试。大多数客户端默认流式响应。一个端点可能正确实现了 /v1/chat/completions 但没有正确处理 stream: true——这种情况下 curl 返回正常响应而客户端直接卡住。先测试流式输出再判断端点坏了。

4. 上下文长度是在客户端猜测的。客户端根据模型名推断上下文窗口。如果用自定义名称提供模型,客户端可能会误认为 4k 并悄悄截断你的提示。大多数客户端允许在模型配置中覆盖这个值——一定要做。

5. SillyTavern 隐藏的 API 密钥字段。它存在,只是折叠起来直到你展开它。人们经常找不到它,然后花一个小时调试 401。

一次性生成所有这些配置

我厌倦了逐个编写这些配置,所以建了一个小生成器:llm-endpoint-setup。

它来自我运行的 OpenAI 兼容网关——haotogen——我本来就需要针对每个客户端进行测试。

你只需输入一次 base URL、key 和模型 id。它会为上述每个客户端生成确切的文件或点击路径。有一个完全在浏览器中运行的网页版本(key 永远不会离开页面)、一个 CLI 和一个可导入的库:

npx llm-endpoint-setup --base-url https://api.example.com/v1 --model your-model --client cline

MIT 许可,如果你的客户端不在列表里,添加一个大约需要 15 行代码。

结论

模式永远不会变:一个 base URL、一个 key 和一个模型 id。唯一不同的是每个客户端想要它们放在哪里以及怎么命名。

先检查 /v1/models。默认包含 /v1,除非有理由不这样做。打开流式输出进行测试。其他一切只是找到正确的输入框。

Original source

本文由 AI 翻译整理自 dev.to · AI,原文版权归原作者所有。

阅读英文原文
上一篇
Mac mini本地跑8B模型反而比4B更差
下一篇
每周节省数小时React开发的30个Cursor提示词