Allow users to define/use language models other than the providers ( imagine cohere, RAG api, etc )