usingMixedbread;usingMeai=Microsoft.Extensions.AI;Meai.IEmbeddingGenerator<string,Meai.Embedding<float>>generator=newMixedbreadClient(apiKey:Environment.GetEnvironmentVariable("MIXEDBREAD_API_KEY")!);vartexts=new[]{"The quick brown fox jumps over the lazy dog.","Machine learning is a subset of artificial intelligence.","Embeddings represent text as numerical vectors.",};varembeddings=awaitgenerator.GenerateAsync(texts,newMeai.EmbeddingGenerationOptions{ModelId="mixedbread-ai/mxbai-embed-large-v1"});Console.WriteLine($"Generated {embeddings.Count} embeddings");Console.WriteLine($"Total tokens: {embeddings.Usage?.TotalTokenCount}");
Custom Dimensions
Mixedbread models support custom output dimensions via Matryoshka representation learning:
1 2 3 4 5 6 7 8 910111213141516
usingMixedbread;usingMeai=Microsoft.Extensions.AI;Meai.IEmbeddingGenerator<string,Meai.Embedding<float>>generator=newMixedbreadClient(apiKey:Environment.GetEnvironmentVariable("MIXEDBREAD_API_KEY")!);varoptions=newMeai.EmbeddingGenerationOptions{ModelId="mxbai-embed-2d-large-v1",Dimensions=256,};varembeddings=awaitgenerator.GenerateAsync(["Compact embedding for efficient storage."],options);Console.WriteLine($"Dimensions: {embeddings[0].Vector.Length}");// 256