
【實戰】Day 22:User Context 記憶層:讓 Agent 秒懂總經理與業務主管的思維差異
相同的問題,不同層級的主管想看的重點完全不同。本篇文章帶你進入第 2 層「User Context / Memory Layer」,透過注入使用者特徵與偏好設定,讓 AI Agent 展現真正的職場讀心術。
WRITTEN BY

- Name
- Harry Chang
當你在公司內部推行 AI Agent 時,你一定會遇到這個抱怨: 「為什麼每次問這個 AI,它都要長篇大論扯一堆細節?我只想看毛利數字!」 —— 總經理 「這 AI 給的資料太粗了,沒有各廠的交期跟具體數量,我要怎麼跟客戶談?」 —— 業務主管
這就是沒有實作 「User Context Layer (記憶與偏好層)」 的痛點。今天,我們將探討五層式架構中的第 2 層,看看如何透過紀錄使用者的「個人特徵」,讓 Agent 從一個呆板的機器人,升級為懂得察言觀色的頂級幕僚。
經典場景:當他們輸入相同的問題
假設總經理與業務主管,今天在對話框裡輸入了一模一樣的句子:
「幫我評估 NIKE 下一季的訂單狀況。」
如果沒有 Context Layer,大模型只能給出一個不痛不癢的標準答案。但在具備 User Context 的系統中,Agent 會在發動思考前,先讀取使用者的「職稱、KPI 目標、偏好格式」,並產出完全不同的分析報告:
視角一:總經理 (General Manager)
- 背後 Context:關注大局、營收、毛利、風險控制;討厭閱讀長文,喜歡重點與數據表格。
- Agent 的回答: 「總經理您好,針對 NIKE 下一季的訂單評估,核心重點如下:
- 整體營收預估:$450 萬美元 (較上季 +12%)。
- 毛利率健康度:預估毛利率 18.5%,高於公司紅線,屬健康範圍。
- 潛在風險:越南廠 (VN-02) 產能即將滿載,若再接急單可能產生高昂加班費,侵蝕利潤。 決策建議:維持現有接單步調,暫緩 NIKE 的促銷活動以保全毛利。」
視角二:業務主管 (Sales Manager)
- 背後 Context:關注業績達標率、客戶交期、特定鞋墊品項(PU/EVA)的銷售數字;喜歡條列式的行動方案 (Action Items)。
- Agent 的回答: 「主管您好,針對 NIKE 下一季的訂單操作,以下是具體細節:
- 品項佔比:PU 發泡鞋墊預估 15 萬雙,EVA 成型預估 20 萬雙。距離您本季度的業績 KPI 還差 5 萬雙。
- 交期狀況:台灣廠 (TW-01) 目前交期正常 (30天);越南廠 (VN-02) 交期已拉長至 45 天。 行動建議:
- 請優先向 NIKE 推銷『台灣廠生產的 PU 發泡鞋墊』以填補業績缺口。
- 提醒客戶越南廠交期較長,建議提早 15 天下單。」
紀錄個人特徵有什麼好處?
在架構中抽出一層專門處理 Context,對企業應用有三大絕對優勢:
1. 大幅降低用戶的 Prompt 門檻 (Zero-Shot Ready)
多數企業主管沒有時間,也沒有意願去學習複雜的 Prompt Engineering(像是「請扮演財務長,用專業的口吻,以表格輸出...」)。有了 Context Layer,系統會在背景自動把這些設定「偷塞」進 System Prompt 裡。主管只需要打一句短語,就能得到完美的回答。
2. 決策效率極大化 (KPI 對齊)
當 Agent 知道使用者的 KPI 是什麼,它就會在茫茫數據中,把最相關的指標(例如總經理的「毛利率」,業務主管的「達標率」)挑出來放在第一段。這節省了使用者在冗長報告中找重點的時間。
3. 權限與資安控管 (Security Filtering)
Context 不只記錄偏好,還記錄「權限」。當系統知道發問者是基層業務時,它可以透過 Context Layer 限制 Agent 不准呼叫 analyze_gross_margin (查毛利) 這個工具,從而在模型層級防止機密資料外洩。
實作概念:如何注入 Context?
為了更直觀地理解 Context Layer 的運作機制,我們可以參考以下的注入流程圖:
在 Pydantic AI 或 LangChain 中,要實作這個機制非常簡單。我們可以在每一次對話發起時,動態組裝 System Prompt:
# 假設我們從公司的員工資料庫 (HR System) 撈出使用者的 Context
user_profile = {
"name": "Harry",
"role": "General Manager",
"focus_metrics": ["Gross Margin", "Revenue", "Factory Capacity"],
"preferred_format": "Table and Bullet points, max 300 words."
}
# 動態組合給 Agent 的 System Prompt
base_system_prompt = "你是一個鞋墊廠的專業決策 AI。"
context_injection = f"""
請注意,現在正在詢問你的人是:{user_profile['name']},職稱為:{user_profile['role']}。
在回答時,你必須極度專注於以下指標:{', '.join(user_profile['focus_metrics'])}。
並且你的回答格式必須符合:{user_profile['preferred_format']}。
"""
final_prompt = base_system_prompt + context_injection
透過這種簡單的字串注入,Agent 就能瞬間「變身」為專屬該主管的貼身秘書。
實用建議:三個起步行動
步驟 1:建立基礎角色庫 (Persona Template)
一開始不要弄得太複雜。先為公司定義三種最常見的 Persona(例如:高階主管、業務端、生產端),針對這三種角色寫好固定的 Context 樣板。
步驟 2:記錄「歷史反饋」作為長期記憶
更進階的做法是,當主管回覆 AI「請不要給我這麼多廢話」時,系統的 Memory 機制要把這句話萃取成一個特徵:"喜歡簡潔的回答",並永久寫入該主管的 Context 資料庫中。這會讓 AI 越用越懂他。
步驟 3:在介面上顯示「當前視角」
為了避免誤會,前端 UI 最好在對話框上方提示:「👀 目前 AI 正在以 【總經理】 視角為您服務」。這能讓使用者清楚知道 AI 的回答基準是什麼。
我的反思
真正的「人工智慧」,不只是能算出正確的數學題,更是懂得換位思考。
我們在 Day 21 讓 Agent 學會了呼叫工具算數學,而在今天的 Day 22,我們為它裝上了同理心。當 AI 能夠根據不同使用者的身分、壓力與目標,給出截然不同的溫暖回饋時,這套系統就不再只是一個冷冰冰的查詢工具,而是真正不可或缺的數位幕僚。
從底層資料庫到大腦思維,這套 AI 訂單決策系統的「後端引擎」已經幾乎打造完畢了!接下來,我們將要面對最直接衝擊使用者體驗的環節——使用者介面 (UI/UX)。