Themis.Maf
1.0.0
See the version list below for details.
dotnet add package Themis.Maf --version 1.0.0
NuGet\Install-Package Themis.Maf -Version 1.0.0
<PackageReference Include="Themis.Maf" Version="1.0.0" />
<PackageVersion Include="Themis.Maf" Version="1.0.0" />
<PackageReference Include="Themis.Maf" />
paket add Themis.Maf --version 1.0.0
#r "nuget: Themis.Maf, 1.0.0"
#:package Themis.Maf@1.0.0
#addin nuget:?package=Themis.Maf&version=1.0.0
#tool nuget:?package=Themis.Maf&version=1.0.0
Themis.Maf
Use Themis.Maf when an application already uses Microsoft Agent Framework or
Microsoft.Extensions.AI and wants to connect that conversational flow to
Themis. The package adapts a registered IInferenceProvider into an
IChatClient and agent factory; it does not turn typed decision inference
into chat or provide a model by itself.
The package targets .NET 10. AddThemisMaf registers Themis services and the
adapter; provide a conversational inference provider and its model separately.
The separate Themis.Inference.Ollama package implements chat without its own
ONNX Runtime or tokenizer dependency. The legacy Themis.Maf registration still
depends on Themis to preserve existing AddThemisMaf behavior.
services.AddThemisMaf(
configure: maf =>
{
maf.Model = "chat-model";
maf.Temperature = 0.2;
maf.MaxOutputTokens = 512;
maf.TopP = 0.9;
maf.EnableToolCalls = true;
maf.EnableStructuredOutput = true;
maf.EnableStreaming = true;
},
configureServices: registrations =>
registrations.AddSingleton<IInferenceProvider, MyConversationalProvider>());
The package registers IChatClient, IThemisMafProvider, and
ThemisMafAgentFactory. The provider abstraction keeps the adapter independent
from a specific remote chat vendor; applications can replace
IThemisMafProvider or IChatClient through configureServices. The MAF
options supply default generation settings; per-request ChatOptions.ModelId,
temperature, maximum output tokens, top-p, stop sequences, and seed take
precedence. IInferenceProvider must be registered for conversational
inference, while Themis options and other service implementations can be
configured through the same registration call.
Tool calls, JSON response formats, and true provider streaming are disabled by
default. Enable them explicitly with the corresponding ThemisMafOptions
properties; the Ollama provider supports these capabilities. Unsupported
content or provider capabilities fail with an informative
NotSupportedException rather than being ignored. The adapter also forwards
frequency and presence penalties to providers that support them; Ollama reports
them as unsupported because its chat API does not provide equivalent controls.
Non-streaming token usage maps to ChatResponse.Usage; streamed usage is
available on the final update through the rldc.usage additional property.
This adapter targets conversational inference through IInferenceProvider;
typed decision inference is a separate IDecisionInferenceProvider contract
and is not automatically adapted into an MAF chat client.
Use the factory's callback to configure the chat-backed agent:
var agent = serviceProvider
.GetRequiredService<ThemisMafAgentFactory>()
.Create(static _ => { });
Typed application-input mapping is provided by the separate Themis.Engine
project; see the root README for its attributes, runtime criteria, and keyed
mapping examples.
License
Themis' adapter code is licensed under MIT, and the NuGet package includes the
Themis license text. Its Microsoft Agent Framework and Microsoft.Extensions.AI
dependencies retain their own terms; model assets and providers are also
separately licensed.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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. |
-
net10.0
- Microsoft.Agents.AI (>= 1.25.0)
- Microsoft.Extensions.AI.Abstractions (>= 10.11.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.13)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.13)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.13)
- Themis (>= 1.0.0)
- Themis.Common (>= 1.0.0)
- Themis.Core (>= 1.0.0)
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 | |
|---|---|---|---|
| 4.3.0 | 94 | 11/7/2026 | |
| 4.2.0 | 89 | 11/5/2026 | |
| 4.1.0 | 95 | 11/2/2026 | |
| 4.0.2 | 108 | 10/27/2026 | |
| 4.0.1 | 111 | 10/27/2026 | |
| 4.0.0 | 95 | 10/26/2026 | |
| 2.0.3 | 118 | 10/25/2026 | |
| 2.0.1 | 117 | 10/25/2026 | |
| 1.7.1 | 120 | 10/22/2026 | |
| 1.7.0 | 279 | 10/22/2026 | |
| 1.5.1 | 116 | 10/19/2026 | |
| 1.3.0 | 130 | 10/17/2026 | |
| 1.2.0 | 121 | 10/17/2026 | |
| 1.0.0 | 131 | 10/15/2026 |