AI Agents 入門課程 · 第 9 課 / 共 18 課

元認知設計模式:讓 AI Agent「思考自己的思考」

原文:Microsoft AI Agents for Beginners · MIT 授權

什麼是元認知(Metacognition)?

一句話:元認知就是「思考自己的思考」——讓 AI Agent 能夠自我評估、察覺錯誤,並自動調整決策策略。

元認知是高階認知過程,涉及對自身思考的意識與調控。對 AI Agent 來說,這代表它們能根據自我覺察和過去經驗,來評估和調整自己的行動。就像人類「讀空氣」或重新審視問題的方式一樣,AI Agent 也能監控、調節和適應自己的行為。

元認知解決的四個核心挑戰

挑戰說明
透明度 (Transparency)確保 AI 系統能解釋自己的推理過程與決策原因
推理能力 (Reasoning)增強 AI 整合資訊並做出合理決策的能力
適應性 (Adaptation)讓 AI 能適應新環境與不斷變化的條件
感知力 (Perception)提升 AI 辨識和解讀環境資料的準確度

真正的元認知長什麼樣子?

在真正的元認知中,AI 會明確地推理自己的推理

元認知在 AI Agent 中的重要性

能力說明
自我反思 (Self-Reflection)Agent 能評估自己的表現,找出改進空間
適應性 (Adaptability)根據過去經驗和環境變化,修改策略
錯誤修正 (Error Correction)自主偵測並修正錯誤,產生更準確的結果
資源管理 (Resource Management)透過規劃與評估,最佳化時間和計算資源的使用

AI Agent 的基本組成

在深入元認知之前,先回顧 AI Agent 的基本元件:

元件說明
人格 (Persona)Agent 的個性與特質,定義它如何與使用者互動
工具 (Tools)Agent 能執行的功能與能力
技能 (Skills)Agent 擁有的知識與專業

這三個元件共同構成一個「專業單元」,用來完成特定任務。

旅行社 Agent 的元認知範例

假設你正在設計一個 AI 旅行社 Agent(Travel Agent),協助使用者規劃假期。要加入元認知,Travel Agent 需要根據自我覺察和過去經驗來評估並調整行動。

任務步驟

  1. 收集使用者偏好:詢問旅行日期、預算、興趣(博物館、美食、購物等)及特殊需求
  2. 檢索資訊:搜尋符合偏好的航班、住宿、景點和餐廳
  3. 生成推薦:提供包含航班、飯店和建議活動的個人化行程
  4. 根據回饋調整:收集使用者對推薦的意見並進行調整

元認知如何運作

  1. 分析使用者回饋:Travel Agent 審查哪些推薦受歡迎、哪些不被接受,並據此調整未來建議
  2. 適應性:如果使用者曾表示不喜歡擁擠的地方,未來會避免在尖峰時段推薦熱門景點
  3. 錯誤修正:如果之前推薦了一間已客滿的飯店,Agent 會學會在推薦前更嚴格檢查可用性

Agent 中的規劃(Planning)

規劃是 AI Agent 行為的關鍵部分。它涉及勾勒實現目標所需的步驟,考量當前狀態、可用資源和潛在障礙。

規劃要素

要素說明
當前任務明確定義任務目標
完成步驟將任務拆解為可管理的小步驟
所需資源識別完成任務所需的資源
經驗利用過去經驗來指導規劃

Travel Agent 的規劃步驟

  1. 收集使用者偏好(日期、預算、興趣)
  2. 檢索資訊(航班、住宿、景點、餐廳)
  3. 生成個人化行程推薦
  4. 向使用者展示行程並請求審閱
  5. 收集回饋
  6. 根據回饋調整
  7. 最終確認
  8. 預訂並確認所有 reservation
  9. 提供持續支援(旅程前後的變更需求)

修正型 RAG(Corrective RAG)

修正型 RAG 是將檢索增強生成(RAG)與自我修正機制結合——不只檢索資料,還會評估資料的相關性、根據回饋修正,持續提升準確度。

RAG vs 預先載入上下文

RAG(檢索增強生成)預先載入上下文
收到查詢時,從外部來源動態擷取相關文件或資料在處理查詢前,預先載入相關背景知識到模型中
檢索到的資訊用來增強生成模型的輸入模型從一開始就能取得這些資訊,不需即時檢索
適合動態、需要最新資料的場景適合常用、靜態的知識,回應更快速

修正型 RAG 的三步驟

  1. 提示技術 (Prompting):使用特定提示來引導 Agent 檢索相關資訊
  2. 工具 (Tool):實作演算法來評估檢索資訊的相關性,並生成準確回應
  3. 評估 (Evaluation):持續評估 Agent 的表現,進行調整以改善準確度和效率

實戰範例:用 SQL 實作修正型 RAG

以下展示 AI Agent 如何動態生成 SQL 查詢來檢索資料,這正是 RAG 技術的一種實作方式:

def generate_sql_query(table, preferences):
    query = f"SELECT * FROM {table} WHERE "
    conditions = []
    for key, value in preferences.items():
        conditions.append(f"{key}='{value}'")
    query += " AND ".join(conditions)
    return query

# 動態生成的 SQL 範例:
# SELECT * FROM flights WHERE destination='Paris' AND budget='moderate';
# SELECT * FROM hotels WHERE destination='Paris' AND budget='moderate';
# SELECT * FROM attractions WHERE destination='Paris' AND interests='museums, cuisine';

飯店推薦 Agent:元認知的完整實作

以下展示一個具有元認知能力的飯店推薦 Agent——它會反思自己的決策過程,當做出次優選擇時自動調整策略:

元認知的三個階段

  1. 初始決策:Agent 先用「最便宜」策略選飯店,但可能忽略品質
  2. 反思與評估:透過使用者回饋檢查選擇是否「糟糕」,反思自己的推理
  3. 調整策略:從「最便宜」切換到「最高品質」,改善未來的決策
class HotelRecommendationAgent:
    def __init__(self):
        self.previous_choices = []
        self.corrected_choices = []
        self.recommendation_strategies = ['cheapest', 'highest_quality']

    def recommend_hotel(self, hotels, strategy):
        if strategy == 'cheapest':
            recommended = min(hotels, key=lambda x: x['price'])
        elif strategy == 'highest_quality':
            recommended = max(hotels, key=lambda x: x['quality'])
        self.previous_choices.append((strategy, recommended))
        return recommended

    def reflect_on_choice(self):
        """反思上次選擇,決定是否調整策略"""
        last_strategy, last_choice = self.previous_choices[-1]
        user_feedback = self.get_user_feedback(last_choice)
        if user_feedback == "bad":
            new_strategy = 'highest_quality' if last_strategy == 'cheapest' else 'cheapest'
            self.corrected_choices.append((new_strategy, last_choice))
            return f"反思中。將策略調整為 {new_strategy}。"
        return "上次選擇不錯,不需調整。"

    def get_user_feedback(self, hotel):
        # 模擬回饋:太便宜或品質低於7分 → 差評
        if hotel['price'] < 100 or hotel['quality'] < 7:
            return "bad"
        return "good"

這個範例的關鍵在於 reflect_on_choice() 方法:Agent 不僅執行動作,還會回頭審視自己的決策品質,並在策略層面進行修正。這就是元認知的核心。

本課重點回顧

  1. 元認知 = 思考自己的思考:讓 AI Agent 不僅執行任務,還能反思自己為何這樣做、是否有更好的方法
  2. 四大價值:自我反思、適應性、錯誤修正、資源管理——元認知讓 Agent 不再只是盲目執行
  3. 規劃是元認知的基礎:拆解任務、識別資源、利用經驗,為反思提供結構化的框架
  4. 修正型 RAG:不只檢索資料,還會評估相關性、根據回饋修正,形成「檢索 → 評估 → 修正」的閉環學習
  5. 策略層面調整:真正的元認知不是只改結果,而是修改決策策略本身——這是與一般錯誤修正最關鍵的差異

原始資源