OpenAI SDK 快速开始
本指南会把官方 OpenAI SDK 指向 AISIX AI 网关,而不是直接向上游服务提供方发送请求。这种方式适合已经使用兼容 OpenAI Chat Completions 格式、并希望尽量少改客户端代码的应用。
示例会使用调用方 API Key 向 AISIX 认证,把请求发送到 AISIX 代理 API 根路径,使用 AISIX 模型别名,并接收兼容 OpenAI 的 Chat Completions 响应。只要配置的模型别名和服务提供方支持对应请求格式,上游服务提供方仍可在网关后切换。
准备工作
- 完成自托管快速开始。
- 安装 Node.js 20 LTS 或更新版本,并确保包含
npm。
配置 SDK
创建一个小型 Node.js 项目,安装 SDK,并将其指向 AISIX 代理 API 根路径。
安装 SDK
创建一个小型演示项目:
mkdir aisix-openai-demo && cd aisix-openai-demo
npm init -y
在演示项目中安装 OpenAI SDK:
npm install openai
设置示例要使用的网关参数:
# Replace with your values
export AISIX_API_KEY="YOUR_CALLER_API_KEY"
export AISIX_MODEL="gpt-4o-mini"
export AISIX_BASE_URL="http://127.0.0.1:3000/v1"
创建聊天示例
使用 .mjs 扩展名,这样 Node 无需额外配置即可把顶层 await 和 import 当作 ES 模块处理。
openai-sdk-example.mjs
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.AISIX_API_KEY,
baseURL: process.env.AISIX_BASE_URL,
});
const response = await client.chat.completions.create({
model: process.env.AISIX_MODEL ?? "gpt-4o-mini",
messages: [{ role: "user", content: "Say hello from AISIX." }],
});
console.log(response.choices[0]?.message.content);
运行示例
在演示项目中运行聊天示例:
node openai-sdk-example.mjs
你应该会看到一段简短的助手回复。具体文本取决于上游模型。
当网关能够解析 gpt-4o-mini 且上游服务提供方可访问时,SDK 会返回包含助手消息的标准 OpenAI Chat Completions 对象。AISIX 会解析模型别名,并在调用上游服务提供方前注入已保存的服务提供方凭证。