Sylin.Koan.Data.Vector
0.21.0
dotnet add package Sylin.Koan.Data.Vector --version 0.21.0
NuGet\Install-Package Sylin.Koan.Data.Vector -Version 0.21.0
<PackageReference Include="Sylin.Koan.Data.Vector" Version="0.21.0" />
<PackageVersion Include="Sylin.Koan.Data.Vector" Version="0.21.0" />
<PackageReference Include="Sylin.Koan.Data.Vector" />
paket add Sylin.Koan.Data.Vector --version 0.21.0
#r "nuget: Sylin.Koan.Data.Vector, 0.21.0"
#:package Sylin.Koan.Data.Vector@0.21.0
#addin nuget:?package=Sylin.Koan.Data.Vector&version=0.21.0
#tool nuget:?package=Sylin.Koan.Data.Vector&version=0.21.0
Sylin.Koan.Data.Vector
Supported Entity-first vector persistence and search for Koan. The runtime elects one referenced provider per entity, memoizes repository resolution, applies Koan data isolation to vector operations and physical names, and reports which providers actually became runtime dependencies.
Install
dotnet add package Sylin.Koan.Data.Vector.Connector.InMemory
Provider packages bring this runtime. The in-memory provider is the zero-infrastructure development floor; replace or
complement it with a durable provider package when guarantees grow. AddKoan() discovers the runtime and referenced
providers; no vector-specific startup code is required. Reference this runtime directly only when authoring a provider
or intentionally composing Vector without a provider.
Smallest meaningful use
using Koan.Data.Core.Model;
using Koan.Data.Vector;
public sealed class Article : Entity<Article>
{
public string Title { get; set; } = "";
}
var article = new Article { Title = "Koan package quality" };
float[] embedding = [0.12f, 0.42f, 0.88f];
await Vector<Article>.SaveWithVector(article, embedding);
var nearest = await Vector<Article>.Search(embedding, topK: 5);
Omitting topK requests 10 matches. Any explicit positive value is preserved through the runtime; adapters do not
cap or replace it. Non-positive values fail at VectorQueryOptions construction, before provider I/O.
SaveWithVector persists the entity through the active data provider and its vector through the elected vector
provider. Use Vector<Article>.Save(...) when only the vector representation should change.
Decorate an entity only when automatic provider election is not the intended policy:
using Koan.Data.Vector.Abstractions;
[VectorAdapter("qdrant")]
public sealed class Article : Entity<Article> { }
The exact provider must be referenced and available; Koan does not silently fall back from an explicit request.
Guarantees and boundaries
- Referencing the runtime without any vector provider leaves
Vector<TEntity>.IsAvailablefalse; operations fail correctively instead of inventing storage. - A directly referenced provider wins automatic election over the low-priority in-memory floor. Multiple candidates
use the shared provider-priority policy; an explicit
VectorAdapterrequest is exact. Savewrites only the vector store.SaveWithVectorcoordinates entity and vector persistence; outside a Koan data transaction, an entity success followed by vector failure raisesVectorCoordinationExceptionand requires re-embedding/reconciliation.- Filter, hybrid search, continuation, export, flush, and embedding retrieval depend on selected-provider capability.
- The in-memory provider is process-local and ephemeral. It is not a durability, distribution, or production-scale similarity guarantee.
- Vector dimension, distance metric, score interpretation, consistency, and indexing latency remain provider/model responsibilities.
See TECHNICAL.md for election, caching, naming, isolation, and health behavior.
| 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
- Sylin.Koan.Data.Core (>= 0.21.0 && < 0.22.0)
- Sylin.Koan.Data.Vector.Abstractions (>= 0.21.0 && < 0.22.0)
NuGet packages (12)
Showing the top 5 NuGet packages that depend on Sylin.Koan.Data.Vector:
| Package | Downloads |
|---|---|
|
Sylin.Koan.Data.Vector.Connector.Milvus
Milvus vector adapter for Koan: plan-owned spaces, complete points, native filters, and truthful similarity over REST v2. |
|
|
Sylin.Koan.Data.Vector.Connector.Weaviate
Weaviate vector provider for Koan: plan-bound entity vectors, native filtering, complete points, and awaited Session visibility. |
|
|
Sylin.Koan.Data.Connector.ElasticSearch
Elasticsearch vector provider for Koan: plan-bound complete points, native filtered kNN search, normalized similarity, and session-visible mutations. |
|
|
Sylin.Koan.Data.Connector.OpenSearch
OpenSearch vector provider for Koan: plan-bound complete points, native filtered k-NN search, normalized similarity, and session-visible mutations. |
|
|
Sylin.Koan.Data.Vector.Connector.Qdrant
Qdrant vector provider for Koan: plan-bound Entity vector search, native payload filtering, and session-visible mutations over REST. |
GitHub repositories
This package is not used by any popular GitHub repositories.