OpenAI Compatible API Base URL 配置指南 — 各语言 SDK 与框架
OpenAI compatible API base URL 配置方法:Python/Node/Go SDK、LangChain、LlamaIndex、Cursor、Continue 等框架怎么改 base_url 接入第三方 OpenAI 兼容服务,附常见配置错误排查。
几乎所有 AI 工具都支持 OpenAI 兼容接口。接入第三方服务(如没猫饼)只需要改两个东西:base URL 和 API Key。本页汇总各语言和框架的配置方法。
核心:三个值
各语言 SDK
Python(openai 库)
from openai import OpenAI
client = OpenAI(
api_key="sk-你的Key",
base_url="https://api.meimaobing.ai/v1",
)
Node.js / TypeScript
import OpenAI from "openai";
const client = new OpenAI({
apiKey: "sk-你的Key",
baseURL: "https://api.meimaobing.ai/v1",
});
Go
config := openai.DefaultConfig("sk-你的Key")
config.BaseURL = "https://api.meimaobing.ai/v1"
client := openai.NewClientWithConfig(config)
curl
curl https://api.meimaobing.ai/v1/chat/completions \
-H "Authorization: Bearer sk-你的Key" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-5.6-terra","messages":[{"role":"user","content":"hi"}]}'
主流框架
LangChain(Python)
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(
model="gpt-5.6-terra",
api_key="sk-你的Key",
base_url="https://api.meimaobing.ai/v1",
)
LlamaIndex
from llama_index.llms.openai_like import OpenAILike
llm = OpenAILike(
model="gpt-5.6-terra",
api_key="sk-你的Key",
api_base="https://api.meimaobing.ai/v1",
)
Cursor / Continue 等 IDE 工具
在设置的「自定义 OpenAI Base URL」填 https://api.meimaobing.ai/v1,API Key 填 sk- 开头的 Key。
Claude Code
export ANTHROPIC_BASE_URL="https://api.meimaobing.ai"
export ANTHROPIC_AUTH_TOKEN="sk-你的Key"
注意:Anthropic 端点的 base URL 不带 /v1(SDK 自己拼 /v1/messages)。
Codex CLI
~/.codex/config.toml:
model_provider = "meimaobing"
model = "gpt-5.6-terra"
[model_providers.meimaobing]
name = "Meimaobing"
base_url = "https://api.meimaobing.ai/v1"
wire_api = "responses"
requires_openai_auth = true
常见配置错误
401 Unauthorized
- Key 打错了(少了
sk-前缀或多了空格) - Key 被删除/禁用——控制台确认状态
- 环境变量没生效(
echo $OPENAI_API_KEY检查)
404 Not Found
- base URL 少了或多了一截。正确:
https://api.meimaobing.ai/v1(带/v1,不带尾部斜杠) - Anthropic 端点不带
/v1:https://api.meimaobing.ai
invalid model
- model 名不在模型目录里。注意精确拼写(如
gpt-5.6-terra不是gpt5.6terra)
超时
- 检查本地网络;生成长内容时加
timeout参数(有些 SDK 默认 30s 不够)
