AI News HubLIVE
站內改寫1 分鐘閱讀

在Google Colab中構建奈米機器人風格的AI代理:工具呼叫、會話記憶、技能與MCP伺服器

本教程指導如何在Google Colab中構建一個輕量級的個人AI代理,靈感來源於奈米機器人的核心架構。從提供者抽象開始,逐步新增工具註冊、會話記憶、生命週期鉤子、技能以及MCP風格的伺服器。透過自己構建每個模組,深入理解訊息、工具、記憶和模型響應的協同工作方式。

來源MarkTechPost作者: Sana Hassan

本教程詳細介紹瞭如何在Google Colab中構建一個輕量級個人AI代理,其設計靈感來源於奈米機器人的核心架構。教程從提供者抽象開始,逐步新增工具註冊、會話記憶、生命週期鉤子、技能以及一個MCP風格的伺服器。最終得到一個不依賴特定提供者的代理迴圈,可擴充套件至真實LLM提供商和生產環境。

教程首先設定環境,包括安裝必要的依賴(如openai和nest_asyncio)和匯入所需模組。接著定義資料類ToolCall、Usage和LLMResponse,以及基類Provider。然後實現OpenAICompatibleProvider,它可與OpenAI及任何相容閘道器(如OpenRouter、DeepSeek、Together、vLLM、LM Studio等)配合使用。為了無需API金鑰即可執行,還建立了MockProvider,它基於規則模擬LLM行為,能夠根據使用者輸入觸發工具呼叫(如計算器、時間查詢、記住事實、執行Python程式碼等)。

接下來構建工具註冊系統。透過@tool裝飾器將普通函式轉換為Tool物件,自動從型別提示和文件字串中提取JSON模式。例如,calculator函式接受表示式字串並返回計算結果。工具註冊後,代理可在迴圈中呼叫它們。會話記憶透過session_memory裝飾器管理,可以記住使用者提供的事實(如名字、愛好),並在後續對話中回憶。生命週期鉤子(before_tool和after_tool)允許在工具執行前後插入自定義邏輯,例如記錄日誌或驗證引數。

然後實現MCP(Model Context Protocol)風格的伺服器。基於asyncio構建JSON-RPC介面,使工具可以透過網路遠端呼叫。伺服器支援註冊工具並處理請求,類似於nanobot的MCP服務。最後,將所有元件組裝成完整的代理迴圈:代理接收使用者訊息,透過提供者生成響應,可能觸發工具呼叫,處理工具結果,並持續對話直到結束。演示用例包括數學計算、時間查詢、Python程式碼執行和事實記憶。

整個教程強調無需外部框架,每個構建塊都從零建立,使讀者清晰理解訊息、工具、記憶和模型響應如何協同工作。程式碼可在Colab中完整執行,適合學習和實驗。透過替換MockProvider為真實提供者,可輕鬆將代理部署到生產環境。