iT邦幫忙

2025 iThome 鐵人賽

DAY 19
0
生成式 AI

從 RAG 到 Agentic RAG:30 天打造本機智慧檢索系統系列 第 19

Day 19: AI Agent為何如此神奇? 一起來認識MRKL (唸Miracle)

  • 分享至 

  • xImage
  •  

前言

昨日的文章介紹了各項Agent flow,其中筆者目前主要使用的框架為MRKL系統,今天就一起來認識一下這個神奇的框架吧!

🧩MRKL背景知識

MRKL 系統(Modular Reasoning, Knowledge and Language,發音類似 miracle,聽起來就超讚!)由 AI21 Labs 研究人員於 2022 年 5 月 3 日提出,並發表於技術文件
MRKL Systems: A modular, neuro-symbolic architecture that combines large language models, external knowledge sources and discrete reasoning

它是一種 神經符號 (neuro-symbolic) 架構,核心理念是結合:

  • 大型語言模型 (LLMs) 的語言理解能力
  • 外部知識來源 (APIs, databases)
  • 離散推理模組 (symbolic reasoning modules)

🔍為何需要 MRKL?

該篇論文指出,純 LLM 存在以下限制,而 MRKL 的設計正是為了解決這些問題:

  1. 缺乏即時資訊:無法反映最新的匯率、天氣、疫情數據等。
  2. 無法存取專有知識:例如公司內部資料庫或遊戲狀態。
  3. 推理限制:在四位數以上的加法、複雜計算上常出錯。
  4. 訓練成本過高:新增功能需要重新訓練整個 LLM,還可能遇到 災難性遺忘 (catastrophic forgetting)

(大家有沒有發現問題1、2、4其實和RAG想解決的一樣?)

🏗️MRKL 的核心架構

MRKL 採用 系統化方法 (systems approach),主要由兩部分組成:

1. 專家模組(Experts)

  • 神經模組 (Neural):大型 LLM 或小型專用模型
  • 符號模組 (Symbolic):如
    • 計算器 (math calculator)
    • 貨幣轉換器 (currency converter)
    • API 查詢模組(例如資料庫查詢)

2. 路由器(Router)

  • MRKL 的決策核心
  • 將輸入導向最適合的模組
  • 通常由 LLM 微調而成
  • 可將複雜問題分解為子任務並調用不同模組
  • 最後整合結果並輸出回應

https://ithelp.ithome.com.tw/upload/images/20251003/20178499MQxbEZiWMl.png
圖片來源:MRKL Systems

📌 示例:
查詢「台中市的當前氣溫與歷史平均值相比如何?」

  1. 調用天氣 API → 查台中當前氣溫
  2. 調用日曆模組 → 當前日期
  3. 調用歷史資料庫 API → 平均氣溫
  4. 調用計算器模組 → 計算差異

🚀MRKL 的優勢

  • 擴展性:新增功能僅需增加模組並微調路由器,不影響既有功能
  • 知識時效性:可動態接入 API,獲取最新資訊
  • 組合性:能處理多步驟任務
  • 安全回退:若沒有模組匹配 → fallback 到通用 LLM
  • 可解釋性:輸出可追溯到來源模組

⏳補充:LangChain 中的 MRKL 與棄用狀況

LangChain 曾透過 MRKLChain 實現 MRKL 架構:

  • 類別名稱:langchain.agents.mrkl.base.MRKLChain
  • 但自 0.1.0 起已被棄用

📌 官方建議:使用 LangGraph 取代。

雖然如此,筆者目前還是以MRKL為Agent flow的主要框架,也許未來測試新的框架更適合,可以再寫文章分享!

🌱總結與筆者觀點

  • MRKL 是結合 LLM + API + 符號推理 的模組化架構
  • 它克服了 LLM 在即時性、專有知識、精確推理與可擴展性上的限制
  • 在 LangChain 中 MRKLChain 已被棄用,建議改用 LangGraph,更靈活、更完整

然而,雖然未來 MRKL 可能逐步被新框架取代,但如同前述,筆者目前還是選擇以 MRKL 實作完成 Agentic RAG 的功能。
這並非執著於特定工具,而是因為 清楚的架構設計 才是關鍵。隨著 AI Agent 不斷進化,未來工具的差異將不再是核心,真正重要的是設計思路與架構的清晰度。

👉 總之,本文後續的實作仍將採用 MRKL 框架,以展現其在 Agentic RAG 中的應用。


上一篇
Day 18:什麼! AI Agent 也有分哦! Agent flow介紹
下一篇
Day 20: RAG無法找回正確的資料該怎麼辦? 淺談embedding model fine-tuning
系列文
從 RAG 到 Agentic RAG:30 天打造本機智慧檢索系統20
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言