Tessera.KernelMemory
0.3.0
dotnet add package Tessera.KernelMemory --version 0.3.0
NuGet\Install-Package Tessera.KernelMemory -Version 0.3.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Tessera.KernelMemory" Version="0.3.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Tessera.KernelMemory" Version="0.3.0" />
<PackageReference Include="Tessera.KernelMemory" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Tessera.KernelMemory --version 0.3.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Tessera.KernelMemory, 0.3.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Tessera.KernelMemory@0.3.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Tessera.KernelMemory&version=0.3.0
#tool nuget:?package=Tessera.KernelMemory&version=0.3.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Tessera.KernelMemory
Kernel Memory connector for Tessera vector database - enables RAG and semantic memory with Tessera backend.
Features
- Full
IMemoryDbimplementation for Microsoft Kernel Memory - Semantic search with text embedding
- Tag-based filtering
- Payload storage and retrieval
- Multi-tenant support via index mapping
Installation
dotnet add package Tessera.KernelMemory
Quick Start
using Microsoft.KernelMemory;
using Tessera.Client;
using Tessera.KernelMemory;
// Create Tessera client
var tesseraOptions = new TesseraClientOptions
{
Endpoint = "https://your-tessera-instance:50051"
};
var tesseraClient = new TesseraClient(tesseraOptions);
// Create config
var config = new TesseraMemoryDbConfig();
// Create embedding generator (use your preferred provider)
ITextEmbeddingGenerator embeddingGenerator = /* your embedding generator */;
// Create memory database
var memoryDb = new TesseraMemoryDb(tesseraClient, config, embeddingGenerator);
// Create an index
await memoryDb.CreateIndexAsync("my-documents", vectorSize: 384);
// Upsert a memory record
var record = new MemoryRecord
{
Id = "doc-1",
Vector = embedding,
Tags = new TagCollection { { "type", "document" } },
Payload = new Dictionary<string, object> { { "title", "My Document" } }
};
var id = await memoryDb.UpsertAsync("my-documents", record);
// Search for similar content
await foreach (var (result, relevance) in memoryDb.GetSimilarListAsync(
"my-documents",
"search query text",
limit: 10,
minRelevance: 0.7))
{
Console.WriteLine($"Found: {result.Id} (relevance: {relevance:P})");
}
Supported Operations
| Method | Status |
|---|---|
CreateIndexAsync |
Supported |
GetIndexesAsync |
Supported |
DeleteIndexAsync |
Not supported (Tessera limitation) |
UpsertAsync |
Supported |
GetSimilarListAsync |
Supported |
GetListAsync |
Supported (workaround) |
DeleteAsync |
Supported |
Known Limitations
DeleteIndexAsyncthrowsNotSupportedException- Tessera backend doesn't support tenant deletionGetListAsyncuses a dummy vector search as workaround (Tessera lacks "list all" RPC)- Only single metadata filter supported per search (Tessera proto limitation)
Requirements
- .NET 9.0 or later
- Tessera vector database instance
- Microsoft.KernelMemory.Core 0.98+
License
MIT License - see LICENSE file for details.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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 was computed. 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. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net9.0
- Google.Protobuf (>= 3.27.1)
- Grpc.Net.Client (>= 2.59.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 9.0.10)
- Microsoft.Extensions.Diagnostics.HealthChecks (>= 9.0.10)
- Microsoft.Extensions.Http (>= 9.0.10)
- Microsoft.Extensions.Http.Resilience (>= 9.10.0)
- Microsoft.Extensions.Logging (>= 9.0.10)
- Microsoft.Extensions.Logging.Abstractions (>= 9.0.10)
- Microsoft.Extensions.Logging.Console (>= 9.0.10)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 9.0.10)
- Microsoft.Extensions.Resilience (>= 9.10.0)
- Microsoft.Extensions.VectorData.Abstractions (>= 9.7.0)
- Microsoft.KernelMemory.Core (>= 0.98.250508.3)
- System.Diagnostics.DiagnosticSource (>= 9.0.10)
- Tessera.Client (>= 0.3.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.