> ## Documentation Index
> Fetch the complete documentation index at: https://data-machi.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Day 27｜代理（Agent）在工作時，使用者為什麼不能只看到轉圈圈？

> 學習如何在 AI 代理執行長時間多步驟任務時提供清晰可信的使用者體驗：用人類可讀的進度提示、可行動錯誤訊息、完成狀態與可恢復任務設計，降低等待期間的不確定感。

<Frame>
  <img src="https://mintcdn.com/data-machi/Hyfs0AhNXMsF2W1V/day27.png?fit=max&auto=format&n=Hyfs0AhNXMsF2W1V&q=85&s=5c760fda6bdb6a1f1eca4b055dc09591" alt="Day27" width="1672" height="941" data-path="day27.png" />
</Frame>

<p align="center">
  *圖 1｜Agent UX 不應只顯示轉圈圈，而要讓使用者看見任務正在理解、搜尋、執行、整合與驗證*
</p>

傳統聊天機器人的互動很簡單：送出問題，等幾秒，看到答案。但當 Data Machi 開始執行多步驟工作後，等待時間可能來自路由、Sheets 查詢、RAG 搜尋、Verification 與模型整理。如果介面從頭到尾只有一個 loading spinner，使用者很快就會懷疑系統是不是卡住了。

代理使用者體驗（Agent UX）的核心因此不是把畫面做得更華麗，而是讓使用者理解：**系統現在在哪一步、是否仍在進行、哪一部分失敗，以及最後是否真的完成任務。**

## 進度提示要描述工作，不要暴露內部推理

使用者不需要看到模型內部的 reasoning，但可以看到人類可理解的工作階段，例如「正在確認問題類型」、「正在查詢 Google Sheets」、「正在搜尋文件」、「正在整合結果」。這些提示能建立可預期感，也讓長時間任務不再像黑箱。

進度訊息最好和 LangGraph Node 對應。當流程進入某個 Node，就更新一個狀態；這樣前端看到的不是模型隨機生成的文字，而是系統真正的執行階段。

## Streaming 不等於完成

串流輸出可以讓使用者更早看到文字，但有時會造成另一個問題：模型已經開始生成回答，後面的工具呼叫或答案驗證（Verification）卻還沒完成。因此在代理（Agent）產品中，要區分「正在產生部分內容」與「整個任務已完成」。

比較穩定的做法，是讓前端有明確狀態，例如 `planning`、`retrieving`、`verifying`、`generating`、`completed`、`failed`。使用者才知道目前看到的是中間狀態還是最終結果。

## 錯誤訊息要能讓人採取行動

如果 Sheets 權限不足，就明確指出資料來源無法存取；如果 RAG 找不到足夠內容，就說明文件證據不足；如果模型 timeout，可以讓使用者重試，而不是只顯示「發生錯誤」。

對多來源任務也可以接受部分成功。假設數據與文件都查到了，但專案 API 失敗，畫面可以保留已完成結果，再標示哪一部分未取得。這比整個回答直接消失更符合真實工作需求。

## 從 Demo UX 到工作流 UX

一個成熟的代理（Agent）介面，應該逐漸從「送出問題 → 等答案」變成「送出任務 → 看進度 → 必要時互動 → 得到可恢復的結果」。如果未來任務更長，甚至可以加入任務識別碼，讓使用者離開頁面後仍能回來查看狀態。

目前 Data Machi 不需要一步做到最完整，但至少應該把主要執行階段與錯誤類型呈現出來，這會讓產品可信度比單純換更強模型提升更多。

## 進階理解｜代理使用者體驗也有成熟度

代理使用者體驗可以分成五個成熟階段：從「只有轉圈圈」，進到「有技術狀態但使用者看不懂」，再到「人類可讀的進度提示」、「錯誤可行動、完成狀態明確」，最後才是「長任務可追蹤、離開頁面後仍能回來查看與恢復」。這提醒我們，Agent UX 的成熟並不是加更多動畫，而是讓使用者更清楚知道任務是否真的往前走。

| 成熟度     | 使用者看到什麼      |
| ------- | ------------ |
| Level 1 | 只有 Loading   |
| Level 2 | 有狀態，但都是技術術語  |
| Level 3 | 看得懂現在正在做什麼   |
| Level 4 | 錯誤可行動、完成狀態清楚 |
| Level 5 | 長任務可追蹤、可恢復   |

<Warning>
  模型輸出「請稍等，我幫你查一下」不等於系統真的在工作。如果後端沒有持續執行任何 Tool，這句話只是一段文字。進度提示應該來自真實 Workflow 狀態，而不是讓模型假裝忙碌。
</Warning>

<Info>
  今天先記住一件事：Agent UX 的目標不是展示 AI 有多複雜，而是讓使用者一直知道「系統現在在做什麼，我需不需要做什麼」。
</Info>

下一篇，我們會處理正式上線前不能跳過的另一層：API Key、Service Account、資料權限與資產所有權。
