在前面的日子裡,我們學會了如何抓取資料、呼叫 AI 模型分析、再把結果回寫回 Google Sheet。今天,我們將這些零散的步驟整合成一個完整的自動化工作流,重點是 結合 Gemini AI 分析客戶回饋情緒、問題類型與緊急程度,並即時通知負面或高緊急回饋。
整個流程包含 6 大步驟:
定時觸發
使用 Schedule Trigger
每 5 分鐘檢查 Google Sheet 新增回饋。
讀取 Google Sheet
使用 Google Sheets
節點抓取回饋資料。
篩選未處理資料
用 IF
節點判斷 情緒分類
是否為空,避免重複分析。
呼叫 Gemini AI 模型分析
利用 Message a model
節點呼叫 Google Gemini AI,分析情緒分類、問題類型、緊急程度,並生成摘要。
解析 AI 回應
用 Code
節點將 Gemini AI 回傳的 JSON 清洗、中文化、補上缺漏欄位,方便後續使用。
更新 Google Sheet & 發送警報
情緒分類
、問題類型
、緊急程度
、AI摘要
NoOp
,不做任何動作在這個工作流中,Gemini AI 扮演核心角色:
自動理解回饋語意
AI 可以判斷文字中的情緒、回饋類型與緊急程度,替代人工分類。
生成摘要
用一句話概括回饋,方便快速瀏覽。
標準化資料
回傳 JSON,方便直接寫回 Google Sheet,確保資料整齊一致。
Schedule Trigger
節點類型:Google Sheets
功能:
gid=0
IF
情緒分類
為空Message a model
(Google Gemini)你是一個專業的客戶回饋分析助手。請分析以下客戶回饋,並以 JSON 格式回覆。
客戶回饋:「{{ $json['回饋內容'] }}」
客戶姓名: "{{ $json['客戶姓名'] }}"
時間戳記: "{{ $json['時間戳記'] }}"
rowNumber: "{{ $json.rowNumber }}"
請提供:
1. sentiment: 情緒分類(positive/neutral/negative)
2. category: 問題類型(產品功能/系統問題/服務品質/功能建議/其他)
3. urgency: 緊急程度(high/medium/low)
4. summary: 一句話摘要(繁體中文,20字內)
請直接回覆 JSON,格式如下,不要包含其他文字:
{
"sentiment": "...",
"category": "...",
"urgency": "...",
"summary": "...",
"originalFeedback": "{{ $json['回饋內容'] }}",
"customerName": "{{ $json['客戶姓名'] }}",
"timestamp": "{{ $json['時間戳記'] }}",
"rowNumber": "{{ $json.rowNumber }}"
}
AI 功能:
節點類型:Code
功能:
return $input.all().map(item => {
// 取得 AI 回應文字
const aiResponse = item.json?.content?.parts?.[0]?.text || '{}';
// 移除 markdown
const cleanJson = aiResponse.replace(/```json\n?|\n?```/g, '').trim();
// 解析 JSON
let analysis;
try {
analysis = JSON.parse(cleanJson);
} catch (error) {
analysis = {
sentiment: "neutral",
category: "其他",
urgency: "low",
summary: "解析失敗"
};
}
// 中文轉換
const sentimentMap = { positive: "正面", neutral: "中立", negative: "負面" };
const urgencyMap = { high: "高", medium: "中", low: "低" };
// 回傳完整結果
return {
json: {
sentiment: sentimentMap[analysis.sentiment] || "中立",
category: analysis.category || "其他",
urgency: urgencyMap[analysis.urgency] || "低",
summary: analysis.summary || "",
originalFeedback: analysis.originalFeedback || "",
customerName: analysis.customerName || "",
timestamp: analysis.timestamp || "",
row_number: analysis.rowNumber ?? analysis.row_number ?? null // 這裡一樣用底線對應 Google Sheet
}
};
});
更新欄位:
情緒分類
→ sentiment問題類型
→ category緊急程度
→ urgencyAI摘要
→ summary判斷警報:
條件:情緒為負面 OR 緊急程度為高
發送 Discord 警報,內容包含:
否則:
NoOp
)Day 15 的重點是 AI + 自動化整合:Gemini AI 成為「智慧助理」,自動化完成分類與摘要,企業團隊只需專注於處理警報與優先回饋。