Generics are problematic on the model specification level, because of our provider class and registry. Almost all embedding models are text so we should just remove the generic and use strings instead. If there are other embedding model types in the future, e.g. for images, we can have separate models instead.