BotSharp .NET 智能体框架
面向企业系统的 .NET 多智能体、RAG 与模型集成框架。
这个 Agent 能做什么,适合哪些场景?
BotSharp 是一个用 C# 和 .NET Core 构建的开源 AI Bot 应用框架,定位为将大语言模型接入既有业务应用。它以插件和管线流执行设计解耦组件,核心模块包括 Agent Profile、Conversation & State、Routing & Planning、LLM Provider、缓存、文件仓库和 Rich Content。框架可通过内置插件接入 OpenAI、Anthropic、Google、DeepSeek、Meta、HuggingFace 等模型平台,并提供知识库、Qdrant、消息渠道和处理器扩展。它支持多智能体协作、会话状态管理、RESTful Open API 与 WebSocket 实时通信;管理 UI 由独立的 BotSharp-UI SvelteKit 项目提供。适合希望在 .NET 业务系统中自行部署并组合模型、工具和消息通道的团队。
应用启动时可执行 dotnet run --project ./src/WebStarter/WebStarter.csproj -p SolutionName=BotSharp 运行后端服务。框架通过 Plugin Loader 和 Hooking 加载外部组件,并使用 Agent Profile、Conversation & State 以及 Routing & Planning 组织智能体职责、会话状态和协作路由。BotSharp.Plugin.OpenAI、BotSharp.Plugin.AnthropicAI、BotSharp.Plugin.GoogleAI 等插件向模型平台发起调用;BotSharp.Plugin.KnowledgeBase 和 BotSharp.Plugin.Qdrant 提供 RAG 相关接口与向量检索。它还能经 BotSharp.OpenAPI 和 WebSocket 对外提供通信能力,并可借助 ChatHub、TelegramBots、WeChat、Twilio 等插件连接消息渠道。MCP 集成支持对 MCP 进行可视化管理,让模型调用外部能力。
- 使用 C# 维护企业信息系统的团队,需要把多个职责不同的智能体接入现有业务流程时。
- 需要在 .NET 服务中保存会话状态,并用 Routing & Planning 协调多智能体完成较复杂任务的应用团队。
- 希望将 OpenAI、Anthropic、Gemini、DeepSeek 或 HuggingFace 等不同模型平台按插件方式接入同一应用的开发者。
- 需要用知识库和 Qdrant 向量检索构建 RAG 流程的企业内部问答或助手项目。
- 要通过 RESTful Open API、WebSocket,或 Telegram、WeChat、Twilio 等消息渠道交付聊天能力的团队。
这个 Agent 有哪些优点和局限?
- 以 C#/.NET Core 为基础,并采用插件与管线流执行设计,适合将 AI 功能嵌入既有 .NET 业务逻辑。
- 内置 Agent Profile、会话状态、路由和规划组件,覆盖多智能体协作的核心编排环节。
- 提供多个模型平台插件,以及知识库、Qdrant、消息渠道、RESTful Open API 和 WebSocket 扩展点。
- 已提供 MCP 集成和可视化管理能力,可将模型调用接入外部能力。
- 运行环境要求 .NET 6+;使用模型提供商时还需要在 `appsettings.json` 中维护相应 API 密钥。
- 管理 UI 不在主仓库内,需单独获取 BotSharp-UI 并运行 npm 安装与开发命令。
- 提供的生产部署说明仅提到反向代理、Nginx/IIS 和独立 UI 部署,未给出具体配置样例。
- README 列出的路线图中 A2A、Computer Use 和 Browser Use 仍未完成。
如何安装或部署这个 Agent?
前提是安装 .NET 6+ SDK。克隆仓库后进入项目目录,并运行:dotnet run --project ./src/WebStarter/WebStarter.csproj -p SolutionName=BotSharp
Windows 可使用:dotnet run --project .\src\WebStarter\WebStarter.csproj -p SolutionName=BotSharp
如需管理 UI,需另外克隆 https://github.com/SciSharp/BotSharp-UI,进入该目录后执行 npm install 和 npm run dev。使用模型插件前,在 appsettings.json 中配置所选提供商的 API 密钥;启动异常时,先执行 dotnet restore。
如何使用这个 Agent?
启动后端后访问 http://localhost:5015/。为智能体定义 Agent Profile 及其职责,并按需要启用对应插件:例如用 BotSharp.Plugin.OpenAI 或 BotSharp.Plugin.AnthropicAI 接入模型,用 BotSharp.Plugin.KnowledgeBase 或 BotSharp.Plugin.Qdrant 构建检索流程。通过框架的 RESTful Open API 或 WebSocket 接入自有前端,也可选用 ChatHub、MetaMessenger、TelegramBots、Twilio 或 WeChat 等渠道插件。若使用独立管理 UI,在 BotSharp-UI 项目执行 npm run dev。