Darkspyre.Inference.Common
11.19.3-rc.2
Prefix Reserved
See the version list below for details.
dotnet add package Darkspyre.Inference.Common --version 11.19.3-rc.2
NuGet\Install-Package Darkspyre.Inference.Common -Version 11.19.3-rc.2
<PackageReference Include="Darkspyre.Inference.Common" Version="11.19.3-rc.2" />
<PackageVersion Include="Darkspyre.Inference.Common" Version="11.19.3-rc.2" />
<PackageReference Include="Darkspyre.Inference.Common" />
paket add Darkspyre.Inference.Common --version 11.19.3-rc.2
#r "nuget: Darkspyre.Inference.Common, 11.19.3-rc.2"
#:package Darkspyre.Inference.Common@11.19.3-rc.2
#addin nuget:?package=Darkspyre.Inference.Common&version=11.19.3-rc.2&prerelease
#tool nuget:?package=Darkspyre.Inference.Common&version=11.19.3-rc.2&prerelease
Darkspyre.Inference.Common
The typed contracts every Darkspyre.Inference package shares: requests, results, streaming events, capabilities, failures and provenance for text, image, decision, embedding and speech inference, plus the provider setup model the setup editors render. A Connect provider and a Tensor engine implement the same contracts, so application code that calls a contract does not depend on where the model runs.
Install
dotnet add package Darkspyre.Inference.Common
Register
The package needs no registration. It holds contracts and data only: it selects no implementation and never falls back from one implementation to another. The application references the Connect or Tensor package that implements a contract and calls it through the contract.
Example
ILlmInference inference = implementation;
LlmInferenceResult result = await inference.CompleteAsync(new LlmInferenceRequest
{
ModelId = modelId,
Messages = [new LlmMessage("user", prompt)]
}, cancellationToken);
IImageInference, IDecisionInference and IEmbeddingInference follow the same pattern for images, typed decisions
and embeddings.
Settings
Darkspyre.Inference.Common.Setup holds the UI-neutral setup model. A provider manager's OpenAsync returns an
InferenceSettings object with typed fields, steps and actions. IInferenceSettingsManager runs an action against the
current values (RunAsync), lists a choice field's choices (QueryChoicesAsync) and saves through the host's typed
commit target (SaveAsync). A field edit changes only the settings object. CanSave is true when every visible
required field has a value and any required sign-in has succeeded.
Limits
- Capability support is
InferenceSupport:Unknown,SupportedorUnsupported.Unknownis the default and does not mean the feature is missing; an explicit request proceeds unless the feature isUnsupported. InferenceJsonsupplies source-generated JSON metadata for the data contracts. It installs no reflection resolver, and types the caller defines need the caller's own metadata. Live services, such as resource access and provider authorization, refuse serialization.ProviderAuthorizationHeaderredacts its scheme and value in its diagnostic text. Header values are never log or persistent data.
The Darkspyre.Inference packages
This package is one library of the Darkspyre.Inference family. The family runs AI inference from .NET applications through typed, provider-neutral contracts.
Darkspyre.Inference.Commonholds the contracts every other package shares: requests, results, capabilities, failures and the provider setup model.Darkspyre.Inference.Connect.Commonholds the conversation and embedding services. Each Connect provider package adds one provider, andAddLlmConnect()discovers every provider package the application references.- The Tensor packages load and run models inside the application's own process.
- The UI.Settings packages provide the setup editors a host places in its own window or page.
Every package of the family carries the same version. Reference all of them at the same version: each package depends on the exact version of the family packages it uses.
The packages are licensed under the MIT license. LICENSE.md in each package holds the license text.
| Package | Holds |
|---|---|
| Darkspyre.Inference.Common | Shared contracts for Connect and Tensor |
| Darkspyre.Inference.Connect | Image, speech and audio connectors |
| Darkspyre.Inference.Connect.Common | Conversation and embedding services and provider discovery |
| Darkspyre.Inference.Connect.Codex | Conversations on a ChatGPT subscription |
| Darkspyre.Inference.Connect.Claude | Conversations on a Claude subscription through the Claude CLI |
| Darkspyre.Inference.Connect.HostTools | The host-tools local service and its client |
| Darkspyre.Inference.Connect.Antigravity | Conversations on a Google subscription through the Antigravity CLI |
| Darkspyre.Inference.Connect.Grok | Conversations on a Grok subscription |
| Darkspyre.Inference.Connect.OpenAiApi | Conversations and embeddings through the OpenAI API |
| Darkspyre.Inference.Connect.SelfHost | Conversations and embeddings on engines the application runs |
| Darkspyre.Inference.Tensor.Common | Model packs, the model lifecycle and the Tensor capability interfaces |
| Darkspyre.Inference.Tensor.Decision.Laya | Laya typed decisions through ONNX Runtime |
| Darkspyre.Inference.Tensor.Embedding | Text embeddings from GGUF sentence encoders |
| Darkspyre.Inference.Tensor.Embedding.Gemma | EmbeddingGemma text and image embeddings |
| Darkspyre.Inference.Tensor.Ggml | The process's GGML and MLX native runtime |
| Darkspyre.Inference.Tensor.Image.Supra | Supra2-IMG image generation |
| Darkspyre.Inference.Tensor.LLM.Qwen | Qwen GGUF text generation |
| Darkspyre.Inference.Tensor.Registry | Registration and discovery of the Tensor engines |
| Darkspyre.Inference.Tensor.STT.Whisper | Whisper speech transcription |
| Darkspyre.Inference.UI.Settings.Core | Editor state and host contracts both setup editors share |
| Darkspyre.Inference.UI.Settings.Avalonia | The Avalonia setup editor |
| Darkspyre.Inference.UI.Settings.Blazor | The Blazor setup editor |
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net11.0 is compatible. |
-
net11.0
- No dependencies.
NuGet packages (7)
Showing the top 5 NuGet packages that depend on Darkspyre.Inference.Common:
| Package | Downloads |
|---|---|
|
Darkspyre.Inference.Tensor.Common
Shared model-pack, persistence, backend, and execution infrastructure for Darkspyre Tensor inference. |
|
|
Darkspyre.Inference.Connect.Common
Universal conversation and embedding contracts, shared provider infrastructure and automatic Connect discovery. |
|
|
Darkspyre.Inference.UI.Settings.Core
UI-neutral editor state and host contracts shared by the Darkspyre inference setup editors. |
|
|
Darkspyre.Inference.Tensor.Embedding
In-process text embeddings through TensorSharp GGUF sentence encoders. |
|
|
Darkspyre.Inference.Connect
Image, speech and audio inference connectors for Darkspyre applications. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 11.19.4-rc.3 | 168 | 11/6/2026 |
| 11.19.3-rc.3 | 161 | 11/5/2026 |
| 11.19.3-rc.2 | 182 | 10/31/2026 |
| 11.17.3-rc.2 | 172 | 10/26/2026 |