2026-09-18 11 min read -- 次瀏覽

用 LINE 打造你的 24 小時 AI 客服

從申請官方帳號到部署 Webhook,一個晚上就能讓 LINE 機器人接上 LLM 上線。

程式開發 LINE機器人Workers 問小墨這篇的內容
LINE 機器人示意
自建 LINE AI 客服:從申請到上線,一個晚上就能跑。

📌 本篇文章重點

  • LINE 官方帳號 + Messaging API + Webhook + LLM = 你的 AI 客服。
  • 4 步:開帳號 → 拿 token → 寫 webhook → 部署上線。
  • 用 Cloudflare Workers 免費版就能架 webhook,冷啟動快、免伺服器。
  • 先做「echo」,再做「接 LLM」,最後加防呆與漫罵應付。

一、為什麼這篇值得看?

把 AI 接進 LINE,你的客服就能 24 小時不休息。聽起來要買伺服器、架框架——其實只要一個免費的 Worker 加兩個 API 金鑰。這篇把你從申請一路帶到能實際回訊。

二、核心概念,3 分鐘搞懂

LINE 機器人的運作是一條簡訊鏈:

訊息連結
使用者 → LINE 伺服器 → 你的 Webhook URL → 你回 API → 傳回使用者

Webhook 就是你架一條「接收訊息、決定回什麼」的程式。

「Webhook + 回應 API」兩件事拆開:LINE 只負責收發,你的程式只負責動腦。

三、動手實作:4 步上線

Step 1

開官方帳號、取得兩把鑰匙

  1. 建立 LINE Official Account(開發者模式)。
  2. 取得 Channel Secret 與 Channel Access Token。
  3. 在 Webhook 設定處填上你即將部署的 URL。
Step 2

寫一支接收訊息的 Worker

functions/api/line.js(Hono/Workers)
export default {
  async fetch(req) {
    const body = await req.json();
    const text = body.events?.[0]?.message?.text;

    await fetch("https://api.line.me/v2/bot/message/reply", {
      method: "POST",
      headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer " + context.env.LINE_TOKEN,
      },
      body: JSON.stringify({
        replyToken: body.events[0].replyToken,
        messages: [{ type: "text", text: `你剛剛說:${text}` }],
      }),
    });
    return new Response("ok");
  },
};

⚠️ 別漏掉

LINE 會先送一次「驗證 Webhook」的請求,請確認 Server 回 `ok` 才過關。多餘的 event(如 join)也要讓 Server 正常回 200。

Step 3

升級成「接 LLM」的版本

接 LLM 的關鍵一段
const ai = await context.env.AI.run(
  "@cf/meta/llama-3.1-8b-instruct",
  { messages: [{ role: "user", content: text }] }
);
const answer = ai.response;

// 回覆 LINE
messages: [{ type: "text", text: answer }]
Step 4

部署對外(可公開的 URL)

Bash
cd functions && wrangler pages dev   # 本機測試
wrangler pages deploy dist --project-name my-line-bot
# 把上線的 URL 貼回 LINE 的 Webhook 設定

打開 LINE 掃 QR 加入你的官方帳號,送出訊息,回覆就會從你的 Worker 生出。

四、穩定上線前要補的護欄

護欄目的
時間戳去重避免重送重複回覆
限制訊息長度防止爆 token / 防過長文章
錯誤捕捉LLM 掛掉時回「稍後再試」
關鍵字黑名單過濾不該回應的內容

五、常見問題(FAQ)

Q1一定要用 Cloudflare Workers 嗎?

不一定。任何能暴露 HTTPS URL 的端點都行(Vercel、自架皆可)。Worker 免費、冷啟動快,推薦入門。

Q2記憶對話上下文很難嗎?

先把「單則訊息→回覆」跑通,再慢慢加「最近 N 則」的歷史陣列。別一次到位。

Q3訊息安全要注意什麼?

不要記錄完整使用者對話內容;敏感資料不要送進 LLM;把 token 存在環境變數別寫死在程式裡。

總結

LINE 機器人的核心只有「Webhook 收訊息 → 動腦 → 回應 API」。先 echo、再接 LLM、最後上護欄——照這條路,你的 24 小時客服今晚就能開門。

問小墨 AI