返回首頁AI API

用 AI API 打造聊天機器人|2026 年從零開始的完整開發教學

12 min 分鐘閱讀
#聊天機器人#AI API#Chatbot 開發#Python#Claude API#OpenAI API#Prompt Engineering#對話設計#部署#教學

用 AI API 打造聊天機器人|2026 年從零開始的完整開發教學

你也想做一個自己的 AI 聊天機器人?其實沒你想的那麼難

三年前,做一個「會聊天」的機器人需要一整個 ML 團隊。

2026 年?你只需要一個 API Key、幾十行 Python 程式碼,就能做出比三年前百萬預算專案還聰明的 Chatbot。

這不是誇張。

OpenAI、Claude、Gemini 這些 AI API 已經把最難的部分——自然語言理解和生成——全部封裝好了。你要做的,就是把它們「接」起來。

這篇教學會帶你從零開始,一步一步打造一個能實際運作的 AI 聊天機器人。

想用 AI API 打造客服機器人?讓 CloudInsight 協助您選擇最佳方案,享企業折扣與統一發票。


選擇合適的 AI API 平台

Answer-First: 2026 年做 Chatbot,推薦 Claude Sonnet 4.6(中文最好、Prompt Caching 超省)或 GPT-4o(生態系最完整)。預算極低就用 Gemini Flash。

三大 API 的 Chatbot 適用度

考量因素Claude Sonnet 4.6GPT-4oGemini 2.0 Flash
中文對話品質極佳優良良好
回應延遲~1.5 秒~1.2 秒~0.8 秒
Prompt Caching省 90%省 50%不支援
Function Calling支援支援支援
Streaming 支援支援支援支援
每百萬 Output Token$15.00$10.00$0.30

怎麼選?

  • 如果你的 Chatbot 要服務台灣用戶 → Claude Sonnet(中文最自然)
  • 如果你需要 Function Calling 做複雜操作(查訂單、改設定)→ GPT-4o(文件最完整)
  • 如果你的 Chatbot 對話量超大但要求不高 → Gemini Flash(價格碾壓一切)

想了解更多 API 的功能差異?請參考 AI API 入門教學完整指南


對話流程設計與 Prompt Engineering

Answer-First: Chatbot 好不好用,70% 取決於 Prompt 設計,不是程式碼。一個好的 System Prompt 應該包含角色定義、回應規則、知識邊界和語調設定。

System Prompt 設計框架

你的 System Prompt 就是 Chatbot 的「靈魂」。以下是一個經過實戰驗證的框架:

你是 [品牌名稱] 的客服助手,名字叫 [名字]。

## 你的角色
- 友善、專業、有耐心
- 用繁體中文回答
- 語氣親切但不過度熱情

## 你可以做的事
- 回答產品相關問題
- 查詢訂單狀態(使用 function calling)
- 提供退換貨說明

## 你不可以做的事
- 不可以承諾折扣或特殊優惠
- 不可以回答與品牌無關的問題
- 不確定的事情,說「讓我幫您轉接人工客服」

## 知識庫
[在這裡放你的 FAQ、產品資訊等]

Prompt 設計的 5 個重點

  1. 明確角色:告訴 AI 它是誰、代表什麼品牌
  2. 設定邊界:明確列出不能回答的主題
  3. 定義語調:友善?正式?幽默?
  4. 給範例:提供 2-3 組「理想對話」的範例
  5. 設安全網:設定「不確定時」的預設回應

常見錯誤

  • Prompt 太短:只寫「你是客服」,AI 會自由發揮,品質不穩定
  • Prompt 太長:超過 4000 Token 的 Prompt 會影響回應速度和成本
  • 沒有設邊界:AI 可能回答「公司去年營收多少」之類的敏感問題

後端 API 整合開發

Answer-First: 核心程式碼不到 50 行。用 Python + FastAPI 建一個 API 伺服器,再用 AI SDK 串接你選的模型。

基本架構

使用者 → 前端介面 → 你的後端 API → AI API(OpenAI/Claude/Gemini)
                                     ↑
                              知識庫/資料庫

Python + Claude API 完整範例

# 安裝:pip install anthropic fastapi uvicorn

from fastapi import FastAPI
from pydantic import BaseModel
import anthropic

app = FastAPI()
client = anthropic.Anthropic(api_key="your-api-key")

SYSTEM_PROMPT = """
你是 TechShop 的客服助手小美。
- 用繁體中文回答
- 語氣親切專業
- 不確定的問題請說「讓我幫您轉接人工客服」
- 以下是常見 FAQ:
  Q: 可以退貨嗎? A: 7 天內可退貨,請保持商品完整包裝。
  Q: 運費多少? A: 滿 1000 元免運,未滿收 60 元。
"""

# 儲存對話歷史(實際應用請用資料庫)
conversations = {}

class ChatRequest(BaseModel):
    session_id: str
    message: str

@app.post("/chat")
def chat(req: ChatRequest):
    # 取得或建立對話歷史
    if req.session_id not in conversations:
        conversations[req.session_id] = []

    history = conversations[req.session_id]
    history.append({"role": "user", "content": req.message})

    # 呼叫 Claude API
    response = client.messages.create(
        model="claude-sonnet-4-6-20260321",
        max_tokens=1024,
        system=SYSTEM_PROMPT,
        messages=history
    )

    assistant_msg = response.content[0].text
    history.append({"role": "assistant", "content": assistant_msg})

    return {"reply": assistant_msg}

啟動伺服器

uvicorn main:app --reload --port 8000

測試

curl -X POST http://localhost:8000/chat \
  -H "Content-Type: application/json" \
  -d '{"session_id": "user123", "message": "請問可以退貨嗎?"}'

透過 CloudInsight 採購 AI API Token,享企業專屬折扣與統一發票。立即了解 →

Chatbot 開發流程圖


前端聊天介面建置

最簡單的方案:嵌入式聊天視窗

前端不需要太複雜。一個浮動在右下角的聊天氣泡就夠了。

用 HTML + JavaScript 的極簡版

<div id="chat-widget" style="position:fixed;bottom:20px;right:20px;">
  <div id="chat-messages" style="height:400px;overflow-y:auto;"></div>
  <input id="chat-input" placeholder="輸入訊息..." />
  <button onclick="sendMessage()">送出</button>
</div>

<script>
async function sendMessage() {
  const input = document.getElementById('chat-input');
  const msg = input.value;
  input.value = '';

  // 顯示使用者訊息
  appendMessage('user', msg);

  // 呼叫後端 API
  const res = await fetch('/chat', {
    method: 'POST',
    headers: {'Content-Type': 'application/json'},
    body: JSON.stringify({session_id: 'user1', message: msg})
  });
  const data = await res.json();

  // 顯示 AI 回覆
  appendMessage('bot', data.reply);
}
</script>

進階選擇

如果你想要更精美的介面:

  • React/Next.js + Vercel AI SDK:支援 Streaming,回應即時顯示
  • Chatbot UI 開源專案:直接 fork,改一改就能用
  • LINE / Telegram Bot:不用自己做前端,直接用現成平台

FAQ:AI Chatbot 開發常見問題

做一個 AI 聊天機器人需要會寫程式嗎?

不一定。如果用 SaaS 平台(如 Intercom、Tidio),不需要寫程式。如果要自建,需要基本的 Python 能力和 API 串接知識。本文的範例程式碼只有 30 行左右。

API 費用大概多少?

以 Claude Sonnet 為例,每次客服對話(約 500 Token input + 200 Token output)的成本約 $0.004。一天 100 通對話,月費約 $12。用 Gemini Flash 更便宜,同樣的量月費不到 $1。

Chatbot 回答錯誤怎麼辦?

三個層面處理:(1) 優化 System Prompt,加入更多 FAQ 和回應規則;(2) 使用 RAG 架構,讓 AI 只根據你的知識庫回答;(3) 設定「不確定就轉人工」的安全網。

可以同時支援多個平台嗎?

可以。你的後端 API 是通用的,只要前端適配不同平台就行。常見做法是同一個後端 API 同時服務網頁聊天室、LINE Bot 和 Telegram Bot。

對話紀錄怎麼保存?

建議用資料庫(PostgreSQL 或 MongoDB)保存。本文範例用的是記憶體字典(只適合測試),實際上線一定要換成資料庫。也要注意個資法規,客戶對話紀錄屬於個人資料。


立即諮詢,取得企業級 AI API 方案

CloudInsight 提供 OpenAI、Claude、Gemini API 企業採購服務:

  • 企業專屬折扣,比官價更優惠
  • 台灣統一發票,解決報帳難題
  • 中文技術支援,Chatbot 開發問題即時協助

立即諮詢企業方案 →加入 LINE 即時諮詢 →


延伸閱讀


參考資料

  1. Anthropic - Claude API Messages Documentation
  2. OpenAI - Chat Completions API Guide
  3. FastAPI - Official Documentation
  4. Vercel AI SDK - Chatbot Development Guide
  5. LINE Developers - Messaging API Documentation
{
  "@context": "https://schema.org",
  "@type": "BlogPosting",
  "headline": "用 AI API 打造聊天機器人|2026 年從零開始的完整開發教學",
  "author": {
    "@type": "Person",
    "name": "CloudInsight 技術團隊",
    "url": "https://cloudinsight.cc/about"
  },
  "datePublished": "2026-03-21",
  "dateModified": "2026-03-21",
  "publisher": {
    "@type": "Organization",
    "name": "CloudInsight",
    "url": "https://cloudinsight.cc"
  }
}
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "做一個 AI 聊天機器人需要會寫程式嗎?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "不一定。SaaS 平台不需要寫程式。自建需要基本的 Python 能力和 API 串接知識,核心程式碼只有 30 行左右。"
      }
    },
    {
      "@type": "Question",
      "name": "AI Chatbot 的 API 費用大概多少?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "以 Claude Sonnet 為例,一天 100 通客服對話,月費約 $12。用 Gemini Flash 同樣的量月費不到 $1。"
      }
    },
    {
      "@type": "Question",
      "name": "Chatbot 回答錯誤怎麼辦?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "三個層面處理:優化 System Prompt、使用 RAG 架構讓 AI 根據知識庫回答、設定不確定就轉人工的安全網。"
      }
    },
    {
      "@type": "Question",
      "name": "可以同時支援多個平台嗎?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "可以。後端 API 是通用的,只要前端適配不同平台即可。常見做法是同一個後端 API 同時服務網頁聊天室、LINE Bot 和 Telegram Bot。"
      }
    },
    {
      "@type": "Question",
      "name": "對話紀錄怎麼保存?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "建議用資料庫(PostgreSQL 或 MongoDB)保存。實際上線一定要用資料庫,也要注意個資法規,客戶對話紀錄屬於個人資料。"
      }
    }
  ]
}

需要專業的雲端建議?

無論您正在評估雲平台、優化現有架構,或尋找節費方案,我們都能提供協助

預約免費諮詢

相關文章