不藏私:LINE AI 自動化客服的 15 個坑
LINE 接 AI 客服,難的不是 AI 答題,是帳號歸誰、訊息費誰付、客人怎麼打字、系統壞了誰知道。四支自家 bot 與客戶案的真實紀錄。
先說結論:LINE 接 AI 客服,難的不是讓 AI 回答問題,是 AI 以外的那些事——帳號歸誰、訊息費誰付、客人怎麼打字、系統壞掉時有沒有人知道。
這篇整理自我們自家四支 LINE bot 和幾件客戶案的實際紀錄。每個坑都是真的發生過,或是客戶真的問過。客戶名稱一律不寫。
之前寫過的 LINE 官方帳號接 AI 客服的 4 個坑(入口設計、關鍵字規則打架、轉真人斷線、推播搶帳號)這篇不重複。
TL;DR
導入前 1. 客人不一定在 LINE 2. 官方帳號建在誰名下,決定了名單帶不帶得走 3. 主動推播要錢,AI 不能隨口說「等我一下」 4. AI 用量費誰付,要在簽約前講清楚
上線時
- 官方帳號預設開著自動回應
- 客人一句話分好幾則送
- 老客戶掃 QR code 沒反應
- AI 會偷混簡體字,硬轉又會轉錯
AI 該做到哪
- 「答不出來就轉真人」會被客戶否決
- 對話記憶沒有期限
- 回得慢,還可能直接回不出去
上線後
- 系統掛了,畫面卻一切正常
工程面
- webhook 不能讓 LINE 等
- 平常沒流量的備援,不代表沒用
- 同一筆被處理兩次
一、導入前就該知道
坑 1:客人不一定在 LINE
某位教練找我們做 LINE AI 客服。盤點後發現,官方帳號好友只有 5 個人,客人全在 IG 私訊。
需求因此改成「IG 先接」。但 IG 有兩個 LINE 沒有的限制:
- 不能主動傳訊息給客人。三天後的追蹤提醒,在 IG 上做不到。
- 客人傳訊息後 24 小時內才能回。超過就關窗。
怎麼防:開工前先數一下,客人實際是從哪個管道來的。不要預設「台灣就是 LINE」。
坑 2:官方帳號建在誰名下,決定了名單帶不帶得走
LINE 給每個好友的編號(userId),是跟著「供應商」(Provider)走的。同一個人,在不同供應商底下會是不同的編號。
所以如果官方帳號的 API 是廠商用他們的供應商開的,日後換廠商時:
- 新系統拿到的好友編號,對不上舊資料
- 標籤、對話紀錄留在原廠商的資料庫裡
我們接手過一個從 SaaS 轉出的案子,簽約前就先把這件事寫進合約:如果原本的帳號移轉不過來,名單重建另外報價;標籤資料要在解約前用 CSV 完整匯出;上線時請舊好友重新走一次流程。
怎麼防: - 官方帳號和 Messaging API 建在你自己公司的供應商底下,廠商只拿管理員權限 - 換廠商之前,先移轉權限、匯出名單
坑 3:主動推播要錢,AI 不能隨口說「等我一下」
LINE 的訊息分兩種:
- 回覆訊息:客人傳來後,用那次的回覆憑證回。免費。
- 主動推播:系統自己找客人講話。按則計費,方案內的免費則數用完就要付錢。
這會影響設計。AI 要想十幾秒才能回答時,你不能先回一句「稍等,我查一下」,因為那一則已經用掉回覆憑證,後面真正的答案就只能用推播送,等於每則對話都在花錢。
怎麼防: - 用 LINE 免費的「輸入中」動畫撐場面,不要先回文字 - 報價單寫明:訊息費由客戶的官方帳號方案支付 - 多店家或多場次時,「每場一個帳號」和「全部共用一個帳號」各有利弊。每個帳號都有自己的免費額度,但名單也會被拆散。這是取捨,沒有標準答案
坑 4:AI 用量費誰付,要在簽約前講清楚
這是我們官網真的被問過的問題,同一位訪客換了三種說法追問:
「我要自己去申請 OpenAI 的 API 嗎?」 「token 的錢是我出還是你們出?」
AI 每回一次話都要付錢給模型廠商,按「token」計費(可以想成按字數計費)。常見有兩種做法:
| 做法 | 好處 | 壞處 |
|---|---|---|
| 客戶自己申請 API 金鑰 | 帳單直接來自原廠,透明;換廠商時帶得走 | 客戶要自己綁信用卡、看帳單 |
| 包在廠商月費裡 | 客戶省事 | 用量暴增時誰吸收,要另外講好 |
我們預設用第一種。
怎麼防:不管選哪種,報價單都要寫:誰付、上限多少、超過怎麼辦。
二、上線時最常卡住
坑 5:官方帳號預設開著自動回應
程式明明有在跑,客人收到的卻是官方帳號後台的罐頭訊息。
原因是:免費的官方帳號預設開著「自動回應」和「歡迎訊息」,會跟你的 AI 搶著回。另一個小坑是 Webhook 的開關,要先填好網址才點得動。
怎麼防:上線檢查表的第一行就寫「後台自動回應:關」。
坑 6:客人一句話分好幾則送
真實紀錄:
「預計下午1點左右」 (7 秒後)「方便嗎」
如果每則訊息都當成獨立問題,AI 會先回答「下午 1 點左右」,接著再回答一句沒頭沒尾的「方便嗎」。
更糟的是有關鍵字規則的時候。客人打「價格/我要預約」,前半段先觸發價目表,預約那半句就沒人理了。
怎麼防:等客人停下來,合併成一則再處理。我們的設定是:
- 句尾沒有標點 → 等 7 秒(話多半還沒說完)
- 句尾有句號、問號、驚嘆號 → 等 3 秒
- 超過 12 個字、或含有數字的訊息(「2 台 2 天多少錢」),一律交給 AI,不走關鍵字
坑 7:老客戶掃 QR code 沒反應
我們常用「掃 QR code → 加好友 → 自動開始流程」的設計。但已經是好友的人掃了,不會觸發「加好友」事件,畫面上什麼都不會發生。
印在店裡的 QR code,掃的往往正是老客戶。
怎麼防:QR code 改成帶參數的連結,讓「已經是好友」的人也能觸發流程。
坑 8:AI 會偷混簡體字,硬轉又會轉錯
在 prompt 裡寫「請用繁體中文」,只能降低機率,不能保證。我們的 bot 曾經對客人說出:
「順著流程走会通」
修法看起來很簡單:整句丟進簡轉繁工具。結果又變成:
「預估裏程 150 公裏……大臺北」
台灣人日常寫的是「里程」「公里」「台北」。整句轉換的工具會把這些字也「修正」掉。
怎麼防:送出前用程式逐字檢查,只轉換舊式繁體編碼(Big5)打不出來的字。台灣常用但會被誤轉的字列成白名單,永遠不動。
三、AI 該做到哪裡
坑 9:「答不出來就轉真人」會被客戶否決
這是最常見的保守設計,也是我們一開始的提案。某停車場客戶在會議上直接否決:
「如果什麼都轉真人,那 AI 客服還有什麼用?」
官網訪客也問過反方向的問題:「答不出來的時候,為什麼不直接說不知道、轉給真人?」兩邊都對,所以重點在畫線。
我們回頭看那間停車場的真人客服怎麼處理「我忘記按結束」這類問題,發現真人也沒有在查證,套的是通融政策:第幾次、金額多少以內就直接放行。既然是政策,就可以寫成規則。
盤點全部 46 種狀況:
- 27 種 AI 可以直接處理
- 10 種給規則就能處理
- 9 種留給真人
大約八成可以自動化。這是設計階段的盤點數字,不是上線後的實測。
怎麼防:不要問「AI 能不能回答」,要問「真人現在是怎麼判斷的」。如果真人也是照規則走,AI 就能接手。
坑 10:對話記憶沒有期限
為了讓 AI 記得上下文,系統通常會把「最近 10 則對話」一起送給 AI。但如果不看時間,三個月前聊過的事,會被 AI 當成今天的對話接著講。
怎麼防:記憶要加時間窗。我們設 12 小時,超過就當成新對話。
副作用是客人隔天問「剛剛那個」,AI 會接不上,這時就轉真人。這是取捨,不是 bug。
坑 11:回得慢,還可能直接回不出去
官網訪客的真實反饋只有三個字:「回得好慢。」
慢是一回事,更麻煩的是回不出去。系統裡通常有好幾層「最多等多久」的設定:
- AI 本身最多想多久
- 主模型出錯時,切到備用模型再等多久
- 接 LINE 的那一層最多等多久
這幾層如果分開設定,很容易出現「接 LINE 那層 65 秒就放棄,但 AI 那層光是逾時就要 60 秒,備援根本來不及跑」。我們有一支 bot 就是這樣:備援功能從來沒有在 LINE 上生效過,一直到我們把三層放在一起算才發現。
怎麼防:三層一起算。我們現在的設定是:AI 100 秒 + 備援 100 秒 < LINE 那層 230 秒 < 整個請求 280 秒。等待期間用坑 3 提到的「輸入中」動畫撐著。
四、上線之後
坑 12:系統掛了,畫面卻一切正常
為了不讓客人看到錯誤訊息,很多系統出錯時會回一句罐頭話,例如「這個問題我幫您轉給專人」。
問題是:客人不會回報,他們只會覺得 AI 很笨。整個系統掛了,從外面看起來就像「AI 剛好答不出來」。
我們踩過更隱形的版本:負責合併訊息(坑 6)的背景程式停了,客人傳的文字完全沒有回應。但 LINE 那一端照樣收到「已處理」,網站監控也全是綠燈。
怎麼防: - 罐頭回覆可以留著,但每次觸發都要同時通知你自己(我們用 Telegram) - 監控不能只看「網站有沒有回應」,要看「訊息有沒有真的處理完」:背景程式在不在跑、排隊的訊息有沒有越積越多
五、工程面
最後三個比較技術,給要自己做、或要驗收廠商的人。
坑 13:webhook 不能讓 LINE 等
LINE 把客人的訊息送到你的伺服器(這個入口叫 webhook)時,期待很快就收到回應。如果在 webhook 裡直接呼叫 AI、等 AI 想完再回,每一則訊息都會占住一個伺服器處理窗口。
我們的伺服器只有 5 個處理窗口,還跟 6 個網站共用。光是一次 AI 解牌就占住一個窗口 37 到 57 秒,同時來五個客人,網站就整個卡住。
怎麼防:webhook 只做一件事:把訊息放進排隊清單,馬上回「收到」。另外開一支背景程式,依序處理排隊的訊息。(這也是坑 12 要監控那支背景程式的原因。)
坑 14:平常沒流量的備援,不代表沒用
我們的 AI 主要走訂閱方案。訂閱額度用完時,所有服務會同時停擺,所以另外做了一條備援:額度滿了就自動改走按量計費的 API,並設兩層花費上限(每天 3 美元、每月 15 美元),超過就停手並通知我們。
有一次整理機器,看到某個備援服務「平常完全沒有流量」,就把它停掉了。隔天就有客人解牌失敗。
備援本來就是平常沒流量的。它沒流量,是因為主線一直很健康。
怎麼防:停用任何服務之前,先搜尋所有機器的設定檔,看有沒有別的程式把它當備援。停掉之後,盯著下一輪的告警。
坑 15:同一筆被處理兩次
某個預約服務每 5 分鐘跑一次排程,撈出「待處理」的預約交給 AI 產生結果。AI 有時要跑超過 5 分鐘,下一輪排程開始時,那一筆還是「待處理」,就又被撈了一次。
結果同一位客人收到兩份不同的結果。
怎麼防:開始處理前,先在資料庫把狀態從「待處理」改成「處理中」,而且只有改成功的那一方才能繼續(工程上叫「原子搶單」),再加一層檔案鎖當保險。先搶單,再做慢工。
最後
15 個坑裡,真正跟「AI 聰不聰明」有關的大概只有兩三個。其他都是帳號、計費、打字習慣、監控這些「AI 以外」的事。
所以挑廠商的時候,與其問「你們用哪個模型」,不如問:
- 官方帳號會建在誰名下?
- 訊息費和 AI 用量費誰付?
- 系統掛掉的時候,誰會先知道?
能具體回答這三題的廠商,通常踩過坑。
薩摩創意做 LINE AI 客服與預約系統,自家有四支 LINE bot 在線上運作。想聊聊你的情況,可以從LINE AI 客服服務頁開始。