返回指南
API·2026年7月1日·更新於 2026年10月4日·閱讀約 7 分鐘

OpenAI 相容 API 指南——從 Ollama 本機端點到託管前沿模型

「OpenAI 相容」表示任何 OpenAI SDK 只需變更 base_url 即可使用。Ollama 為本機模型提供端點;Kunavo 為託管的前沿模型提供端點。以下說明這種模式,以及如何在兩者之間切換而不必重寫程式碼。

最後審核於 。

「OpenAI 相容」表示 API 使用與 OpenAI 的 /v1/chat/completions 相同的線路格式——因此任何 OpenAI SDK 或工具都能使用,只需變更 base_url。Ollama 為在你電腦上本機執行的模型提供 OpenAI 相容端點。Kunavo 則為託管的前沿模型——Claude、GPT,以及影像、影片和音訊模型——提供同樣的端點,並使用一個 bearer token。本指南說明這套模式,以及如何在兩者之間切換而不必重寫程式碼。

「OpenAI 相容」代表什麼

OpenAI Chat Completions 格式已成為事實標準:輸入一個 messages 陣列,輸出一個 choices[].message,使用 Server-Sent Events 進行串流,並使用 tools 進行函式呼叫。任何遵循此契約的端點都是「OpenAI 相容」,而官方的 openai SDK(Python、Node,以及所有社群移植版本)只要設定 base_url 就能指向它。

Ollama 模式(本機)

Ollama 在本機執行開放模型,並透過 http://localhost:11434/v1 提供服務:

ollama.py
from openai import OpenAI

# Ollama exposes an OpenAI-compatible endpoint on localhost
client = OpenAI(base_url="http://localhost:11434/v1", api_key="ollama")

resp = client.chat.completions.create(
    model="llama3.1",
    messages=[{"role": "user", "content": "Summarize this changelog."}],
)
print(resp.choices[0].message.content)

相同程式碼,託管前沿模型(Kunavo)

將完全相同的 SDK 指向 Kunavo,並選擇一個前沿模型。只有 base_url、api_key 和 model 會變更——呼叫內容逐位元組相同:

kunavo.py
import os
from openai import OpenAI

# Same SDK, same call shape — only base_url, api_key and model change
client = OpenAI(
    base_url="https://api.kunavo.com/v1",
    api_key=os.environ["KUNAVO_API_KEY"],
)

resp = client.chat.completions.create(
    model="claude-sonnet-5",  # or claude-haiku-4-5, gpt-5-5, gpt-5-6-terra...
    messages=[{"role": "user", "content": "Summarize this changelog."}],
)
print(resp.choices[0].message.content)

在 /app/keys 取得金鑰;快速入門提供 Node 與 curl 形式。

本機與託管——何時使用哪一種

Ollama(本機)Kunavo(託管)
模型品質開放模型(Llama、Qwen、Mistral)前沿模型:Claude、GPT
硬體你的 GPU/RAM無——完全託管
成本免費(你的電費)隨用隨付,低於牌價
隱私完全離線託管於美國,並轉送給模型供應商;適用供應商的資料保留政策;不提供 DPA 或 ZDR
多模態有限使用一把金鑰涵蓋影像、影片、音訊

常見設定:離線開發時在 localhost 使用 Ollama,正式環境使用 Kunavo 的託管品質——只需一個環境變數即可切換。若要了解兩端實作的逐欄位契約——參數、串流增量、tool_calls、usage 物件,以及與 Ollama 的 v1 介面之間的相容性表——請參閱/v1/chat/completions 參考文件及其中的 Ollama OpenAI 相容性章節。

在執行階段探索模型

如同 Ollama 的 /api/tags,Kunavo 提供 OpenAI 形式的模型目錄。請在執行階段解析 slug,而不要寫死:

models.sh
# Discover every enabled model (OpenAI-shaped, like Ollama's /api/tags)
curl https://api.kunavo.com/v1/models \
  -H "Authorization: Bearer $KUNAVO_API_KEY"

不只聊天

同一把金鑰可連接影像(/v1/images/generations)、影片(/v1/video/generations)和音訊端點——全部採用 OpenAI 形式。請參閱多模態 AI 指南和OpenRouter 比較,了解 Kunavo 與其他閘道的差異。

有一個超越通常「相容」定義的介面,值得了解:POST /v1/responses。Codex CLI 只接受透過 Responses API 使用自訂供應商,這就是為什麼大多數 OpenAI 相容閘道完全無法驅動它——Codex 每 token 的成本會透過可執行的設定區塊處理這件事。若要計算包含快取輸入的 GPT 工作負載價格,OpenAI API 價格計算器會採用你自己的 token 數量。

常見問題

什麼是 OpenAI 相容 API?

一種使用與 OpenAI 的 /v1/chat/completions 相同線路格式的 API——相同的請求主體、相同的回應結構、相同的串流方式。任何 OpenAI SDK 或工具都能使用,只需變更 base_url 與 api_key。Ollama 為本機模型提供這種介面;Kunavo 則為託管的前沿模型提供。

是否有像 Ollama 為本機模型提供的那種、適用於託管模型的 OpenAI 相容 API?

有。Ollama 的 OpenAI 相容端點會在你的電腦上執行本機模型;Kunavo 則在一個 base_url(https://api.kunavo.com/v1)與一個 bearer token 背後執行託管的 Claude、GPT,以及影像、影片和音訊模型。呼叫程式碼完全相同。

我可以在本機保留 Ollama,並在正式環境使用 Kunavo 嗎?

可以——這是常見模式。由於兩者都相容 OpenAI,只要替換 base_url 與模型即可切換環境:離線開發時使用 localhost 上的 Ollama,正式環境使用 Kunavo 的託管前沿品質。不需要變更 SDK。

我可以透過 OpenAI 相容端點呼叫哪些模型?

所有已啟用的模型——聊天模型包括 Claude、GPT 等,此外還有各自使用 OpenAI 形式端點的影像、影片和音訊模型。GET /v1/models 會回傳即時清單;請在執行階段解析 slug,不要寫死。瀏覽模型目錄。

速率限制呢?

每個供應商都會管理自己的上限,而 429 表示你超過其中一項——請參閱OpenAI API 速率限制,了解如何判斷觸發的是哪項限制,以及能解決問題的退避方式;Anthropic 的對應說明請參閱Claude API 429 rate_limit_error。