Gate.AI›博客›Gate.AI 快速入門:使用 Python、Node.js 和 curl 存取 API

    Gate.AI 快速入門:使用 Python、Node.js 和 curl 存取 API

    指南

    Gate.AI 提供了相容 OpenAI 的 API 介面,讓開發者可以使用 Python、Node.js、curl 以及相容的 AI 開發工具來送出聊天補全(chat completions)請求。若你已使用 OpenAI 風格 SDK 或 REST 請求,在接入 Gate.AI API 時,主要只需更換 API Key 與 Base URL,通常不需要調整請求結構。本文快速入門指南包含一個必要的設定步驟、一次接入路徑選擇,以及 Python、Node.js、curl 三種互斥的實作方式。串流架構、帳號權限、生產監控與計費控管等進階主題不在本指南範圍內。

    前置條件

    • 一組 Gate.AI API Key。
    • 已安裝 Python、Node.js 或 curl(取決於你選擇的接入方式)。

    完成本指南後你將具備什麼能力?

    完成本 Gate.AI API 快速入門指南後,你將能使用所選的 Python、Node.js 或 curl 方式,成功送出聊天補全請求至 Gate.AI。

    你不需要完成全部三種語言的範例;只要選擇與你的應用環境相符的路徑即可。本範例使用 Gate.AI 相容 OpenAI 的 Base URL 與聊天補全格式,基於 2026年6月的產品版本。如需產品背景,請造訪 Gate.AI 產品頁面。

    步驟1:準備通用的 Gate.AI API 設定

    本步驟會為所有接入路徑準備通用的 API 設定參數。

    操作:

    在選擇實作路徑前,請使用以下 Gate.AI API 設定參數。

    設定項目 值
    API Key YOUR_GATEAI_API_KEY
    Base URL xx/openai/v1
    聊天補全介面 xx/openai/v1/chat/completions
    Python 範例模型值 auto
    Node.js 範例模型值 auto
    curl 範例模型值 deepseek/deepseek-v3.2

    API Key 用於請求鑑權,Base URL 用於將相容 OpenAI 的 SDK 呼叫路由到 Gate.AI。curl 路徑則需要直接使用 Endpoint。

    步驟2:選擇一種 API 接入路徑

    本步驟的目的是避免 Python、Node.js 與 curl 範例被誤以為必須全部都執行。

    操作:

    請從下表中選擇一種路徑。

    接入路徑 適用情境 所需環境 下一步
    Python 應用、腳本或後端使用 Python Python 與 OpenAI Python SDK 步驟3A
    Node.js 應用或服務使用 JavaScript 或 Node.js Node.js 與 OpenAI Node.js SDK 步驟3B
    curl 需要直接在終端機測試或進行 REST 除錯請求 curl 步驟3C

    只要完成其中一種路徑即可驗證 Gate.AI API 接入。僅在你需要跨多個開發環境測試 Gate.AI 時,才需要多路徑並行。

    步驟3A:送出 Python 聊天補全請求

    本路徑使用 OpenAI Python SDK,並指定 Gate.AI Base URL。

    操作:

    僅在你的環境為 Python 時使用本路徑。

    1. from openai import OpenAI
    2. client = OpenAI(
    3. api_key="YOUR_GATEAI_API_KEY",
    4. base_url="https://api.gate.ai/openai/v1",
    5. )
    6. completion = client.chat.completions.create(
    7. model="auto",
    8. messages=[
    9. {"role": "system", "content": "system prompt"},
    10. {"role": "user", "content": "how are you?"}
    11. ],
    12. )
    13. print(completion.choices[0].message.content)

    你將在終端機看到助理回覆,例如:

    1. Hello! Nice to meet you. How can I help you?

    本路徑維持 OpenAI Python SDK 的請求結構,只需將 API Key 與 Base URL 換成 Gate.AI 即可。

    步驟3B:送出 Node.js 聊天補全請求

    本路徑使用 OpenAI Node.js SDK,並指定 Gate.AI Base URL。

    操作:

    僅在你的環境為 Node.js 時使用本路徑。

    1. const OpenAI = require("openai")
    2. const client = new OpenAI({
    3. apiKey: "YOUR_GATEAI_API_KEY",
    4. baseURL: "https://api.gate.ai/openai/v1",
    5. })
    6. async function main() {
    7. const completion = await client.chat.completions.create({
    8. model: "auto",
    9. messages: [
    10. {"role": "system", "content": "system prompt"},
    11. {"role": "user", "content": "how are you?"}
    12. ],
    13. })
    14. console.log(completion.choices[0].message.content)
    15. }
    16. main()

    你將在主控台看到助理回覆。若腳本執行後沒有任何輸出,請印出完整的 completion 物件,確認 choices[0].message.content 欄位存在。

    步驟3C:送出 curl 聊天補全請求

    本路徑不需要 SDK,直接呼叫 Gate.AI 聊天補全介面。

    操作:

    僅在你需要透過終端機直接送出 REST 請求時使用本路徑。

    1. curl --location --request POST 'https://api.gate.ai/openai/v1/chat/completions' \
    2. --header 'Authorization: Bearer YOUR_GATEAI_API_KEY' \
    3. --header 'Content-Type: application/json' \
    4. --data-raw '{
    5. "model": "deepseek/deepseek-v3.2",
    6. "stream": false,
    7. "messages": [
    8. {
    9. "role": "user",
    10. "content": "how are you"
    11. }
    12. ]
    13. }'

    你將收到包含 choices 陣列的 JSON 回應。助理回覆位於 choices[0].message.content 欄位。

    Gate.AI API 成功回應範例

    成功的 Gate.AI 聊天補全回應遵循 OpenAI 相容的結構。

    1. {
    2. "id": "243c850e-214c-431e-977f-ebaf4aa95f56",
    3. "choices": [
    4. {
    5. "index": 0,
    6. "message": {
    7. "role": "assistant",
    8. "content": "Hello! Nice to meet you. How can I help you?"
    9. },
    10. "finish_reason": "stop"
    11. }
    12. ],
    13. "created": 1773408946,
    14. "model": "deepseek.v3-v1:0",
    15. "object": "chat.completion",
    16. "usage": {
    17. "prompt_tokens": 5,
    18. "completion_tokens": 15,
    19. "total_tokens": 20
    20. }
    21. }
    回應欄位 檢查重點
    choices[0].message.content 產生的助理回覆內容
    finish_reason 模型是否正常停止
    model 實際服務請求的模型
    usage.prompt_tokens 輸入訊息消耗的 Token 數
    usage.completion_tokens 助理回覆消耗的 Token 數
    usage.total_tokens 請求與回覆合計消耗的 Token 數

    快速測試時,最關鍵的欄位是 choices[0].message.content。usage 物件可協助你確認 Gate.AI 已處理提示詞與回覆內容。

    Gate.AI API 請求失敗常見原因與排查

    • 狀況:請求回傳鑑權錯誤。
      • 原因:API Key 遺失、已過期、格式錯誤,或未正確從 Gate.AI 複製。
      • 解法:將 YOUR_GATEAI_API_KEY 取代為有效的 Gate.AI API Key。對於 curl,請保留 Authorization: Bearer YOUR_GATEAI_API_KEY 標頭格式。
    • 狀況:SDK 請求送到錯誤的服務。
      • 原因:OpenAI SDK 仍使用預設的 Base URL。
      • 解法:在 Python 中設定 base_url,在 Node.js 中將 baseURL 設為 https://api.gate.ai/openai/v1 後再送出請求。
    • 狀況:回應未使用預期模型。
      • 原因:請求使用 auto,或 Gate.AI 在自動模型選擇時對應了不同的模型 ID。
    • 狀況:腳本有執行但沒有輸出。
      • 原因:程式未讀取 completion.choices[0].message.content,或在印出之前請求就已失敗。

    下一步可設定或整合的內容

    完成任一 Gate.AI 快速入門 API 路徑後,你可以將相同的 Gate.AI Base URL 整合到你的應用後端、開發工具、內部自動化或測試流程中。

    建議後續主題:

    常見問題解答

    我需要同時執行 Python、Node.js 和 curl 嗎?

    不需要。依照你的開發環境選擇其中一種接入路徑即可。Python、Node.js 與 curl 只是送出 Gate.AI 聊天補全請求的不同方式。

    為什麼 Python 用 base_url,Node.js 用 baseURL?

    Python SDK 使用底線命名(snake_case),Node.js SDK 使用駝峰命名(camelCase)。兩者都指向同一個 Gate.AI Base URL。

    每次請求都能用 model="auto" 嗎?

    當你希望 Gate.AI 自動選擇模型且你的設定支援時,可以使用 auto。若要指定模型,請參考 Gate.AI 文件並選用支援的模型 ID。

    JSON 輸出中的助理回覆在哪裡?

    助理回覆位於 choices[0].message.content 欄位。Token 使用情況會在 usage 物件中另外顯示。