之前已經有基礎了,這次要繼續延伸做下去,後面應該也會放上我比較完整的程式碼,所以如果前面的內容已經忘光光的沒有關係,我這邊應該會打算做點整理,所以程式碼後面都會補上的!
今天主要會構思一下我們要怎麼做我們的 AI Agent,那我們開始吧!
其實寫到這裡,我有時候也會去想這個問題,如果我已經基礎建立好一個 RAG 系統就能夠回答我的問題,為甚麼還要加上 Agent,但我後來思考過後的出的結論是,我們這個系統的流程是死的,就好像一個聽話的小孩要他做甚麼就去做,我覺得這樣的系統不夠彈性。
如果照著我們原先的邏輯的話,流程應該是長這樣的:
我們應該要讓系統能夠有個閉環去自主的反思跟改進,才能讓我們的回答品質能夠持續被優化,這也就是為甚麼我們需要使用 Agent 的原因。
我們目標流程會長這樣:
要讓一個 AI Agent 真正動起來,我們可以依照以下五個步驟進行設計與實作:
步驟 | 說明 |
---|---|
1. 定義需求 | 要確定 AI Agent 要完成的任務與目標,例如自動回答問題、檢索文件、或執行特定動作,首先決定這個 Agent 會被用來做什麼。 |
2. 選擇模型 | 選擇合適的大語言模型(LLM)作為推理核心,讓 Agent 能具備 Reasoning(推理)與 Planning(規劃)能力,能根據問題內容主動決定下一步行動。 |
3. 開發工具 | Agent 之所以能「行動」,靠的就是工具(Tools)。這些工具可能是 API、資料庫、搜尋模組或分析腳本。 |
4. 編寫腳本 | 有了模型與工具後,接下來就是用框架(這裡是 AutoGen)撰寫 Agent 的執行邏輯,包含如何呼叫工具、如何整合結果、以及何時要進行反思(Reflection)。 |
5. 測試調試 | 實作完成後,要持續進行測試與微調,包括 Prompt 設計、工具使用條件、與回答品質評估。 |
有了概念後,我們就來實際規劃一下我自己的系統:
步驟 | 說明 |
---|---|
1. 定義需求 | 這邊實作是打算做一個能夠理解並回答《資通安全管理法》及相關法規問題的智慧助理,讓它不只是照抄條文,而能整合內容、分析與說明。 |
2. 選擇模型 | 目前想用 AutoGen + LLM(Ollama 搭配 Mistral) 的架構。 |
3. 開發工具 | 目前是連接 ChromaDB 法規資料庫進行向量檢索,之後可以考慮擴充其他工具(例如自訂 API) |
4. 編寫腳本 | 我們會整合推理模組與工具模組,形成完整的「問答流程」,這邊不多做說明。 |
5. 測試調試 | 我們會使用 RAGAS 進行自動化評分(例如 Faithfulness、Relevance),確保 Agent 的回答不只正確,也夠清晰、夠合理。 |
有了方向後明天就準備實作啦~