Community.Extensions.AI.CompatibleAI
10.4.1
See the version list below for details.
dotnet add package Community.Extensions.AI.CompatibleAI --version 10.4.1
NuGet\Install-Package Community.Extensions.AI.CompatibleAI -Version 10.4.1
<PackageReference Include="Community.Extensions.AI.CompatibleAI" Version="10.4.1" />
<PackageVersion Include="Community.Extensions.AI.CompatibleAI" Version="10.4.1" />
<PackageReference Include="Community.Extensions.AI.CompatibleAI" />
paket add Community.Extensions.AI.CompatibleAI --version 10.4.1
#r "nuget: Community.Extensions.AI.CompatibleAI, 10.4.1"
#:package Community.Extensions.AI.CompatibleAI@10.4.1
#addin nuget:?package=Community.Extensions.AI.CompatibleAI&version=10.4.1
#tool nuget:?package=Community.Extensions.AI.CompatibleAI&version=10.4.1
Community.Extensions.AI.CompatibleAI
<div align="center"> <img src="https://github.com/View12138/Community.Extensions.AI.CompatibleAI/blob/main/eng/CompatibleAI-Logo.png?raw=true" height=256px/> </div>
Provides an implementation of IChatClient and IEmbeddingGenerator for Kimi/DeepSeek API and OpenAI-compatible endpoints, based on Microsoft.Extensions.AI.
Install the package
From the command-line:
dotnet add package Community.Extensions.AI.CompatibleAI
Usage Examples
Chat
using OpenAI;
using Microsoft.Extensions.AI;
IChatClient client = new OpenAIClient("kimi-k2.5", Environment.GetEnvironmentVariable("API_KEY"))
.AsIChatClient();
Console.WriteLine(await client.GetResponseAsync("What is AI?"));
Chat + Conversation History
using OpenAI;
using Microsoft.Extensions.AI;
IChatClient client = new OpenAIClient("kimi-k2.5", Environment.GetEnvironmentVariable("API_KEY"))
.AsIChatClient();
Console.WriteLine(await client.GetResponseAsync(
[
new ChatMessage(ChatRole.System, "You are a helpful AI assistant"),
new ChatMessage(ChatRole.User, "What is AI?")
]));
Chat Streaming
using OpenAI;
using Microsoft.Extensions.AI;
IChatClient client = new OpenAIClient("kimi-k2.5", Environment.GetEnvironmentVariable("API_KEY"))
.AsIChatClient();
await foreach (var update in client.GetStreamingResponseAsync("What is AI?"))
{
Console.Write(update);
}
Tool Calling
using OpenAI;
using System.ComponentModel;
using Microsoft.Extensions.AI;
IChatClient client = new OpenAIClient("deepseek-v4-flash", Environment.GetEnvironmentVariable("API_KEY"))
.AsIChatClient();
ChatOptions chatOptions = new()
{
Tools = [AIFunctionFactory.Create(GetWeather)]
};
await foreach (var message in client.GetStreamingResponseAsync("Do I need an umbrella?", chatOptions))
{
Console.Write(message);
}
[Description("Gets the weather")]
static string GetWeather() =>
Random.Shared.NextDouble() > 0.5 ? "It's sunny" : "It's raining";
Notes
- Compatible with Kimi/DeepSeek API
- Supports OpenAI-compatible endpoints
- Fully integrates with
Microsoft.Extensions.AI - Supports streaming, tool-calling, caching, telemetry, and DI
Environment Variables
API_KEY=your_api_key
Optional custom endpoint:
BASE_URL=https://api.moonshot.cn/v1
# BASE_URL=https://api.deepseek.com
Relationship to Microsoft.Extensions.AI.OpenAI
This package is adapted from Microsoft.Extensions.AI.OpenAI and modified to support Kimi/DeepSeek API while preserving the same programming model.
License
Same as upstream project.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 is compatible. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.6.2
- CompatibleAI (>= 2.9.1)
- Microsoft.Extensions.AI.Abstractions (>= 10.4.1)
- System.Text.Json (>= 10.0.4)
-
.NETStandard 2.0
- CompatibleAI (>= 2.9.1)
- Microsoft.Extensions.AI.Abstractions (>= 10.4.1)
- System.Text.Json (>= 10.0.4)
-
net10.0
- CompatibleAI (>= 2.9.1)
- Microsoft.Extensions.AI.Abstractions (>= 10.4.1)
-
net8.0
- CompatibleAI (>= 2.9.1)
- Microsoft.Extensions.AI.Abstractions (>= 10.4.1)
- System.Text.Json (>= 10.0.4)
-
net9.0
- CompatibleAI (>= 2.9.1)
- Microsoft.Extensions.AI.Abstractions (>= 10.4.1)
- System.Text.Json (>= 10.0.4)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 10.6.0 | 97 | 5/20/2026 |
| 10.6.0-beta1 | 88 | 5/20/2026 |
| 10.4.1 | 95 | 5/19/2026 |
| 10.4.1-beta2 | 93 | 5/19/2026 |
| 10.4.1-beta1 | 84 | 5/19/2026 |