Package com.embabel.common.ai.model
Interface ModelProvider
-
- All Implemented Interfaces:
-
com.embabel.common.core.types.HasInfoString
public interface ModelProvider implements HasInfoStringProvide AI models for requested roles, and expose data about available models.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public classModelProvider.CompanionWell-known roles for models Useful but not exhaustive: users are free to define their own roles
-
Method Summary
Modifier and Type Method Description abstract LlmService<?>getLlm(ModelSelectionCriteria criteria)abstract EmbeddingServicegetEmbeddingService(ModelSelectionCriteria criteria)abstract List<String>listRoles(Class<out AiModel<?>> modelClass)List the roles available for this class of model abstract List<String>listModelNames(Class<out AiModel<?>> modelClass)abstract List<ModelMetadata>listModels()-
-
Method Detail
-
getLlm
abstract LlmService<?> getLlm(ModelSelectionCriteria criteria)
-
getEmbeddingService
abstract EmbeddingService getEmbeddingService(ModelSelectionCriteria criteria)
-
listRoles
abstract List<String> listRoles(Class<out AiModel<?>> modelClass)
List the roles available for this class of model
-
listModelNames
abstract List<String> listModelNames(Class<out AiModel<?>> modelClass)
-
listModels
abstract List<ModelMetadata> listModels()
-
-
-
-