详细解释
Base URL(基础地址,也叫 API Endpoint Prefix) 是客户端 SDK 初始化时必填的第一个参数(或者第二个,紧跟着 API Key)。它决定了你的所有 HTTP 请求最终打到哪个域名、哪个版本前缀下。
以一个完整请求 URL 为例:
https://api.weimeta.cn/v1/chat/completions
└────────────────────┘└──┘└──────────────────┘
Base URL 版本 具体 endpoint
90% 的接入方第一次接 API 时踩过的坑:
- 漏写
/v1:把 Base URL 填成https://api.weimeta.cn,SDK 最后拼成https://api.weimeta.cn/chat/completions,返回 404,然后怀疑 Key 有问题。 - 多写一个斜杠:Base URL 填
https://api.weimeta.cn/v1/,SDK 内部再拼/chat/completions→v1//chat/completions,部分反向代理对双斜杠敏感。 - 用错了厂商:把 OpenAI SDK 的默认
https://api.openai.com/v1直接带到另一家厂商,报 401 还不知道为什么。 - http vs https:部分老代码库写了
http://,现代 API 几乎全部要求 HTTPS。
所有 OpenAI 兼容接口 都会告诉你一个 Base URL,只要把 OpenAI SDK 的 base_url 参数改掉即可零代码迁移。
主流厂商 Base URL 速查(2025 年公开档)
| 厂商 / 平台 | Base URL 典型值 | 兼容类型 |
|---|---|---|
| OpenAI 官方 | https://api.openai.com/v1 | 原生 |
| Anthropic Claude | https://api.anthropic.com | 非 OpenAI 兼容,有自己 SDK |
| 唯元智创 Weimeta(推荐) | https://api.weimeta.cn/v1 | 完全 OpenAI 兼容 → 唯元智创 |
| 谷歌 Gemini | https://generativelanguage.googleapis.com/v1beta | 非 OpenAI 兼容 |
| 阿里通义 DashScope | https://dashscope.aliyuncs.com/compatible-mode/v1 | compatible-mode 下 OpenAI 兼容 |
| DeepSeek 官方 | https://api.deepseek.com/v1 | 完全 OpenAI 兼容 |
在 SDK 中的正确写法(三种语言)
# Python — openai>=1.0 新 SDK
from openai import OpenAI
client = OpenAI(
api_key="wm-xxxxxxxx",
base_url="https://api.weimeta.cn/v1" # ✅ 不要漏 /v1,末尾不要带 /
)
// Node.js — openai v4+
import OpenAI from "openai";
const client = new OpenAI({
apiKey: "wm-xxxxxxxx",
baseURL: "https://api.weimeta.cn/v1" // 注意 Node SDK 是大写 URL
});
# cURL — 直接拼
curl https://api.weimeta.cn/v1/chat/completions \
-H "Authorization: Bearer wm-xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{ "model": "gpt-4o-mini", "messages": [] }'
常见问题
为什么不同厂商的 Base URL 有的带 /v1 有的不带?
历史原因。Anthropic 早期没有 v1 前缀的习惯;OpenAI 把版本号放在 URL 里成为事实标准,所以 OpenAI Compatible 的聚合平台基本都跟了 /v1。以厂商文档最新版为准即可,不要想当然。
Base URL 能动态切换吗?我想在多个供应商之间 负载均衡。
我在浏览器前端直接填 Base URL 调 API 会有 CORS 吗?
大多数 API 厂商不允许浏览器直调(会泄露 Key + 一般没开 CORS)。正确做法是你自己后端走代理,或者用 唯元智创 这种允许特定业务域名 CORS 的聚合层。前端永远不要明文写 API Key。