Base URL 指 API 请求地址中固定不变的前半段,通常包含协议、域名与版本号。客户端把它与具体的 Endpoint 路径拼接后,才得到一次请求的完整地址。官方 SDK 一般允许通过参数或环境变量覆盖 Base URL,这也是第三方兼容服务只需改一行配置就能接入的原因。

拆开看是怎么拼的

https://api.example.com/v1  +  /chat/completions
└────── Base URL ──────┘     └──── Endpoint ────┘

Base URL 决定请求发到哪台服务器,Endpoint 决定在那台服务器上做哪件事

和 Endpoint 的区别

这是最常见的混淆点:

Base URLEndpoint
变化频率一个服务通常只有一个每种功能一个
决定什么请求发给谁请求要做什么
谁来配置客户端初始化时设一次每次调用时选择

Base URL 不是完整请求地址,单独拿它去请求通常什么也得不到。

为什么它是兼容层的关键

官方 SDK 把 Base URL 做成了正式参数(也常支持对应的环境变量),所以第三方服务只要把自己的网关做成同样的接口形状,你改一行地址、换一把密钥就能连上。

但要注意:能连上只说明地址和认证对了,不代表参数行为一致。 兼容程度怎么逐项验证,见 OpenAI 兼容接口怎么判断

实践建议

把 Base URL 和密钥都做成配置项而不是写死在代码里。做到这一点之后,切换服务商是改配置而不是改代码,判断失误的代价会小得多。