From 6b3be02d63b4c3592654a0059474c37465015e11 Mon Sep 17 00:00:00 2001 From: Heiner Lohaus Date: Fri, 23 Feb 2024 19:30:53 +0100 Subject: Set default values for generation config Set a list of providers --- g4f/__init__.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'g4f/__init__.py') 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}') -- cgit v1.2.3