diff options
author | Heiner Lohaus <hlohaus@users.noreply.github.com> | 2024-02-23 19:30:53 +0100 |
---|---|---|
committer | Heiner Lohaus <hlohaus@users.noreply.github.com> | 2024-02-23 19:30:53 +0100 |
commit | 6b3be02d63b4c3592654a0059474c37465015e11 (patch) | |
tree | f19fcd829039435d1aae9ace02873770ca756dca /g4f/__init__.py | |
parent | Improve readme, add smartphone guide (diff) | |
download | gpt4free-6b3be02d63b4c3592654a0059474c37465015e11.tar gpt4free-6b3be02d63b4c3592654a0059474c37465015e11.tar.gz gpt4free-6b3be02d63b4c3592654a0059474c37465015e11.tar.bz2 gpt4free-6b3be02d63b4c3592654a0059474c37465015e11.tar.lz gpt4free-6b3be02d63b4c3592654a0059474c37465015e11.tar.xz gpt4free-6b3be02d63b4c3592654a0059474c37465015e11.tar.zst gpt4free-6b3be02d63b4c3592654a0059474c37465015e11.zip |
Diffstat (limited to '')
-rw-r--r-- | g4f/__init__.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/g4f/__init__.py b/g4f/__init__.py index 6c8e100e..6716c727 100644 --- a/g4f/__init__.py +++ b/g4f/__init__.py @@ -10,6 +10,7 @@ from .cookies import get_cookies, set_cookies from . import debug, version from .providers.types import BaseRetryProvider, ProviderType from .providers.base_provider import ProviderModelMixin +from .providers.retry_provider import RetryProvider def get_model_and_provider(model : Union[Model, str], provider : Union[ProviderType, str, None], @@ -43,7 +44,12 @@ def get_model_and_provider(model : Union[Model, str], version.utils.check_version() if isinstance(provider, str): - if provider in ProviderUtils.convert: + if " " in provider: + provider_list = [ProviderUtils.convert[p] for p in provider.split() if p in ProviderUtils.convert] + if not provider_list: + raise ProviderNotFoundError(f'Providers not found: {provider}') + provider = RetryProvider(provider_list, False) + elif provider in ProviderUtils.convert: provider = ProviderUtils.convert[provider] else: raise ProviderNotFoundError(f'Provider not found: {provider}') |