buildEmbedding method

Future<EmbeddingCapability> buildEmbedding()

Builds a provider with EmbeddingCapability

Returns a provider that implements EmbeddingCapability for generating vector embeddings from text.

Throws UnsupportedCapabilityError if the provider doesn't support embeddings.

Example:

final embeddingProvider = await ai()
    .openai()
    .apiKey(apiKey)
    .model('text-embedding-3-small')
    .buildEmbedding();

// Direct usage without type casting
final embeddings = await embeddingProvider.embed(['Hello world']);

Implementation

Future<EmbeddingCapability> buildEmbedding() async {
  final provider = await build();
  if (provider is! EmbeddingCapability) {
    throw UnsupportedCapabilityError(
      'Provider "$_providerId" does not support embedding capabilities. '
      'Supported providers: OpenAI, Google, DeepSeek',
    );
  }
  return provider as EmbeddingCapability;
}