欢迎光临
我们一直在努力

OpenAI 兼容 API / Claude 兼容 API 配置教程:Base URL、API Key、curl、Python、Node.js

摘要

配置 OpenAI 兼容 API 或 Claude 兼容 API 时,最容易出错的地方通常不是代码,而是 Base URL、API Key、模型名和请求路径。

本文用 51relay 作为示例,整理一套从 curl 测试到 Python / Node.js 调用,再到常见错误排查的完整流程。示例里的服务地址可以替换成你自己的兼容 API 服务。

一、OpenAI 兼容 API 和 Claude 兼容 API 的区别

很多 AI 工具会支持自定义 API 地址,但不同协议填写方式不一样。

OpenAI 兼容接口通常使用:

https://你的51relay域名/v1

常见请求路径:

/models /chat/completions

Claude 兼容接口通常使用:

https://你的51relay域名

常见请求路径:

/v1/messages

简单理解:

OpenAI 兼容:更常用于 Chatbox、Open WebUI、Codex、Python / Node.js SDK Claude 兼容:更常用于 Claude Code 或 Anthropic 风格请求

二、准备 Base URL 和 API Key

调用前需要准备:

Base URL:API 服务地址 API Key:接口认证密钥 模型名:服务端支持的模型名称

以 51relay 为例:

OpenAI 兼容 Base URL: https://你的51relay域名/v1 Claude 兼容 Base URL: https://你的51relay域名

注意:

  • API Key 不要写进公开仓库。
  • Base URL 不要多写或少写 /v1。
  • 模型名以接口返回为准,不要凭经验猜。
  • 三、curl 测试 OpenAI 兼容 API

    先设置环境变量:

    export RELAY_BASE_URL="https://你的51relay域名/v1" export RELAY_API_KEY="sk-xxxxxxxxxxxxxxxx"

    测试模型列表:

    curl -sS "$RELAY_BASE_URL/models" \\ -H "Authorization: Bearer $RELAY_API_KEY"

    如果返回模型列表,说明地址和 Key 基本没问题。

    再测试最小对话:

    curl -sS "$RELAY_BASE_URL/chat/completions" \\ -H "Authorization: Bearer $RELAY_API_KEY" \\ -H "Content-Type: application/json" \\ -d '{ "model": "你的模型名", "messages": [ { "role": "user", "content": "你好,请回复一句:接口已接通" } ] }'

    建议先跑这个最小请求,再接入真实项目。

    四、curl 测试 Claude 兼容 API

    设置环境变量:

    export CLAUDE_BASE_URL="https://你的51relay域名" export CLAUDE_API_KEY="sk-xxxxxxxxxxxxxxxx"

    发送最小请求:

    curl -sS "$CLAUDE_BASE_URL/v1/messages" \\ -H "x-api-key: $CLAUDE_API_KEY" \\ -H "anthropic-version: 2023-06-01" \\ -H "content-type: application/json" \\ -d '{ "model": "你的 Claude 模型名", "max_tokens": 256, "messages": [ { "role": "user", "content": "你好,请回复一句:Claude 接口已接通" } ] }'

    这里要注意两个 Header:

    x-api-key anthropic-version

    如果 Header 写错,可能会出现 401 或 400。

    五、Python 调用 OpenAI 兼容 API

    安装:

    pip install openai

    代码示例:

    from openai import OpenAI client = OpenAI( api_key="sk-xxxxxxxxxxxxxxxx", base_url="https://你的51relay域名/v1" ) resp = client.chat.completions.create( model="你的模型名", messages=[ { "role": "user", "content": "你好,请回复一句:接口已接通" } ] ) print(resp.choices[0].message.content)

    常见问题:

  • base_url 少写 /v1
  • Key 写错
  • model 不存在
  • 代码环境里还残留旧的环境变量
  • 六、Node.js 调用 OpenAI 兼容 API

    安装:

    npm install openai

    代码示例:

    import OpenAI from "openai"; const client = new OpenAI({ apiKey: "sk-xxxxxxxxxxxxxxxx", baseURL: "https://你的51relay域名/v1" }); const response = await client.chat.completions.create({ model: "你的模型名", messages: [ { role: "user", content: "你好,请回复一句:接口已接通" } ] }); console.log(response.choices[0]?.message?.content);

    Node.js 里注意是 baseURL,不是 base_url。

    七、Codex 配置示例

    保存 API Key:

    export FIFTYONERELAY_API_KEY="sk-xxxxxxxxxxxxxxxx"

    编辑配置:

    mkdir -p ~/.codex nano ~/.codex/config.toml

    写入:

    [model_providers.51relay] name = "51relay" base_url = "https://你的51relay域名/v1" env_key = "FIFTYONERELAY_API_KEY" wire_api = "chat" [profiles.51relay-gpt54] model_provider = "51relay" model = "gpt-5.4" [profiles.51relay-gpt55] model_provider = "51relay" model = "gpt-5.5"

    启动:

    codex –profile 51relay-gpt54

    八、Claude Code 配置示例

    设置环境变量:

    export ANTHROPIC_BASE_URL="https://你的51relay域名" export ANTHROPIC_AUTH_TOKEN="sk-xxxxxxxxxxxxxxxx" export ANTHROPIC_MODEL="claude-sonnet-4-5"

    启动:

    claude

    如果要长期保存:

    cat >> ~/.zshrc <<'EOF' export ANTHROPIC_BASE_URL="https://你的51relay域名" export ANTHROPIC_AUTH_TOKEN="sk-xxxxxxxxxxxxxxxx" export ANTHROPIC_MODEL="claude-sonnet-4-5" EOF source ~/.zshrc

    九、常见错误

    1. 401

    常见原因:

  • API Key 复制错
  • Header 写错
  • 环境变量没有生效
  • 使用了旧 Key
  • 检查:

    echo "$RELAY_API_KEY" echo "$FIFTYONERELAY_API_KEY" echo "$ANTHROPIC_AUTH_TOKEN"

    2. 404

    常见原因:

  • Base URL 填错
  • OpenAI 兼容接口漏了 /v1
  • Claude Code 的基础地址写成了完整路径
  • 建议:

    OpenAI 兼容:填 https://你的51relay域名/v1 Claude Code:填 https://你的51relay域名

    3. model not found

    常见原因:

  • 模型名写错
  • 模型没有在当前账号开放
  • 工具里配置了旧模型名
  • 先查模型:

    curl -sS "$RELAY_BASE_URL/models" \\ -H "Authorization: Bearer $RELAY_API_KEY"

    然后复制返回结果里的模型名。

    4. timeout

    常见原因:

  • 网络访问慢
  • 请求内容太长
  • 上游响应慢
  • 客户端超时时间太短
  • 建议先用最短 prompt 测试。

    十、建议排查顺序

    确认 Base URL -> 确认 API Key -> 查询 /models -> 跑最小 curl -> 跑 Python / Node.js 示例 -> 再接入 Codex / Claude Code

    这样能把问题拆开,避免同时排查工具、网络、模型名和 Key。

    十一、总结

    OpenAI 兼容 API 和 Claude 兼容 API 的配置,关键就是:

  • Base URL 写对
  • API Key 写对
  • 模型名写对
  • 先用 curl 最小请求验证
  • 本文用 51relay 作为 GPT / Claude API 中转示例。51relay 只做 GPT / Claude 中转,支持 OpenAI 兼容和 Claude 兼容接入,适合开发测试、AI 工具配置和自动化工作流调用。

    赞(0)
    未经允许不得转载:171主机测评 » OpenAI 兼容 API / Claude 兼容 API 配置教程:Base URL、API Key、curl、Python、Node.js
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址