從問題到經過驗證的答案
假設使用者問:「哪些教師在研究代理式 AI?」整段旅程共有 10 個步驟。本單元接下來會逐一放大每個階段。
- 使用者提出問題
- 解讀意圖
- 發現工具
- 選擇工具
- 準備參數
- 依 Schema 驗證
- 執行工具
- 回傳結構化結果
- 產生有依據的回答
- 人工驗證
資訊
AI 201 · Module 3
AI 如何找到工具、準備參數、呼叫工具,並把結果整理成有依據的回答
開始第一節假設使用者問:「哪些教師在研究代理式 AI?」整段旅程共有 10 個步驟。本單元接下來會逐一放大每個階段。
資訊
AI 要能使用工具,必須先知道工具存在。Client 會用一個名為 tools/list 的請求,詢問 Server:「你有哪些工具?」Server 則回覆每項工具的描述。
{
"tools": [
{
"name": "find_research_experts",
"description": "Find people by research topic and role.",
"inputSchema": {
"type": "object",
"properties": {
"topic": { "type": "string" },
"role": { "type": "string", "enum": ["faculty", "student", "staff"] }
},
"required": ["topic"]
}
}
]
}資訊
tools/list 的用途是什麼?
拿到工具描述之後,AI 會把問題對應到某項能力,並填寫 Schema。針對「哪些教師在研究代理式 AI?」,find_research_experts 的描述最符合,欄位會填入下列的值。
| 問題中的部分 | 參數 | 值 |
|---|---|---|
| 「研究代理式 AI」 | topic | agentic AI |
| 「哪些教師」 | role | faculty |
注意
在設計良好的工具呼叫畫面中,學習者實際上能觀察到下列哪一項?
要執行工具,Client 會送出名為 tools/call 的請求,內含工具名稱與參數。在執行任何動作之前,Server 會先依 Schema 驗證參數。如果缺少必填值,或值不在允許範圍內,呼叫就會被拒絕,而不是由系統自行猜測。
{
"method": "tools/call",
"params": {
"name": "find_research_experts",
"arguments": {
"topic": "agentic AI",
"role": "faculty"
}
}
}送出的參數不符合 Schema(缺少必填值)時,應該發生什麼事?
工具會回傳結構化的結果:AI 與介面都能穩定讀取的欄位。好的結果還會附上來源資訊(provenance),說明資料從哪裡來、有多新。
{
"results": [
{ "name": "Example Person A", "role": "faculty", "topics": ["agentic AI"] },
{ "name": "Example Person B", "role": "faculty", "topics": ["agentic AI", "learning analytics"] }
],
"provenance": {
"source": "AI4X research directory",
"retrievedAt": "2026-01-15T09:00:00Z",
"lastUpdated": "2026-01-10",
"completeness": "partial"
}
}| 欄位 | 它告訴你什麼 |
|---|---|
| source | 資料來自哪個權威系統 |
| retrievedAt | 工具剛剛取得資料的時間 |
| lastUpdated | 來源紀錄本身最後一次更新的時間 |
| completeness | 清單是完整的,還是只有部分 |
結果中出現 "completeness": "partial",最終回答應該如何處理?
AI 接著根據工具結果寫出回答。有依據的回答會把兩件事分開:來自工具的事實,以及 AI 在事實周圍自己加上的文字或摘要。
完成
最後一步交給你。對照來源檢查人名、留意日期,並判斷這個答案是否足以支撐你要拿它來做的事。
工具沒有回傳任何符合的專家,最好的最終回答是什麼?