EasyAppDev.Blazor.AutoComplete.AI.AzureSearch
1.0.7
dotnet add package EasyAppDev.Blazor.AutoComplete.AI.AzureSearch --version 1.0.7
NuGet\Install-Package EasyAppDev.Blazor.AutoComplete.AI.AzureSearch -Version 1.0.7
<PackageReference Include="EasyAppDev.Blazor.AutoComplete.AI.AzureSearch" Version="1.0.7" />
<PackageVersion Include="EasyAppDev.Blazor.AutoComplete.AI.AzureSearch" Version="1.0.7" />
<PackageReference Include="EasyAppDev.Blazor.AutoComplete.AI.AzureSearch" />
paket add EasyAppDev.Blazor.AutoComplete.AI.AzureSearch --version 1.0.7
#r "nuget: EasyAppDev.Blazor.AutoComplete.AI.AzureSearch, 1.0.7"
#:package EasyAppDev.Blazor.AutoComplete.AI.AzureSearch@1.0.7
#addin nuget:?package=EasyAppDev.Blazor.AutoComplete.AI.AzureSearch&version=1.0.7
#tool nuget:?package=EasyAppDev.Blazor.AutoComplete.AI.AzureSearch&version=1.0.7
EasyAppDev.Blazor.AutoComplete.AI.AzureSearch
Azure AI Search integration for semantic search with the Blazor AutoComplete component.
Features
- Hybrid Search: Combines vector + keyword search
- Semantic Ranking: AI-powered result re-ranking
- Managed Service: No infrastructure to maintain
- Enterprise Ready: Built-in security, scaling, and SLA
Installation
dotnet add package EasyAppDev.Blazor.AutoComplete.AI.AzureSearch
Quick Start
1. Configure Services
// Program.cs
builder.Services.AddAutoCompleteAzureSearch<Product>(
endpoint: "https://mysearch.search.windows.net",
apiKey: "your-admin-key",
indexName: "products",
options => {
options.EnableSemanticRanking = true;
options.SemanticConfigurationName = "my-semantic-config";
},
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 |
Azure Search endpoint | Required |
ApiKey |
Admin API key | Required |
IndexName |
Search index name | Required |
EnableSemanticRanking |
Use semantic ranker | false |
VectorFieldName |
Vector field in index | embedding |
TopK |
Max results to return | 10 |
Hybrid Search
Azure AI Search combines vector similarity with traditional keyword matching:
options.EnableHybridSearch = true;
options.HybridSearchWeight = 0.5f; // 50% vector, 50% keyword
Creating an Index
Use Azure Portal or SDK to create an index with a vector field:
{
"name": "products",
"fields": [
{ "name": "id", "type": "Edm.String", "key": true },
{ "name": "name", "type": "Edm.String", "searchable": true },
{ "name": "embedding", "type": "Collection(Edm.Single)", "dimensions": 1536, "vectorSearchProfile": "default" }
]
}
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
- Azure.Search.Documents (>= 11.7.0)
- EasyAppDev.Blazor.AutoComplete.AI (>= 1.0.7)
- Microsoft.Extensions.Configuration.Binder (>= 8.0.0)
- Microsoft.Extensions.VectorData.Abstractions (>= 9.7.0)
- Microsoft.SemanticKernel.Connectors.AzureAISearch (>= 1.68.0-preview)
-
net9.0
- Azure.Search.Documents (>= 11.7.0)
- EasyAppDev.Blazor.AutoComplete.AI (>= 1.0.7)
- Microsoft.Extensions.Configuration.Binder (>= 9.0.0)
- Microsoft.Extensions.VectorData.Abstractions (>= 9.7.0)
- Microsoft.SemanticKernel.Connectors.AzureAISearch (>= 1.68.0-preview)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
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.