你坐在餐廳裡想吃牛排。
正常情況下,你不會走進廚房、自己找到冰箱、打開瓦斯、操作煎台,再把盤子端回座位。
你只要跟服務生說:
「我要一份五分熟牛排,不要黑胡椒醬。」
服務生把需求送進廚房,廚房完成後,再把結果送回來。
這就是理解**應用程式介面(Application Programming Interface, API)**最簡單的方式。
API 像是一套「外面可以怎麼跟裡面溝通」的規則。
為什麼 AI 服務需要 API?
假設你做了一個自己的網站,使用者輸入:
「幫我把這封 Email 改得比較有禮貌。」
你不可能在後台請一個員工看到每個問題後,手動打開 ChatGPT、Gemini 或其他聊天介面,再把答案貼回你的網站。
程式需要一個可以自動溝通的方法。
這就是 API 的用途。
如果你忘了「模型」是什麼,可以回看 Lesson 002:AI 模型是什麼?。一句話 recap:模型是經過訓練、負責把輸入轉成輸出的 AI 核心。
API 則是你的程式和這個模型服務之間的其中一條溝通管道。
送出去的東西叫 Request
程式把需求送給 API,這個動作通常叫做請求(Request)。
Request 裡可能包含:
- 你要用哪個模型
- 使用者輸入的文字
- 系統規則
- 圖片或其他檔案
- 生成參數
- 你希望輸出長什麼樣子
就像點餐單上會寫:桌號、餐點、熟度、加點、特殊需求。
如果你已經看過 Lesson 005:Prompt 是什麼?,一句話 recap:Prompt 是交給 AI 的需求、條件與上下文。
在 API 世界裡,Prompt 往往就是 Request 裡的一部分。
回來的東西叫 Response
伺服器收到 Request、處理完成後,把結果送回來,叫做回應(Response)。
例如你的程式送出:
「把這句話翻成英文。」
Response 可能包含:
- 模型產生的文字
- 使用了多少 Token
- 錯誤訊息
- 其他狀態資訊
程式再決定要把哪些東西顯示給使用者。
API Key 是什麼?
很多 API 不會讓任何陌生程式無限制使用。
所以服務商通常會給開發者一組應用程式介面金鑰(API Key)。
可以把它想成員工證或房卡。
服務端看到這張卡,才知道:
- 是哪個帳號在呼叫
- 有沒有使用權限
- 費用算到誰身上
- 是否超過速率或額度限制
API Key 很重要,因為別人拿到後可能用你的額度產生費用。
所以不要把 API Key 直接寫在公開網頁、GitHub 公開程式碼或截圖裡。
JSON 又是什麼?
你看 API 文件時,很常看到一堆大括號:
{
"model": "example-model",
"input": "幫我整理這段文字"
}
這種常見資料格式叫做 JavaScript 物件表示法(JavaScript Object Notation, JSON)。
名字很長,但先不用怕。
它就像一張格式固定的點餐單:
model 這一格填模型名稱,input 這一格填輸入內容。
只要雙方都知道每個欄位代表什麼,就能穩定溝通。
API 不是某一家公司的專利
OpenAI 有 API,Google 有 Gemini API,xAI 等服務也有自己的 API。
甚至不是只有 AI 才有 API。
天氣服務、地圖、付款、Email、物流、股票資料,都可能提供 API。
所以「學 API」不是學某一個聊天模型,而是在學一種非常普遍的軟體溝通方式。
一次 API 呼叫大概發生什麼?
可以把流程簡化成:
- 使用者在你的 App 輸入內容。
- 你的程式整理出 Request。
- Request 帶著 API Key 傳到服務商。
- 服務商把內容交給指定模型處理。
- API 回傳 Response。
- 你的程式把答案顯示給使用者。
使用者可能完全不知道背後經過這六步。
他只會覺得:「我按下送出,答案出來了。」
API 為什麼通常要收費?
因為每一次模型推論都需要運算資源。
對文字模型來說,很多服務會依照輸入與輸出的 Token 數量計價。一句話 recap:Token 是模型處理文字時使用的小單位,字數和 Token 數不一定一樣。
圖片、音訊、影片則可能用圖片張數、解析度、秒數或其他方式收費。
下一篇我們會專門把這件事算清楚。
API 和聊天網頁最大的差別
聊天網頁是「人直接使用的產品」。
API 比較像「給程式使用的入口」。
你可以用同一類底層模型,做成:
- 客服機器人
- Email 助手
- 文件整理工具
- 圖片生成網站
- 自動翻譯服務
- AI 角色 App
- 公司內部工作流程
這就是為什麼模型本身和最後看到的 App,不是同一件事。
今天只要記住一句話
API 就是一套讓不同程式按照約定互相傳送 Request、取得 Response 的介面;AI App 常用它把使用者需求送給模型,再把結果接回來。
下一篇我們來回答最現實的問題:如果 API 寫著 US$2 / 1M tokens,到底代表問一次要花多少錢?
留言
有想法、疑問或想補充的地方,都可以留在這裡。
還沒有留言,來當 1F 吧。