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 规范,从目录或嵌入式文件系统加载代理技能。
相关
- 项目
- 项目
- 项目
- 项目
- 项目