所有標籤CMU 10-423 第 23 講分兩半。前半講程式生成:評估從 BLEU 轉向「單元測試過了幾個」,基準從 HumanEval、MBPP 一路到 SWE-Bench Verified 與 Terminal-Bench 2.0;模型從 CodeBERT、Codex 到 FIM 與 StarCoder;程式領域特有的技巧是拿單元測試輸出做自我修正。後半講 agent:tool calling 的定義、Kimi K2 怎麼合成工具資料、coding agent 的五步迴圈,以及 Mind2Web、Set-of-Mark、SeeClick 這些操作網頁與 GUI 的方法。這一講沒有作業,只由 Quiz 6 驗收。
L09 把 AI Agent 講成一句話:本來你要做的事,AI 自動幫你做完。蔡炎龍沿用吳恩達的四個設計模式(Reflection、Tool Use、Planning、Multiagent Collaboration),但只實作前後兩個最好上手的:Demo07a 讓「作者」與「評論員」兩個 LLM 呼叫接力改文章,Demo07c 把員瑛式思考拆成「先想五個理由、再寫貼文」的兩階段 CoT,都用 AISuite 串 Groq 並用 Gradio 展示。LangChain、AutoGen、CrewAI 只出現在進階學習清單。第九週作業就是兩種模式二選一。
對話系統分成閒聊與任務型兩支。任務型系統傳統上拆成四個模組:語言理解(LU)把句子變成 domain/intent/slot,對話狀態追蹤(DST)累積使用者目標,對話策略決定下一步系統動作,NLG 把動作寫回句子。LLM 能自己把四步演完,卻沒辦法真的去訂位,所以要接外部工具:LaMDA 學會呼叫搜尋、計算機與翻譯器,BlenderBot 2.0 加上網路搜尋與長期記憶,WebGPT 用人類示範、reward model 與 PPO 學會操作瀏覽器,Toolformer 則讓模型自己產生並篩選工具使用的訓練資料。最後是對話怎麼評:自動指標、四種人工評估,以及 LLM-Eval。ADL Fall 2025 只有影片,投影片用 Fall 2024 版補位。
CME295 2025 版第 7 講用三塊補 LLM 的洞:RAG 補「知識停在訓練那天」,分成候選檢索與重新排序兩階段;tool calling 補「不能動手」,由後端執行模型寫出的函式呼叫;agent 用 ReAct 的觀察、規劃、行動迴圈把呼叫串起來。2026 版把這講改成 AI Agents,新增 context compaction、harness、coding agent、skills,是整個系列改最多的一講。
11-768 第 1 講先把 agent 拆到最小:工具定義和工具呼叫都只是 token,harness 負責解析、執行、把結果塞回 context,ReAct 迴圈一跑就是 agent。接著 Neubig 列出好 agent 要的六種能力,每一種都能從訓練或 harness 兩條路補,並主張 agent 是由 harness、沙盒、推論、訓練、監控五塊組成的系統,不只是一個模型。
Neubig 把 tool use 拆成五層:能力、機制、約束、介面、系統。工具呼叫本質上是模型吐出的 token,要靠 harness 解析、驗證、用 call ID 對回結果;受限解碼只保證格式不保證對;MCP 的真正價值是憑證中介;同一個模型換家 provider,工具呼叫錯誤率可以從約 15% 掉到 0.1% 以下。
Agent 有 workspace_browse 工具卻說「找不到檔案」——問題不在工具實作,在工具描述。Anthropic、OpenAI、Google 三家的官方指南都指向同一件事:觸發條件和工作流程要寫在 tool description 裡。一份 2025 年研究發現 97.1% 的 MCP 工具描述有品質問題。
looplane 已先做 bounded tool-program DSL:唯讀程式支援 list/read/search/diff、repeat 與 if_contains;modify/check transaction 會經整體 approval,失敗時回滾 touched paths。它還不是任意 JavaScript/Python code mode,也沒有平行 transaction execution。
Looplane 的 disposable clone 與 SafePathPolicy 保護來源 repo;現在 `--sandbox-checks` 也能用 macOS sandbox-exec、Linux bubblewrap 或 Landlock 包住 verification command,Cloudflare 另有受限 Sandbox slice。但不同 backend 的 network policy、外部 runtime coverage 與 production hardening 仍未一致驗證。
Looplane 只平行執行同時標成 read-only、concurrency-safe 與 READ effect 的 tool call;tool_program 提供有界的 read-only repeat/branch,tool_transaction 則對可能碰到的 workspace files 做 snapshot 與失敗 rollback。它不是外部副作用的通用交易系統。
screenshot-to-code 不是一步到位的截圖轉碼工具。核心是一個最多 30 步的 Agent Loop,搭配 7 個工具——從截圖裁切真實素材、用 Playwright 自我驗證、到同時跑 4 個模型讓使用者選最好的版本。GitHub 74,500+ stars,MIT License。
第 10 講從問答與 RAG 進入 language agents,再拆成推理規劃、記憶、工具、資料與評估;agent 不是單一模型,而是模型與外部狀態之間可被逐步檢查的迴圈。
站上把 MCP 寫得很齊,卻從沒寫過它下面那一層:agent 要代表一萬個終端使用者去讀他們各自的 Gmail 時,refresh token 存在誰家、怎麼更新、怎麼撤銷。Composio 是這層目前最完整的一家——SDK 是 MIT,執行與託管 OAuth 是雲端服務;官方自稱 1,000+ toolkit,但託管 OAuth 清單實際列出 121 個,另外 96 個要你自備憑證。2026-08-15 起的新價目:免費 10 萬次 tool call、Pro $29/月。這篇拆它的授權模型到可操作的深度,並劃出「自己接 MCP server」與「用整合平台」的分界。
CS146S 第一週的講題是「用 200 行寫出 Claude Code」加上「解剖 production agent 的 system prompt」。agent loop 本身確實只有十幾行。課程投影片最後一頁列了四條 Claude 底下實際在做的事,其中一條是用 `<system-reminder>` 標籤在各處防止模型漂掉——這在官方文件裡找不到。
MCP 管 agent ↔ 工具,A2A 管 agent ↔ agent,Skills 管可重複使用的知識。判準是資料會不會變:呼叫之間會變就要 MCP,穩定到可以寫下來就用 skill 檔案——後者不需要一個會獨立失敗的 runtime。
Memory Reward Inflation 發現自我改善 Agent 的記憶獎勵會自我膨脹,錯誤經驗越用越自信,LUCID 演算法在 BIRD 上將準確率從 54.0% 提升到 56.9%;RoMeRL 用固定維度的語意座標壓縮記憶狀態空間,Cold-Q 比率降 80%、LLM 呼叫減 21.1%;ToolLIFT 將工具軌跡抽象成功能層級工作流圖,在三個 OOD 基準上一致超越現有方法
ToolLIFT 把工具軌跡抽象成函數級工作流圖,OOD 準確率平均提升 4+ 百分點;HyperAgent 用工具-Schema 超圖建構缺口驅動的支援子圖,在 AppWorld 上比 ReAct 高 14.3 百分點且 token 用量更低;多語言多 Agent 規劃診斷發現低資源語言的規劃失敗佔比隨語言資源下降而升高,TART 修正法平均提升 5.6 百分點
業界已收斂到用 OpenTelemetry GenAI 語義約定把每個 LLM call / tool call 變成 span;偵測三大故障再分三條線:faithfulness + semantic entropy 抓幻覺、framework 層 symbolic guardrail 擋 tool misuse、max steps + action hash 去重防無限迴圈,最後全部掛上 Final / Trajectory / Single-step 三層評估。
自動 prompt 優化(APO)從 APE/OPRO 演進到 GEPA:用語言反思取代稀疏 reward,少 4–35 倍 rollouts 贏過 GRPO 約 6pp。另一邊,tool description 是被忽略的 prompt——小改措辭能讓工具選用率變 10 倍,Anthropic 實測讓 Claude 自我改寫 tool description 勝過人類專家手寫。兩條線正在合流:eval-driven 的自動優化吃掉手工調 prompt。
工具一多,選擇準確率不是緩降是崩塌:4→51 個工具從 43% 掉到 2%、10→100+ 個從 78% 掉到 13.62%。根治解法是別一次塞全部——Anthropic Tool Search Tool 用 defer loading + 檢索砍 85% token,Opus 4.5 準確率 79.5%→88.1%。description 品質的效益是條件式的:簡單場景沒差,多工具串接場景 correctness 44%→50%。
把『使用者上傳檔案就自動切 chunk、embedding』設為預設行為,等於替 LLM 預先做了一個它本來可以自己做的決定。從 Self-RAG (2310.11511)、Adaptive-RAG (2403.14403) 到 AgenticOCR (2602.24134) 這條學術線索,正在把『要不要 retrieve、要不要 parse、怎麼切 chunk』三層決策權,從 ingestion pipeline 往後推到對話時的 agent。
LLM agent 的難點不是把 function calling、skill、code interpreter、文件工具各自做出來,而是把它們組成一個會選工具、會寫程式、會拆任務、會驗證結果、又不會被 prompt injection 打穿的系統。這篇把代表論文整理成六個工程決策:function calling 可靠度、tool/skill selection、code-as-action、多步 planning、skill 系統、安全與文件生成。
MCP 不會退場,但有效範圍比想像中窄。本機開發場景 CLI 和 raw API 幾乎都贏過 MCP;MCP 真正不可替代的,是「跨 agent 共享的本機工具層」這條窄縫。
香港大學 HKUDS 開源的 Agent Harness 框架,實作了工具呼叫、技能載入、記憶、權限、多代理協作等完整基礎設施,支援 Anthropic / OpenAI / GitHub Copilot 三種 API 格式。
Claude Code 的 45 個 tool 中,每個 prompt() 都會根據使用者類型、feature flags、系統能力動態調整。將這個模式套用到 ReAct Agent,根據 orchestrator 模型能力、locale、可用 tools 三個維度動態生成 tool description,小模型自動補 few-shot,大模型省 token。
OpenClaw 對模型的硬需求是 tool use 加夠大的 context——onboarding 自動推薦本地模型的門檻是支援 tool 且 context 至少 16K。但更容易搞混的是 provider、model、agent runtime 其實是三層,`openai/*` 不等於走 Codex。
每個 AI 工具都有自己的呼叫格式,整合成本高。MCP(Model Context Protocol)是 Anthropic 提出的開放標準,統一 AI Agent 與外部工具、資料源的通訊協定,讓工具可以跨 Agent 重用。