如果你的技术栈已经使用了基于 OpenAI 构建的 AI SDK,那么迁移到 Novita AI 主要只需更改 Base URL、API Key 和模型 ID。官方 OpenAI TypeScript SDK 支持自定义端点,而 Novita 的文档在 https://api.novita.ai/openai/v1/chat/completions 提供了与 OpenAI 兼容的聊天补全接口,因此第一步迁移工作很小。
这使得 Novita 成为一个实用的选择——当你希望保留现有 SDK 工作流,并在不重写应用的情况下测试不同的模型后端时。
OpenAI TypeScript SDK 与 Novita AI:变与不变
| 项目 | OpenAI SDK 默认设置 | Novita AI 设置 | 为何重要 |
|---|---|---|---|
| 客户端库 | openai |
openai |
使用相同的 TypeScript 包。 |
| Base URL | OpenAI 端点 | https://api.novita.ai/openai |
SDK 会自动添加版本路径。 |
| API Key | OpenAI Key | Novita API Key | 认证方式改变,但调用结构不变。 |
| 模型名称 | OpenAI 模型 ID | Novita 模型 ID | 模型 ID 因供应商而异。 |
| 首次请求 | chat.completions.create() |
chat.completions.create() |
从相同的请求模式开始。 |
如何将 OpenAI TypeScript SDK 与 Novita AI 结合使用
安装 SDK:
npm install openai
然后将其指向 Novita:
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.NOVITA_API_KEY,
baseURL: "https://api.novita.ai/openai",
});
const response = await client.chat.completions.create({
model: "openai/gpt-oss-120b",
messages: [
{ role: "system", content: "You are a concise technical assistant." },
{ role: "user", content: "Show me the shortest Novita SDK setup in TypeScript." },
],
});
console.log(response.choices[0]?.message?.content);
从聊天补全开始。Novita 的公开文档目前记录了与 OpenAI 兼容的聊天补全路径,因此这是最稳妥的首次测试。
Novita AI 上的 Python OpenAI SDK 等效代码
同样的模式也适用于 Python:
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["NOVITA_API_KEY"],
base_url="https://api.novita.ai/openai",
)
response = client.chat.completions.create(
model="openai/gpt-oss-120b",
messages=[
{"role": "user", "content": "Explain the Novita setup in one paragraph."}
],
)
print(response.choices[0].message.content)
何时将 Novita Agent 沙盒与 OpenAI SDK 结合使用
使用 SDK 进行模型调用,当工作流需要代码执行、浏览器操作或文件处理(在隔离环境中)时,再使用 Novita Agent 沙盒。这种分离将推理和执行分开,非常适合编码代理场景。
OpenAI SDK 迁移技巧:提升开发者体验
- 使用
https://api.novita.ai/openai作为 SDK 的 Base URL。OpenAI SDK 会自动为你添加版本路径,因此无需手动添加/v1。 - 在测试前,替换为 Novita 支持的模型 ID。SDK 代码可以保持不变,但模型 ID 因供应商而异。
- 将 OpenAI 兼容性视为迁移捷径,但不要认为每个较新的平台功能都能以相同方式运行。在部署前,请查阅当前的 Novita 文档。
- 如果你的工作流涉及运行生成的代码、文件操作或浏览器操作,请将执行过程移至 Agent 沙盒,而不是你的本地机器。
常见问题解答
OpenAI TypeScript SDK 本身足够吗?
仅用于模型调用时足够。但若需隔离执行则不够。如果应用是代理式的,请将其与 Agent 沙盒配合使用。
我能在 JavaScript 和 TypeScript 中使用相同的代码吗?
可以。SDK 的用法完全相同。
接下来应该阅读什么?
请阅读 Novita LLM API 指南 和 聊天补全参考,然后在生产环境使用前确认模型库中的确切模型 ID。
