redis-vl-dotnet
Microsoft.Extensions.AI Vectorizer
RedisVL.Vectorizers.ExtensionsAI provides ExtensionsAiTextVectorizer, an IBatchTextVectorizer adapter over IEmbeddingGenerator<string, Embedding<float>> from Microsoft.Extensions.AI.
Package contents
-
ExtensionsAiTextVectorizerfor adapting a Microsoft.Extensions.AI embedding generator to RedisVL vectorizer contracts -
ExtensionsAiVectorizerOptionsfor forwarding optional embedding-generation settings -
ExtensionsAiVectorizerPackageas the package marker type
Constructor options
Use this construction path:
-
new ExtensionsAiTextVectorizer(IEmbeddingGenerator<string, Embedding<float>> generator, ExtensionsAiVectorizerOptions? options = null)
ExtensionsAiVectorizerOptions currently supports:
-
GenerationOptionsto forwardEmbeddingGenerationOptionsto the wrapped generator -
DisposeGeneratorwhen the adapter should own and dispose the wrapped generator
Interop workflow
This adapter keeps Microsoft.Extensions.AI outside the core RedisVL package while still letting applications reuse an existing embedding stack.
Typical usage is:
-
resolve or construct an
IEmbeddingGenerator<string, Embedding<float>> -
wrap it with
ExtensionsAiTextVectorizer -
pass the adapter anywhere
RedisVLexpects anITextVectorizerorIBatchTextVectorizer
Example workflow
/examples/ExtensionsAiVectorizerExample shows the adapter pattern with OpenAI:
-
create an
OpenAI.Embeddings.EmbeddingClient -
convert it to
IEmbeddingGenerator<string, Embedding<float>>withAsIEmbeddingGenerator(…) -
wrap it with
ExtensionsAiTextVectorizer -
vectorize one input and a batch of inputs through the RedisVL abstraction
Run it from the repository root:
dotnet run --project examples/ExtensionsAiVectorizerExample/ExtensionsAiVectorizerExample.csproj