buildModelListing method
Builds a provider with ModelListingCapability
Returns a provider that implements ModelListingCapability for discovering available models.
Throws UnsupportedCapabilityError if the provider doesn't support model listing.
Example:
final modelProvider = await ai()
.openai()
.apiKey(apiKey)
.buildModelListing();
// Direct usage without type casting
final models = await modelProvider.listModels();
Implementation
Future<ModelListingCapability> buildModelListing() async {
final provider = await build();
if (provider is! ModelListingCapability) {
throw UnsupportedCapabilityError(
'Provider "$_providerId" does not support model listing capabilities. '
'Supported providers: OpenAI, Anthropic, DeepSeek, Ollama',
);
}
return provider as ModelListingCapability;
}