EasyAppDev.Blazor.AutoComplete.AI
1.0.6
See the version list below for details.
dotnet add package EasyAppDev.Blazor.AutoComplete.AI --version 1.0.6
NuGet\Install-Package EasyAppDev.Blazor.AutoComplete.AI -Version 1.0.6
<PackageReference Include="EasyAppDev.Blazor.AutoComplete.AI" Version="1.0.6" />
<PackageVersion Include="EasyAppDev.Blazor.AutoComplete.AI" Version="1.0.6" />
<PackageReference Include="EasyAppDev.Blazor.AutoComplete.AI" />
paket add EasyAppDev.Blazor.AutoComplete.AI --version 1.0.6
#r "nuget: EasyAppDev.Blazor.AutoComplete.AI, 1.0.6"
#:package EasyAppDev.Blazor.AutoComplete.AI@1.0.6
#addin nuget:?package=EasyAppDev.Blazor.AutoComplete.AI&version=1.0.6
#tool nuget:?package=EasyAppDev.Blazor.AutoComplete.AI&version=1.0.6
EasyAppDev.Blazor.AutoComplete.AI
AI-powered semantic search for the Blazor AutoComplete component. Search by meaning, not just keywords.
Features
- Semantic Search: Understands meaning, synonyms, and concepts
- SIMD Acceleration: 3-5x faster similarity calculations
- Dual Caching: Separate item/query caches with LRU eviction
- Multiple Providers: OpenAI, Azure OpenAI, Ollama, or custom
- Hybrid Search: Falls back to text matching for short queries
Installation
dotnet add package EasyAppDev.Blazor.AutoComplete.AI
Note: This package includes the core AutoComplete component as a dependency.
Quick Start
1. Configure OpenAI
Option A: appsettings.json (Recommended)
{
"OpenAI": {
"ApiKey": "sk-proj-...",
"Model": "text-embedding-3-small"
}
}
// Program.cs
builder.Services.AddAutoCompleteSemanticSearch(builder.Configuration);
Option B: Direct API Key
builder.Services.AddAutoCompleteSemanticSearch(
apiKey: "sk-proj-...",
model: "text-embedding-3-small");
2. Use the Component
@using EasyAppDev.Blazor.AutoComplete.AI
<SemanticAutoComplete TItem="Document"
Items="@docs"
SearchFields="@(d => new[] { d.Title, d.Description })"
TextField="@(d => d.Title)"
SimilarityThreshold="0.15"
@bind-Value="@selectedDoc"
Placeholder="Search by meaning..." />
Supported Providers
| Provider | Setup Method | Cost | Privacy |
|---|---|---|---|
| OpenAI | AddAutoCompleteSemanticSearch() |
$ | Cloud |
| Azure OpenAI | AddAutoCompleteSemanticSearchWithAzure() |
$ | Azure |
| Ollama | Custom IEmbeddingGenerator |
Free | Local |
Azure OpenAI
builder.Services.AddAutoCompleteSemanticSearchWithAzure(
endpoint: "https://my-resource.openai.azure.com/",
apiKey: "your-azure-api-key",
deploymentName: "text-embedding-ada-002");
Ollama (Local)
using OllamaSharp;
var ollamaClient = new OllamaApiClient("http://localhost:11434");
builder.Services.AddSingleton<IEmbeddingGenerator<string, Embedding<float>>>(
ollamaClient.AsEmbeddingGenerator("nomic-embed-text"));
Advanced Configuration
<SemanticAutoComplete TItem="Product"
Items="@products"
SearchFields="@(p => new[] { p.Name, p.Description })"
@* Cache Configuration *@
ItemCacheDuration="TimeSpan.FromHours(2)"
QueryCacheDuration="TimeSpan.FromMinutes(30)"
MaxItemCacheSize="20000"
@* Pre-warming *@
PreWarmCache="true"
ShowCacheStatus="true"
@* Search Tuning *@
SimilarityThreshold="0.15"
MinSearchLength="3"
DebounceMs="500"
@bind-Value="@selectedProduct" />
Vector Database Providers
For production-grade semantic search with persistent storage, use vector database providers:
| Package | Provider |
|---|---|
EasyAppDev.Blazor.AutoComplete.AI.PostgreSql |
PostgreSQL/pgvector |
EasyAppDev.Blazor.AutoComplete.AI.AzureSearch |
Azure AI Search |
EasyAppDev.Blazor.AutoComplete.AI.Pinecone |
Pinecone |
EasyAppDev.Blazor.AutoComplete.AI.Qdrant |
Qdrant |
EasyAppDev.Blazor.AutoComplete.AI.CosmosDb |
Azure CosmosDB |
Performance
- SIMD Acceleration: 3-5x faster cosine similarity
- Cache Hit Rate: 80%+ after warm-up
- API Cost Reduction: 80%+ due to caching
License
MIT
| Product | Versions 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. |
-
net8.0
- EasyAppDev.Blazor.AutoComplete (>= 1.0.6)
- Microsoft.Extensions.AI.Abstractions (>= 10.1.1)
- Microsoft.Extensions.Configuration.Abstractions (>= 9.0.0)
- Microsoft.SemanticKernel (>= 1.68.0)
- Microsoft.SemanticKernel.Connectors.OpenAI (>= 1.68.0)
- System.Numerics.Tensors (>= 10.0.0)
-
net9.0
- EasyAppDev.Blazor.AutoComplete (>= 1.0.6)
- Microsoft.Extensions.AI.Abstractions (>= 10.1.1)
- Microsoft.Extensions.Configuration.Abstractions (>= 9.0.0)
- Microsoft.SemanticKernel (>= 1.68.0)
- Microsoft.SemanticKernel.Connectors.OpenAI (>= 1.68.0)
- System.Numerics.Tensors (>= 10.0.0)
NuGet packages (5)
Showing the top 5 NuGet packages that depend on EasyAppDev.Blazor.AutoComplete.AI:
| Package | Downloads |
|---|---|
|
EasyAppDev.Blazor.AutoComplete.AI.CosmosDb
Azure CosmosDB provider for EasyAppDev.Blazor.AutoComplete.AI semantic search. Provides multi-model database with DiskANN vector search for production-scale autocomplete scenarios with global distribution. |
|
|
EasyAppDev.Blazor.AutoComplete.AI.Pinecone
Pinecone provider for EasyAppDev.Blazor.AutoComplete.AI semantic search. Provides serverless vector storage with high-performance similarity search for production-scale autocomplete scenarios. |
|
|
EasyAppDev.Blazor.AutoComplete.AI.Qdrant
Qdrant provider for EasyAppDev.Blazor.AutoComplete.AI semantic search. Provides open-source vector storage with HNSW indexing for production-scale autocomplete scenarios. Supports self-hosted and cloud deployments. |
|
|
EasyAppDev.Blazor.AutoComplete.AI.AzureSearch
Azure AI Search provider for EasyAppDev.Blazor.AutoComplete.AI semantic search. Provides cloud-native vector search with hybrid (vector + keyword) search and semantic ranking support. |
|
|
EasyAppDev.Blazor.AutoComplete.AI.PostgreSql
PostgreSQL/pgvector provider for EasyAppDev.Blazor.AutoComplete.AI semantic search. Provides persistent vector storage with HNSW indexing for production-scale autocomplete scenarios. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version 1.0.6 - Updated all package READMEs with focused documentation for each package. Added READMEs for vector database providers (PostgreSQL, Azure AI Search, Pinecone, Qdrant, CosmosDB).