EasyAppDev.Blazor.AutoComplete.AI.CosmosDb 1.0.7

dotnet add package EasyAppDev.Blazor.AutoComplete.AI.CosmosDb --version 1.0.7
                    
NuGet\Install-Package EasyAppDev.Blazor.AutoComplete.AI.CosmosDb -Version 1.0.7
                    
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="EasyAppDev.Blazor.AutoComplete.AI.CosmosDb" Version="1.0.7" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="EasyAppDev.Blazor.AutoComplete.AI.CosmosDb" Version="1.0.7" />
                    
Directory.Packages.props
<PackageReference Include="EasyAppDev.Blazor.AutoComplete.AI.CosmosDb" />
                    
Project file
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 EasyAppDev.Blazor.AutoComplete.AI.CosmosDb --version 1.0.7
                    
#r "nuget: EasyAppDev.Blazor.AutoComplete.AI.CosmosDb, 1.0.7"
                    
#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 EasyAppDev.Blazor.AutoComplete.AI.CosmosDb@1.0.7
                    
#: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=EasyAppDev.Blazor.AutoComplete.AI.CosmosDb&version=1.0.7
                    
Install as a Cake Addin
#tool nuget:?package=EasyAppDev.Blazor.AutoComplete.AI.CosmosDb&version=1.0.7
                    
Install as a Cake Tool

EasyAppDev.Blazor.AutoComplete.AI.CosmosDb

Azure Cosmos DB integration for semantic search with the Blazor AutoComplete component.

NuGet License: MIT

Features

  • Multi-Model Database: NoSQL + vector search
  • Global Distribution: Low latency worldwide
  • Integrated NoSQL: Store documents with embeddings
  • Enterprise SLA: 99.999% availability

Installation

dotnet add package EasyAppDev.Blazor.AutoComplete.AI.CosmosDb

Quick Start

1. Configure Services

// Program.cs
builder.Services.AddAutoCompleteCosmosDb<Product>(
    endpoint: "https://myaccount.documents.azure.com:443/",
    key: "your-cosmos-key",
    databaseName: "myapp",
    containerName: "products",
    options => {
        options.VectorIndexType = VectorIndexType.DiskANN;
        options.Dimensions = 1536;
    },
    textSelector: p => $"{p.Name} {p.Description}",
    idSelector: p => p.Id.ToString());

// Register embedding generator
builder.Services.AddAutoCompleteVectorSearch<Product>(
    openAiApiKey: "sk-...");

2. Use the Component

@using EasyAppDev.Blazor.AutoComplete.AI

<VectorAutoComplete TItem="Product"
                    TextField="@(p => p.Name)"
                    @bind-Value="@selectedProduct"
                    Placeholder="Semantic search..." />

Configuration Options

Option Description Default
Endpoint Cosmos DB endpoint Required
Key Primary key Required
DatabaseName Database name Required
ContainerName Container name Required
VectorIndexType Index type DiskANN
Dimensions Vector dimensions 1536
PartitionKeyPath Partition key /id

Vector Index Types

Type Description
Flat Exact search, smaller datasets
QuantizedFlat Compressed, balanced
DiskANN Large scale, best performance

Container Setup

Enable vector search on container:

var containerProperties = new ContainerProperties("products", "/id")
{
    VectorEmbeddingPolicy = new VectorEmbeddingPolicy(
        new Collection<Embedding> {
            new Embedding {
                Path = "/embedding",
                DataType = VectorDataType.Float32,
                Dimensions = 1536,
                DistanceFunction = DistanceFunction.Cosine
            }
        })
};

Integrated Document Storage

Store full documents with embeddings:

public class ProductDocument
{
    public string Id { get; set; }
    public string Name { get; set; }
    public string Description { get; set; }
    public float[] Embedding { get; set; }  // Auto-populated
}

License

MIT

Product Compatible and additional computed target framework versions.
.NET 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 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.

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
1.0.7 82 12/21/2025
1.0.6 112 12/20/2025

Version 1.0.7 - Added AOT-compatible JSON serialization overloads for all vector database providers. Fixed exception handling in GetItem to return default on deserialization failure. Added cancellation token propagation in Azure Search hybrid search. Improved robustness and trimming compatibility.