OpenAI TypeScript SDK 與 Novita AI:Base URL、範例與 Agent Sandbox

OpenAI TypeScript SDK 與 Novita AI:Base URL、範例與 Agent Sandbox

如果你的技術棧已經使用以 OpenAI 為基礎的 AI SDK,Novita AI 大致上只是 base URL、API key 與 model ID 的變更。OpenAI 官方 TypeScript SDK 支援自訂 endpoint,而 Novita 的文件在 https://api.novita.ai/openai/v1/chat/completions 提供 OpenAI 相容的 chat completions,因此第一步遷移非常小。

這使得 Novita 在你想要保留現有 SDK 工作流程、測試不同模型後端而無需重寫應用程式時,成為一個實用的選擇。

OpenAI TypeScript SDK 與 Novita AI:哪些改變、哪些保持不變

項目 OpenAI SDK 預設 Novita AI 設定 為什麼重要
用戶端函式庫 openai openai 沿用相同的 TypeScript 套件。
Base URL OpenAI endpoint https://api.novita.ai/openai SDK 會自動加上版本化路徑。
API key OpenAI key Novita API key 驗證方式改變,但呼叫形態不變。
模型名稱 OpenAI model ID Novita model ID 將 model ID 視為 provider 專屬。
第一個請求 chat.completions.create() chat.completions.create() 從相同的請求模式開始。

如何使用 Novita AI 設定 OpenAI TypeScript SDK

安裝 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);

先從 chat completions 開始。Novita 的公開文件目前記載了 OpenAI 相容的 chat completions 路徑,因此這是最安全的第一個測試。

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 Sandbox 與 OpenAI SDK 搭配使用

使用 SDK 進行模型呼叫,當工作流程需要隔離執行程式碼、瀏覽器操作或檔案處理時,再使用 Novita Agent Sandbox。這種分工讓推論與執行分離,正是 coding agent 的正確架構。

OpenAI SDK 遷移技巧,提升開發者體驗

  • 使用 https://api.novita.ai/openai 作為 SDK 的 base URL。OpenAI SDK 會自動為你加上版本化路徑,因此不需要手動加上 /v1
  • 在測試前替換成 Novita 支援的 model ID。SDK 程式碼可以保持不變,但 model ID 是 provider 專屬的。
  • 將 OpenAI 相容性視為遷移捷徑,而不是保證每個較新的平台功能都會有相同行為。上線前請檢查最新的 Novita 文件。
  • 如果你的工作流程需要執行產生的程式碼、檔案操作或瀏覽器操作,請將執行移到 Agent Sandbox,而不是在你的本機執行。

常見問題

只使用 OpenAI TypeScript SDK 就足夠了嗎?

就模型呼叫而言,是的。就隔離執行而言,不是。如果應用程式是 agent 型的,請搭配 Agent Sandbox。

我可以在 JavaScript 和 TypeScript 中使用相同的程式碼嗎?

可以。SDK 的用法相同。

接下來應該閱讀什麼?

請閱讀 Novita LLM API 指南chat completions 參考,然後在正式環境使用前,於模型庫中確認確切的 model ID。