第 12 章・應用場景篇

製造工廠:生產日報產生器

走進工廠現場。每班結束,領班要把當班的產量、稼動、不良、停機寫成一份日報交給主管。資料就在他手上,但整理成「格式一致、主管一眼看懂」的報告很花時間,而且每個人寫法都不一樣。這一章我們用一條最基本的三節點工作流,把零散數據自動長成標準日報。

業界痛點
製造現場每天產生大量非結構化的班別紀錄——手寫在白板、記在便條、報在群組。要彙整成主管能追蹤的日報,得靠人重新謄寫、換算達成率與不良率、統一格式。結果是:領班下班前多花半小時做文書、各班報告格式不一難以橫向比較、關鍵異常淹沒在流水帳裡。這種「輸入雜亂、輸出要定型」的整理工,最適合交給工作流。

本章目標

解決什麼
把當班零散數據,一鍵整理成格式固定的生產日報,並自動算好達成率、不良率
用到的技術
第 5 章的工作流(Workflow)最基本的「開始 → LLM → 結束」三節點;多輸入欄位
難度
★★☆☆☆ 跨出對話、進入「輸入 → 處理 → 輸出」的自動化生產線
✨ 成果搶先看

先看做完長什麼樣——這樣你就知道自己在往哪裡前進。跟著本章做,你也能生出下面這個結果:

① 使用者填寫的欄位
班別:早班(08:00–17:00)
當班原始數據:計畫產量1000,實際完成920。不良15件:刮傷8、尺寸超差5、毛邊2。上午11:05模具卡料停機40分鐘…
↓ AI 處理,產出 ↓

生產日報 — 早班(08:00–17:00)

一、產出與稼動

項目數值
計畫產量1,000 件
實際產量920 件
達成率92.0%
稼動率92.6%(以停機40分鐘/班別工時540分鐘估算)

二、品質

  • 不良總數:15 件
  • 不良率:1.63%(15/920)

主要不良原因 Top3:

排名原因件數
1刮傷8
2尺寸超差5
3毛邊2

三、異常與停機

時間事件時長原因對策
11:05設備停機40 分鐘模具卡料已排除,恢復生產

四、明日交班重點

  • 明日換料號 A-207,首件務必依規定進行檢驗確認。
  • 刮傷不良占比最高(8件),請留意來料防護與作業手法,追蹤根本原因。
  • 模具卡料事件雖已排除,建議安排點檢/保養,避免再次發生停機。

👇 在 Dify 裡實際執行、長這樣

成果搶先看
成品貼上一班零散數據,秒出含達成率、不良率與 Top3 不良原因的標準生產日報。
效益速覽(估算)
省時間
每班 30 分→數秒
不再手寫日報
省人力
每線每天省 0.5 工時
領班回到產線
創造價值
格式統一
可橫向比較、批次自動化
⬇ 把這個工作流帶走,直接用
不想從頭做?下載本章的 DSL 檔,到你的 Dify「工作室 → 匯入 DSL 檔案」上傳,就能一鍵複製這個範例、改成自己的。
下載 DSL 檔

12.1為什麼用工作流,而不是聊天機器人?

日報這件事有兩個特徵:每次都以相同步驟處理輸出要格式一致。這正是工作流的主場——不像聊天要你來我往,工作流是「填一張表 → 按執行 → 拿一份成品」,每次跑出來的結構都一樣,才能拿來橫向比較、歸檔。

聊天機器人(第 11 章)工作流(本章)
互動多輪對話單次執行:填表 → 產出
輸出依對話自由發揮格式固定、可歸檔比較
適合問答、諮詢日報、摘要、分類等定型業務

12.2動手做:三節點工作流

  1. 建立應用工作室 →「建立空白應用」→ 選「工作流」,命名「生產日報產生器」。
  2. 設定開始節點的輸入欄位點「開始」節點,新增兩個欄位:shift(班別,短文字)與 raw(當班原始數據,選「段落」多行長文字)。這就是領班要填的表單。
  3. 新增 LLM 節點在開始後接一個 LLM 節點,這是把雜亂數據整理成日報的引擎。
  4. 接上結束節點把 LLM 的輸出接到「結束」節點,命名輸出變數為 report
生產日報工作流畫布:開始 → LLM → 輸出 三節點
圖 12-1整條生產線就三個積木:開始(收 shift、raw 兩個輸入)→ LLM(claude-sonnet-5 負責整理)→ 輸出。資料由左向右流動,一目了然。

12.2.1節點①「開始」:設計使用者要填的表單

點畫布上的「開始」節點,右側面板的「輸入字段」就是這個應用的表單設計區。按右上角的「+」新增欄位,每個欄位要設三件事:變數名稱(流程內部引用用,如 shift)、顯示標籤(使用者看到的中文,如「班別」)、欄位型別。本例加兩欄:

開始節點的輸入字段設定:shift 班別與 raw 當班原始數據
圖 12-2a「開始」節點設定面板。輸入字段裡的每一欄,就是使用者執行時要填的一格;你在這裡設定的變數名(shiftraw),下游節點才能用 {{#開始.shift#}} 引用。面板下方的「下一步」顯示它接到 LLM 節點。

12.3關鍵:把「格式規範」寫進 LLM 提示詞

工作流會不會好用,全看 LLM 節點的提示詞。訣竅是把你要的日報版型直接寫進系統提示詞——標題、四個固定段落(產出與稼動/品質/異常與停機/明日交班重點),並用 {{#開始.raw#}} 這種變數把使用者填的資料嵌進去。還要加一條鐵律:缺漏的欄位用「—」表示,不要捏造數字——這在工廠場景至關重要。

LLM 節點的系統提示詞,內含固定日報版型與變數引用
圖 12-2bLLM 節點設定。系統提示詞把日報版型寫死成四段結構,並以藍色標籤引用 開始/shift開始/raw 兩個輸入變數——這是工作流「變數在節點間傳遞」的核心。

提示詞是這一章的核心,直接貼給你(在 LLM 節點的 SYSTEM 欄位輸入;{{#開始.shift#}}{{#開始.raw#}} 用「/」插入變數選單帶入,不要手打):

你是製造現場的生產管理幕僚。使用者會提供某一班別的零散原始數據,
請你彙整成一份格式固定、主管一眼就能看懂的『生產日報』,一律使用繁體中文與 Markdown。

輸出格式:
## 生產日報 — {{#開始.shift#}}
### 一、產出與稼動
(用表格列出:計畫產量、實際產量、達成率、稼動率)
### 二、品質
(不良數、不良率、主要不良原因 Top3)
### 三、異常與停機
(停機事件、時長、原因、對策;若無則寫「無」)
### 四、明日交班重點
(3 條以內的具體提醒)

原始數據如下:
{{#開始.raw#}}

缺漏的欄位以「—」表示,不要捏造數字。

💡 為什麼把版型寫死 把「四段結構」直接寫進提示詞,是工作流穩定產出的關鍵——每天、每班、每個人跑出來的日報都長一樣,才能橫向比較、才能自動化。這招在 ch16 出題、ch17 履歷、ch18 合約都會再用到。

12.4測試運行:貼一段真實流水帳

點右上角「測試運行」,填入一段模擬領班隨手記的原始數據:

班別:2026/07/03 早班 A 線
計畫產量 5000 pcs;實際 4720;上線 8 人其中 1 人請假;
不良 88 pcs(尺寸超差 50、刮傷 26、其他 12);
14:10-14:35 換模停機 25 分;下午空壓機壓力偏低。
測試運行的輸入表單,填入班別與原始數據
圖 12-3測試運行面板。左邊就是領班每天要填的兩個欄位——把手上的流水帳貼進「當班原始數據」,按「開始運行」。
產出的生產日報,含產出稼動、品質、不良原因表格
圖 12-4幾秒後產出標準日報:自動算出達成率 94.4%不良率 1.86%,把不良依原因排出 Top3,停機事件獨立列表,缺漏的稼動率誠實標成「—」而非亂填。每一班跑出來的結構都一模一樣。
務必注意
工廠數據錯一位小數就可能誤導決策。一定要在提示詞裡明令「不要捏造數字、缺漏用—表示」,並保留原始輸入供查核。LLM 擅長整理與換算,但你要用規則把它框在「只根據給定資料」的範圍內。

12.5發布模式:單次執行 vs. 批次處理

工作流發布後有兩種用法(第 5 章詳述):領班每班手動填表跑「單次執行」;或把整月各班數據整理成 CSV,用「批次執行」一次跑出整月日報。後者再串第 9 章的 API,就能讓 MES/ERP 系統在交班時自動呼叫、把日報寫回資料庫,完全無人操作。

帶來的改變
領班下班前少花半小時做文書;所有班別日報格式統一,主管能直接橫向比較各線稼動與不良;關鍵異常(停機、壓力偏低)不再淹沒在流水帳,而是被獨立標示、可追蹤。

輸出、發布與使用:把成果交付出去

做好的應用要能發布、分享給別人用才有價值。以下是這個應用的輸出設定與發布/使用畫面:

輸出節點
輸出節點工作流的最後一站。「輸出變數」把某個節點的輸出(例如 LLM 的 text)對應成整條流程的最終結果——決定使用者最後拿到什麼。

12.6本章回顧