CereBro 是一个针对 .Net 的模型无关的人工智能代理包装器。现在通过 🔥 模型上下文协议 🔥,基于官方的 C# SDK,你可以编写可以在不同人工智能模型中使用的工具,而无需更改代码。
以下是 CereBro 支持和计划支持的模型列表。
已支持:
计划支持:
你可以使用以下命令从 NuGet 安装该包:
dotnet add package Rob1997.CereBro
dotnet add package Rob1997.CereBro.Open-AI
servers.json 文件此文件将包含你想要使用的 MCP 服务器的配置。下面是一个 servers.json 文件的例子。
[
{
"Id": "everything-server",
"Name": "Everything",
"TransportType": "stdio",
"TransportOptions": {
"command": "npx",
"arguments": "-y @modelcontextprotocol/server-everything"
}
}
]
你可以在这里查看更多的服务器 这里。
export OPEN_AI_API_KEY="your-api-key"
$env:OPEN_AI_API_KEY="your-api-key"
如果你想永久保存它,可以将其添加到你的 .bashrc 或 .bash_profile 文件中,或者在 Linux 中使用以下命令,在 PowerShell 中使用。
[Environment]::SetEnvironmentVariable("OPEN_AI_API_KEY", "your-api-key", "User")
Program.cs(入口点)中添加以下代码public static async Task Main(string[] args)
{
var builder = Host.CreateApplicationBuilder(args);
builder.Services.UseOpenAI(Environment.GetEnvironmentVariable("OPEN_AI_API_KEY"), "gpt-4o-mini");
IHost cereBro = builder.BuildCereBro(new CereBroConfig{ ServersFilePath = "./servers.json" });
await cereBro.RunAsync();
}
CereBro 使用控制台作为聊天分发器。你可以通过实现接口 IChatDispatcher 来创建自己的分发器,并使用 builder.BuildCereBro<IChatDispatcher>(config) 构建 CereBro 的主机。
dotnet run
目前,CereBro 只支持 OpenAI 的模型。要添加新模型,你需要实现 Microsoft.Extensions.AI.IChatClient,除非它已经存在,微软已经为一些模型实现了这个接口,比如 OpenAI 和 Ollama。
一旦你完成了这些步骤,你可以创建一个实现 Microsoft.Extensions.AI.FunctionInvokingChatClient 的占位符类型,类似于 这个。
最后,你可以使用扩展方法 UseChatClient<T>(this IServiceCollection services, IChatClient chatClient) where T : FunctionInvokingChatClient 将你的模型添加到服务集合中。
⚠️ 注意 ⚠️
目前 CereBro 不支持同时使用多个模型,因此如果你想使用其他模型,需要从 Program.cs 文件中移除 UseOpenAI 方法。
CereBro.Unity 是一个 Unity 包,允许你在 Unity 中使用 CereBro。README。
如果你希望为该项目做出贡献,可以 fork 仓库并创建一个拉取请求。如果你发现任何错误或有功能需求,也可以创建一个 issue。