This gives the user the ability to pass in models for embeddings that are not already defined in the library. Also more closely matches how the completions API works.