2026年 OpenAI SDK 国内 API 示例代码配置指南:Python 与 Node.js 接入步骤拆解

2026年 OpenAI SDK 国内 API 示例代码配置指南:Python 与 Node.js 接入步骤拆解 2026年 OpenAI SDK 国内 API 示例代码配置指南:Python 与 Node.js 接入步骤拆解 在国内环境用 OpenAI SDK,最常见的卡点不是 SDK 本身,而是 base url、模型名和超时这三处配置。这三处对齐之后,Python 和 Node.js 的代码几乎是同一套逻辑。 下面把接入拆成可复制

2026年 OpenAI SDK 国内 API 示例代码配置指南:Python 与 Node.js 接入步骤拆解

2026年 OpenAI SDK 国内 API 示例代码配置指南:Python 与 Node.js 接入步骤拆解

在国内环境用 OpenAI SDK,最常见的卡点不是 SDK 本身,而是 base_url、模型名和超时这三处配置。这三处对齐之后,Python 和 Node.js 的代码几乎是同一套逻辑。

下面把接入拆成可复制的步骤:先在控制台确认接口信息,再分别用 Python 与 Node.js 跑通最小请求,最后给出上线前的自查清单。

一、接入前先确认的四项配置

OpenAI SDK 本身是通用客户端,真正决定请求发往哪里的是 base_url(Python)或 baseURL(Node.js)。国内接入通常把这两个值指向服务方提供的兼容接口地址,而模型名则以服务方控制台或文档中显示的调用名为准。字段写法、是否带 /v1 这类细节,建议直接照抄控制台给出的示例。

配置项作用检查方法
Base URL决定请求发往的接口地址复制控制台给出的地址,确认是否需要带 /v1
API Key身份识别与用量计费在控制台新建后保存为环境变量
模型名称决定调用哪个模型以模型列表或接入文档中的调用名为准
超时与重试影响长响应与弱网下的成功率结合 SDK 默认值和业务实测耗时调整

如果还没有可用的 Key 和接口地址,可以先到 通联AI中转站 注册,在控制台查看接口地址、可用模型与接入文档,再把下面的示例替换成自己的配置。

二、Python 接入 OpenAI SDK 的完整步骤

1. 安装依赖并设置环境变量

pip install openai

export OPENAI_API_KEY='你的 API Key'
export OPENAI_BASE_URL='控制台显示的接口地址'

把 Key 放在环境变量里,而不是直接写进脚本,可以避免误提交到代码仓库。

2. 最小可运行示例

from openai import OpenAI

client = OpenAI(
    api_key='你的 API Key',
    base_url='控制台显示的接口地址',  # 文档要求带 /v1 时写完整地址
    timeout=60,
)

resp = client.chat.completions.create(
    model='控制台显示的模型名',
    messages=[
        {'role': 'system', 'content': '你是一个简洁的技术助手。'},
        {'role': 'user', 'content': '用两句话说明什么是 API 中转。'},
    ],
)

print(resp.choices[0].message.content)
print(getattr(resp, 'usage', None))

能拿到返回文本,同时能看到 usage 字段,就说明链路是通的。usage 用于对账,正式业务里建议把每条请求的用量一起记录下来。

3. Python 常见报错对照

  • 401:Key 错误或未生效,检查环境变量是否被上层配置覆盖。
  • 404:接口地址或模型名不匹配,重点检查 /v1 后缀。
  • 超时:长文本或大模型响应较慢,适当提高 timeout,或改用流式输出。
  • 连接错误:本地网络出口或代理配置问题,先排除环境因素再改代码。

三、Node.js 接入步骤

1. 安装与最小示例

npm install openai
import OpenAI from 'openai';

const client = new OpenAI({
  apiKey: process.env.OPENAI_API_KEY,
  baseURL: process.env.OPENAI_BASE_URL,
  timeout: 60000,
});

const resp = await client.chat.completions.create({
  model: '控制台显示的模型名',
  messages: [{ role: 'user', content: '你好,做一次连通性测试。' }],
});

console.log(resp.choices[0].message.content);

2. 流式输出与错误处理

const stream = await client.chat.completions.create({
  model: '控制台显示的模型名',
  messages: [{ role: 'user', content: '讲一个技术小知识。' }],
  stream: true,
});

for await (const chunk of stream) {
  const text = chunk.choices[0]?.delta?.content ?? '';
  process.stdout.write(text);
}

Node.js 环境要特别注意未捕获的 Promise 拒绝。建议在调用外层加 try/catch,并把服务端返回的错误信息完整记录,否则日志里只会剩下一句笼统的失败提示,排查成本很高。

四、Python 与 Node.js 的差异与迁移注意

  • 参数命名:Python 用 base_url,Node.js 用 baseURL,写错会导致请求仍发往默认地址。
  • 返回值访问:两者结构基本一致,都是 choices[0].message.content。
  • 错误对象:Node.js 抛出的错误通常带状态码字段,便于按类型决定是否重试。
  • 并发模型:Node.js 天然异步,Python 处理高并发常需配合异步客户端或线程池。

跨语言迁移时,最容易被忽略的不是代码语法,而是接口地址、模型名和超时配置。这三项保持一致,两种语言的输出结果才能对齐,后续排查也不会互相干扰。

五、上线前的检查清单

  1. Key 存放在环境变量或密钥管理服务中,没有提交到代码仓库。
  2. 接口地址与模型名来自控制台当前显示的信息,而不是历史笔记或他人分享的片段。
  3. 日志中记录耗时、状态码与用量,便于对账和定位异常。
  4. 对超时、限流类错误设置退避重试,对参数类错误直接失败并告警。
  5. 先用小流量灰度,确认稳定后再逐步放大并发。

实操时可以用 通联AI中转站 的控制台做对照,确认接口地址与可用模型,再分别用 Python 和 Node.js 各跑一次最小示例,确保两种语言得到一致的返回结构,之后再接入正式业务逻辑。


代码已经准备好,缺的只是可用的接口地址和 Key。到通联注册后,可在控制台查看 Base URL、模型列表与文档说明,先跑通一次最小请求,再逐步迁移你的 Python 或 Node.js 项目。

进入通联控制台查看接口与模型