go-kratos/blades
Blades is a Go-based multimodal AI Agent framework.
解決的問題
Blades 為 Go 開發者提供一個結構化的框架,用於建構多模態 AI 代理。它解決了在通常用於後端服務而非 AI 編排的程式語言中,整合多種大型語言模型(LLMs)、管理對話記憶,以及編排多步驟推理工作流程的複雜性。
工作原理
此框架採用基於統一介面的解耦、可插拔架構,協調多個核心元件:
- Agent:透過結合模型與工具來執行任務的主要單位。
- ModelProvider:適配層,讓開發者能在不同 LLM(如 OpenAI、DeepSeek 或 Gemini)之間切換,而無需變更核心邏輯。
- Tool:外部函式(API、資料庫等),代理可呼叫以與現實世界互動。
- Memory:用於儲存與檢索對話歷程的系統,以在多輪互動中維持上下文。
- Chain/Flow:將多個代理或步驟連結起來,以建立複雜的資料與控制流程的機制。
- Middleware:採用「洋蔥模型」鏈,用於處理日誌記錄、監控與防護等橫切關注點。
適用對象
希望使用符合 Go 語言習慣的程式碼庫,建構生產環境級 AI 代理、對話式應用或複雜 AI 工作流程的 Go 開發者。
主要特色
- Go 風格:注重簡潔性與可擴充性,設計上對 Go 開發者友善。
- 可插拔模型:透過
ModelProvider介面輕鬆切換 LLM 提供者。 - 多模態支援:專為多模態 AI 代理框架而設計。
- 技能注入:支援根據 Agent Skill 標準,從目錄或嵌入式檔案系統載入代理技能。
相關
- 專案
- 專案
- 專案
- 專案
- 專案