點樣將 OpenAI API 整合入你嘅 App
要整合 OpenAI API,先喺 OpenAI 專案入面建立一條 API 金鑰,將佢儲存為名叫 OPENAI_API_KEY 嘅伺服器端機密,然後喺你自己嘅伺服器路由,用 OpenAI 官方 SDK 去呼叫,絕對唔好喺瀏覽器程式碼入面呼叫。截至 2026 年 9 月,OpenAI 嘅快速入門將 Responses API 列為新專案嘅起點。上線之前要設定消費上限,限制回覆長度,限制每位用戶可以幾耐用一次功能,並且用重試處理速率限制錯誤。
本指南涵蓋設定、請求流程、畀 AI builder 用嘅提示,以及會洩露金鑰或者浪費金錢嘅常見錯誤。OpenAI 嘅資料取自佢哋截至 2026 年 9 月嘅官方文件。如果你未識一般概念(token、上下文視窗、定價),請先睇點樣使用 LLM API。
你可以用佢整咩
- 喺你 App 入面嘅聊天助理(點樣建立 AI 聊天機械人 App)
- 「摘要」、「改寫」或者「草擬回覆」按鈕
- 由自由文字抽取結構化資料:將一封電郵變成一張訂單,為支援工單加標籤
- 根據你自己內容嘅搜尋同問答
- 圖像生成、語音同其他媒體功能,視乎可用嘅模型而定
更多idea可以睇點樣為你嘅 App 加入 AI 功能。
設定你嘅 OpenAI 帳戶
- 喺 OpenAI 平台建立帳戶同一個專案。 OpenAI 嘅正式環境最佳實踐建議測試同正式環境用獨立嘅專案,咁樣各自可以有自己嘅金鑰同限額。
- 建立專案 API 金鑰。 OpenAI 建議設定到期日,並且定期輪換金鑰。
- 喺限額頁面設定消費提示同硬性消費上限。 OpenAI 嘅指南表示,提示會喺用量超過某個金額時通知你,而硬性上限就會強制執行每月上限。
- 加入帳單。 OpenAI 嘅速率限制文件描述咗用量等級:你花得越多,限制就會自動提高。
請求流程
瀏覽器 -> 你嘅伺服器路由 -> OpenAI API
<- (串流)回覆 <-
- 用戶撳一個按鈕或者傳送一條訊息。
- 瀏覽器呼叫你自己嘅路由,例如
POST /api/summarise。 - 你嘅伺服器檢查用戶已登入,並且有權使用該功能。
- 伺服器組裝請求:指示、用戶嘅輸入,以及任務需要嘅資料庫資料。
- 用環境入面嘅金鑰呼叫 OpenAI。OpenAI 嘅 SDK 會自動讀取
OPENAI_API_KEY。 - 串流或者一次過返回回覆,並且記錄 token 用量。
OpenAI 嘅官方 SDK 套件名叫 openai,JavaScript/TypeScript 用 npm 安裝,Python 用 pip 安裝。
點樣揀模型
OpenAI 提供幾個唔同價錢同速度嘅模型,而且陣容經常更新。先用細啲、平啲嘅模型,喺真實例子上量度質素,只有需要時先升級。將模型名稱放喺設定值或者機密入面,咁樣唔使重寫程式碼就可以更改。現行收費請睇 OpenAI 嘅定價頁面。
選項同取捨
| 決定 | 簡單選擇 | 幾時要進一步 |
|---|---|---|
| 串流 | 返回完整答案 | 聊天同長回覆用串流;用戶即刻見到文字 |
| 對話記憶 | 每次都傳送最近嘅訊息 | 對話變長時,摘要較舊嘅訊息 |
| 輸出格式 | 純文字 | 當你嘅程式碼要讀取欄位時,要求結構化 JSON |
| 你自己嘅資料 | 請求中加入相關記錄 | 內容太多放唔晒時,加入對你內容嘅搜尋(參閱什麼是 RAG) |
| 大量、唔緊急嘅工作 | 逐個項目循環處理 | 結果可以等嘅時候,用 OpenAI 嘅批次選項以降低成本 |
畀你嘅 AI builder 嘅提示
第一個功能:
喺工單頁面加入一個「摘要」按鈕。佢會呼叫伺服器路由 POST /api/summarise,檢查用戶已登入,載入該工單,然後用官方 openai SDK 同機密 OPENAI_API_KEY 去呼叫 OpenAI Responses API。由機密 OPENAI_MODEL 讀取模型名稱。指示:「用 3 點摘要,然後建議一個簡短嘅回覆。唔好自己創造訂單編號。」限制輸出長度,將回覆串流到頁面,並且絕對唔好將金鑰傳送去瀏覽器。
防護措施:
限制每位用戶每個鐘頭最多 30 次 AI 請求,記錄喺資料庫入面。每個請求都記錄輸入同輸出 token,連同用戶 ID 同功能名稱。如果 OpenAI 返回 429,要遵從 Retry-After 標頭,用指數退避加隨機抖動重試最多 3 次;之後顯示「AI 而家忙緊,一分鐘後再試」。其他任何失敗都顯示友善嘅錯誤,並且令頁面其餘部分照常運作。
處理錯誤同限制
OpenAI 用幾種方式計算速率限制,包括每分鐘請求數同每分鐘 token 數,而你會先撞到用完嗰一個。超出其中一個時,API 會返回 429,附帶 Retry-After 標頭。OpenAI 嘅文件表示,要將該數值當作最短等待時間,並且加入少少隨機延遲,避免所有客戶端同時重試。
另外亦要預先考慮:
- 長時間生成嘅逾時。串流有幫助,合理嘅輸出上限亦有幫助。
- 供應商中斷。 AI 功能應該優雅地失敗,唔會弄壞頁面。
- 輸出質素欠佳。 儲存之前要驗證結構化輸出;唔好讓模型輸出在冇你程式碼檢查之下觸發敏感動作。
常見錯誤
- 金鑰放喺前端或者程式碼庫入面。 瀏覽器程式碼係公開嘅,外洩嘅金鑰幾分鐘內就可能被濫用。睇點樣保護 API 金鑰。
- 冇消費上限。 一個循環或者濫用嘅用戶,可以好快令帳單暴漲。
- 冇每位用戶限制。 供應商嘅限制保護嘅係你嘅錢包,唔係你其他用戶。
- 用提示去做保安。 用戶可以打「忽略之前嘅指示」。權限應該放喺伺服器程式碼入面。
- 傳送超過所需嘅內容。 整份文件同超長嘅對話歷史會成倍增加成本。只傳送任務需要嘅嘢。
- 寫死模型名稱。 模型會更新同退役;要將佢變成設定。
- 隨便傳送個人資料。 讀吓 OpenAI 嘅資料使用條款,而且只傳送功能需要嘅資料。
檢查清單
- 測試同正式環境用獨立嘅 OpenAI 專案(或金鑰)
- 金鑰儲存為伺服器端機密,絕對唔會放喺瀏覽器程式碼或者程式碼庫
- 已設定消費提示同硬性消費上限
- 所有呼叫都經過你嘅伺服器,並且檢查用戶權限
- 輸出長度有上限;模型名稱可以設定
- App 入面有每位用戶嘅速率限制
- 429 處理包括 Retry-After、退避同抖動
- 友善嘅錯誤狀態;冇 AI 時頁面都可以運作
- 每個功能都記錄 token 用量
- 用長、空白同惡意輸入測試過
喺 Mythex 使用 OpenAI API
你用 Mythex 建立嘅 App 入面嘅 AI 功能,會用你自己嘅 OpenAI 金鑰,費用計喺你嘅 OpenAI 帳戶,而唔係 Mythex 建構點數。經 /secrets、專案設定,或者 Agent 需要金鑰時顯示嘅機密卡,將 OPENAI_API_KEY 加為專案機密,然後用似上面嘅提示描述功能。改咗已發佈 App 嘅機密之後,要再次發佈,App 先會用新嘅機密。文件入面嘅食譜用你自己嘅 API 金鑰加入 AI 功能有一個入門提示,而聊天中嘅機密則解釋機密卡。想比較供應商?可以睇點樣整合 Claude API。
常見問題
新 App 應該用邊個 OpenAI API?
截至 2026 年 9 月,OpenAI 嘅快速入門將 Responses API 列為新專案嘅起點,其官方 SDK 嘅範例都用 client.responses.create()。開始之前,請查閱 OpenAI 嘅文件,睇吓而家嘅建議。
我可唔可以喺瀏覽器呼叫 OpenAI API?
用你嘅秘密金鑰就唔可以。任何人都可以讀取瀏覽器程式碼,然後重用金鑰去增加你嘅帳單。瀏覽器應該呼叫你自己嘅伺服器路由,再由伺服器用儲存為環境變數嘅金鑰去呼叫 OpenAI。
點樣防止 OpenAI API 費用太高?
OpenAI 嘅正式環境指南建議,喺限額頁面設定消費提示同每月硬性消費上限。喺你個 App 入面,限制回覆長度、限制每位用戶嘅請求次數,並且記錄 token 用量,咁樣你就知道邊啲功能最貴。
OpenAI 嘅 429 錯誤係咩意思?
即係你超過咗速率限制。OpenAI 嘅速率限制文件表示,回應會包含 Retry-After 標頭;至少要等咁耐,再加少少隨機延遲,然後用指數退避重試。