diff --git a/simplemind/utils.py b/simplemind/utils.py index 7427312..f39c036 100644 --- a/simplemind/utils.py +++ b/simplemind/utils.py @@ -1,7 +1,9 @@ +import difflib from typing import Union from .providers import providers +_PROVIDER_NAMES = [provider.NAME.lower() for provider in providers] def find_provider(provider_name: Union[str, None]): """Find a provider by name.""" @@ -10,4 +12,10 @@ def find_provider(provider_name: Union[str, None]): if provider_class.NAME.lower() == provider_name.lower(): # Instantiate the provider return provider_class() - raise ValueError(f"Provider {provider_name} not found") + + provider_found = difflib.get_close_matches(provider_name.lower(), _PROVIDER_NAMES, n=1) # Show only one suggestion + + if provider_found: + raise ValueError(f"Provider {provider_name} not found. Maybe you try to use is '{provider_found[0]}'?") + else: + raise ValueError(f"Provider {provider_name} not found.") \ No newline at end of file