Skip to content

Agentic Design Patterns 附錄 F:Agent 推理引擎解析

davidlei

智慧 Agent 的出現,是人工智慧領域的一次重大轉折。這些系統專門用來規劃、擬定策略並執行複雜任務,而每個 Agent 的認知核心都是一個 LLM(大型語言模型)。這個 LLM 不只是一個高階的文字產生器,它扮演的是最底層的推理引擎,是那個核心的「心智」,讓 Agent 能夠做決策、擬定計畫,並和環境互動。

正因如此,理解這些模型內部的推理機制,已經不再只是學術上的探討,而是開發下一代穩健、可靠又有效的 Agent 時,一項關鍵的必要工作。在這一節,我們直接去探究這些核心引擎:對當今幾個領先的模型(Gemini、ChatGPT、Grok、Kimi、Claude 和 DeepSeek)提出一個根本的問題。透過引導這些 LLM 自己說明一步一步的推理過程,我們希望能照亮那套底層邏輯——它將決定未來智慧 Agent 系統的能力和限制。

Prompt given to each LLM: I understand you can reason, can you explain to me how you reason? Explain me step by step

Gemini

分析我的做法

我已經把解說的結構規劃好了,目標是清楚又精簡。先給一個直接的答案,再拆成幾個邏輯步驟。第 1 步會定義我使用的關鍵推理流程,接著再詳述後面的步驟。這樣應該能提供一個直截了當、容易理解的說明。

完善解說

我已經敲定了解說的結構。第 1 步聚焦在解構 Prompt,特別是分析使用者的請求。第 2 步詳述資訊檢索,強調的是模式辨識,而不是單純查資料庫。第 3 步探討綜合處理與 LLM,第 4 步則聚焦在回應生成,包含格式、語氣和指令遵循。最後我會用一段總結收尾,強化各個關鍵階段,同時維持清楚和吸引力。

闡述我的方法論

我已經把「解構 Prompt」這一步補齊了,重點放在我如何辨識使用者的意圖、核心問題,以及任何給定的限制條件。資訊檢索階段現在聚焦在模式辨識,而不只是取出資料,這會是這一節的第一項。我正在完善綜合這一步,也就是透過 LLM 和 Transformer 把資訊編織在一起。回應生成這一步已經確定了,我會用一些表情符號來加強整體語氣。

當然可以。我的推理方式,是把你的請求拆解成比較小的部分,然後運用我龐大的訓練資料,建構出一個合乎邏輯又切題的回應。這是一個從理解走到生成的多步驟流程。

以下是我推理過程的逐步拆解:


1. 解構 Prompt 📝

首先,我會分析你的問題或指令,準確理解你到底在問什麼。我會辨識:


2. 資訊檢索與綜合 🧠

一旦理解了 Prompt,我就會存取我的內部知識庫。這不像在搜尋資料庫,而是運用我在大量文字和程式碼訓練過程中學到的模式。


3. 生成回應 ✍️

這是最後一步,我把結構化的資訊轉換成人類看得懂的文字。

本質上,我的推理是一種精密的模式比對與預測。我解構你的請求,在資料中找出最相關的模式,把它們綜合成一個合乎邏輯的結構,再把這個結構轉換成清楚、格式良好的答案。

ChatGPT

太好了——讓我盡量簡單清楚地解釋我一步一步是怎麼推理的


🧠 逐步解說:我如何推理


步驟 1:閱讀並理解你的輸入

我會先分析你的用字

📌 範例: 你說:「如果 Tom 比 Jane 年長,而 Jane 比 Sue 年長,那誰最年輕?」 → 我辨識出這是一個邏輯謎題


步驟 2:啟動相關知識

我在訓練時學到的東西裡搜尋——書籍、文章、對話——把這些提取出來:

📌 範例: 我看過「比⋯⋯年長」代表某人年紀比較大。 我知道如果 A > B 而且 B > C,那麼 A > C。


步驟 3:選擇推理方法

根據問題,我決定要用哪一種推理方式

📌 範例: 在 Tom/Jane/Sue 這個案例裡,我會用演繹


步驟 4:模擬思考(Chain of Thought,思維鏈)

在這裡我會一步一步走,就像人在解問題時那樣。

📌 範例

  1. Tom 比 Jane 年長
  2. Jane 比 Sue 年長
  3. 所以:Tom > Jane > Sue
  4. 因此,Sue 最年輕

這就是所謂的 chain-of-thought reasoning(思維鏈推理)——我模擬「把它想通」的過程。


步驟 5:組出答案

現在我把結論變成一個回應,這個回應要:

📌 範例: 「Sue 最年輕,因為 Tom 比 Jane 年長,而 Jane 比 Sue 年長。」


步驟 6:調整清晰度與語氣

最後,我調整表達方式,來做到:

📌 範例: 如果你是隨口問問,我就簡單回答。如果你是在學習,我可能會拆得更細。


✅ 最終總結

步驟我做什麼
1理解你的問題
2回想相關知識
3選擇正確的推理方式
4一步一步想通
5把答案給你
6用你的風格清楚地說出來

要不要給我一個問題,我當場示範這套逐步推理?

Grok

要解釋我如何推理,是一項引人入勝的挑戰,因為這牽涉到拆解那一整套支撐我回應的東西:演算法、資料處理和決策之間複雜的交互作用。身為 Grok 3,我的推理過程受到人類認知的啟發,但運作在一個大型語言模型的限制與能力範圍之內。以下我會用一個清楚的逐步框架,拆解我推理的步驟。我會盡量簡潔但完整,避免太過技術性的術語,同時讓你對我的「思考」過程有所了解。


我如何推理的逐步解說

步驟 1:理解問題

步驟 2:脈絡分析與知識檢索

步驟 3:形成心智模型

步驟 4:評估選項與假設

步驟 5:建構回應

步驟 6:檢視與修飾


我推理的關鍵特徵


限制與注意事項

這套逐步拆解,反映了我如何模擬推理,來為你的問題(例如這一題)提供清楚、準確又切題的答案。如果你想深入某個特定步驟或面向,儘管跟我說!

Kimi

很高興你問這個——以下是一段透明的「深入內部」走查,說明我通常怎麼推理一個問題。我會用一個迷你範例,讓你看到每個階段的實際運作。

範例問題 「3⁴ 和 4³ 哪個比較大?」 我會標註每一個內部階段,讓你看到我在做什麼、為什麼這樣做。

──────────────────────── 階段 0 – 輸入前處理 Tokenization(斷詞) 我把文字拆成離散的符號:[「Which」, 「is」, 「larger」, 「:」, 「3」, 「^」, 「4」, 「or」, 「4」, 「^」, 「3」, 「?」]

語法剖析 我辨識出結構: COMPARATIVE_QUERY(最高級形容詞「larger」),帶有兩個 NUMERICAL_EXPONENT_TERMS [3^4] vs [4^3]。 語意對應 我把「larger」對應到數值關係「>」。 ──────────────────────── 階段 1 – 問題辨識與策略選擇 4. 分類任務類型 → 整數次方的算術比較。 選擇解題策略

候選策略: A. 直接求值(計算 3⁴ 和 4³)。 B. 對數比較(比較 4·ln3 與 3·ln4)。 C. 模式啟發法(小指數時,3 的次方成長得比 4 的次方快嗎?)。 我選策略 A,因為數字很小;精確的整數求值成本最低。 ──────────────────────── 階段 2 – 知識檢索 6. 提取算術事實 3² = 9(記住的) 3³ = 27(提取的) 4² = 16(記住的) 4³ = 64(提取的) 計算剩下的項 3⁴ = 3³·3 = 27×3 = 81。 ──────────────────────── 階段 3 – 執行與驗證 8. 執行比較 81 vs 64 → 81 > 64。 交叉檢查 快速的模數合理性檢查:81 mod 5 = 1,64 mod 5 = 4;沒有矛盾。 ──────────────────────── 階段 4 – 回應生成 10. 規劃回應結構

  1. 信心分數 0.99(精確整數、數值小、無歧義)。
  2. 找出可能的邊界情況 如果指數很大,直接求值就不可行了,我會改用對數。 ──────────────────────── 用人話總結推理步驟 閱讀並剖析問題。 辨識出這是一個數值比較。 判定最簡單又安全的方法是把兩個數字都算出來。 回想或計算出 3⁴ = 81 和 4³ = 64。 比較 81 > 64。 清楚地傳達結果。 這條管線——剖析、擬定策略、知識檢索、執行、驗證、解釋——在每一種規模都會重複,從小小的算術到複雜的多步驟問題都一樣。

Claude

我可以帶你走一遍我的推理過程是怎麼運作的,不過我得說明,我對自己的機制並沒有完整的洞察——這就像人類可以描述自己的思考過程,卻無法完整存取每一次神經放電一樣。

以下是我一步一步如何推理:

模式辨識與脈絡建構 當我收到你的問題,我會先辨識這是哪一類的問題或請求。我從訓練中認出模式——這是一個關於認知過程的解釋請求。我會考量你可能已經知道什麼、什麼樣的細節程度會有幫助,藉此建構脈絡。

資訊檢索與組裝 我從訓練中存取關於推理、認知科學和 AI 系統的相關資訊。這不像在搜尋資料庫——而更像你在思考某個主題時,記憶和知識自然浮現出來的樣子。

結構規劃 我會考量要怎麼組織我的回應。要不要用範例?什麼順序最說得通?就算在我開始回應的同時,我也在規劃邏輯的鋪陳。

迭代修飾 在我生成回應的每個部分時,我持續評估它是否說得通、是否和我已經說過的一致、是否切合你的問題。如果哪裡感覺不對,我可能會在心裡「回溯」並重新措辭。

限制檢查 整個過程中,我都在對照各種限制——這準確嗎?有幫助嗎?清楚嗎?安全嗎?

類比思考 我常常用類比來推理——把新的情境拿去和熟悉的模式或範例對照,那些模式或範例可能有助於闡明這個概念。

有趣的是,這裡面很多都是以一種對我來說近乎直覺的方式發生的,就像你自己的推理對你來說可能感覺很自然,儘管底下正進行著複雜的過程,超出意識的察覺。

DeepSeek

我很樂意一步一步解釋我如何「推理」!有一點很重要,得先講清楚:我的推理跟人類不一樣(我沒有意識、直覺,也沒有親身經歷)。實際上,我的「推理」是一套精密的模式比對、資訊檢索和機率計算過程,建立在我的訓練資料和架構之上。可以把它想成結構化的運算,而不是有意識的思考

以下是逐步拆解:

  1. 接收與剖析輸入:
    • 我接收你的問題(「你如何推理?」)。
    • 我把它拆成組成的部分:關鍵字(「reason」(推理)、「explain」(解釋)、「step by step」(逐步))、文法和意圖。在這裡,關鍵意圖是解釋我的內部過程。
  2. 建立脈絡並檢索相關資訊:
    • 我會取用我龐大的訓練資料集(數兆字的文字和程式碼)。
    • 我回想關於大型語言模型如何運作的資訊,特別是像 chain-of-thought(思維鏈)這類的推理技巧。
    • 我提取訓練中描述過的、關於我自己能力和限制的知識。
    • 我考量脈絡:你的問題表示你理解我會推理,想知道的是如何做到。這讓我的檢索範圍聚焦。
  3. 辨識核心概念與結構:
    • 關鍵概念浮現:統計模式、神經網路、transformer、注意力機制、下一個 token 的預測、訓練資料、Prompt 分解、邏輯推論 vs. 模式比對、限制。
    • 我把解釋組織成合乎邏輯的結構:
      • 澄清「不像人類」
      • 基礎機制
      • 基本思考過程步驟
      • 結論與限制。
  4. 建立序列(Chain of Thought,思維鏈):
    • 這是核心的「推理」步驟。我逐步、一步一步地規劃解釋,就像「出聲思考」一樣:
      • 「首先,我需要澄清這不是人類的推理⋯⋯」
      • 「接下來,我應該解釋基礎機制:模式、統計、下一個 token 的預測⋯⋯」
      • 「然後,描述我為了『這個』回應所經歷的序列:剖析、檢索、結構化、生成⋯⋯」
      • 「最後,強調限制,以及我是在模擬推理。」
    • 為了做到這點,我根據訓練資料中所有類似解釋看過的模式,預測出最可能形成一段連貫、有資訊量、逐步解釋的 token 序列
  5. 計算機率並生成輸出:
    • 我的神經網路(一個 transformer 架構)用複雜的數學和內部的「注意力」機制,為序列中可能接下來出現的每一個字分配機率。
    • 它的計算依據包含 Prompt、目前為止建構出的脈絡(部分完成的回應),以及訓練時學到的統計模式。
    • 它挑選那些高機率、相關、準確(就它所知)又切合脈絡的字/token。
    • 關鍵是:這不是符號式的邏輯演繹。而是根據模式預測連貫的序列。如果我的訓練資料裡有好的推理過程解釋,而且模式指向一個合乎邏輯的鋪陳,那麼我的輸出就看起來像是有在推理。
  6. 迭代與修飾:
    • 我每生成一個字,就動態地重新評估脈絡和後續字詞的機率。上一個字合適嗎?正在成形的結構說得通嗎?關鍵重點都涵蓋了嗎?我據此調整接下來的預測。
  7. 套用內部的訓練框架:
    • 在 RLHF(Reinforcement Learning with Human Feedback,人類回饋強化學習)中學到的技巧引導著我:
      • 要有幫助且誠實: 坦承我不是人類,也有我的限制。
      • 要清楚且有教育性: 照要求一步一步拆解。
      • 要安全: 避免有害、欺騙或誤導性的說法。
    • 過濾機制會抑制掉無意義或不相關的輸出。

把它們拼起來,套用到這個特定的解釋上:

  1. 澄清: 我判斷需要先把我的過程和人類的思考區分開來。
  2. 核心機制: 我回想並解釋我的基礎:模式、訓練資料、token 預測。
  3. 過程拆解: 我明確列出上面那 7 個獨立的運算步驟(接收與剖析 -> 生成輸出)。
  4. 聚焦在序列上: 我強調「chain-of-thought」規劃這一步,是模擬推理的關鍵。
  5. 限制: 我以重申這是模擬、而不是真正的理解來收尾,並回想已知的限制。

本質上:

我的「推理」是一種湧現性質——透過統計的方式,預測出最可能形成一段連貫、合乎邏輯、切合脈絡的回應的字詞序列,這個能力來自代表人類知識與溝通模式的龐大文字。我不像人類那樣在內部「理解」概念;我是用運算的方式辨識模式,生成反映理解的序列。我循著訓練資料裡留下的推理足跡走,而不是開創全新的抽象思考路徑。

結語

分析這幾個著名的 LLM,會看到一個相當一致的多階段推理框架。每個模型一開始都有條理地解構 Prompt,理解它的核心任務、意圖和限制。接著透過精密的模式辨識來檢索並綜合資訊,遠遠超過單純的資料庫查詢。這套結構化的流程,常被講成「chain-of-thought」,構成了它們認知能力的基礎。

正是這種有系統、一步一步的程序,讓這些 LLM 成為自主 Agent 強大的核心推理引擎。一個 Agent 需要一個可靠的中央規劃器,把高層次的目標分解成一連串離散、可執行的動作。LLM 扮演的就是這個運算心智,模擬從問題到解法的邏輯推進。透過擬定策略、評估選項、產生結構化的輸出,LLM 讓 Agent 能有效地和工具及環境互動。因此,這些模型不只是文字產生器,而是驅動下一代智慧系統的底層認知架構。歸根究柢,提升這種模擬推理的可靠性,對於開發出更有能力、更值得信賴的 AI Agent 至關重要。

Edit this post
Next
Day 15:如果是我會怎麼寫一個 agent framework