gpt4free/g4f/Provider/__init__.py
hlohaus e2bb1b1f0d fix: update provider implementations and fix SSL handling
- Fix SSL parameter in Liaobots provider (change verify_ssl to ssl=False)
- Simplify model aliases in PollinationsAI by removing list-based random selection
- Add referrer parameter to PollinationsAI provider methods
- Fix image URL generation in PollinationsAI to prevent URL length issues
- Add Gemini-2.5-flash model to Gemini provider models dictionary
- Add Gemini-2.5-pro alias in Gemini provider
- Remove try/except blocks in Provider/__init__.py for more direct imports
- Fix response_format handling in PollinationsAI provider
- Update RequestLogin handling in Gemini provider
2025-05-15 02:21:25 +02:00

85 lines
3 KiB
Python

from __future__ import annotations
from ..providers.types import BaseProvider, ProviderType
from ..providers.retry_provider import RetryProvider, IterListProvider
from ..providers.base_provider import AsyncProvider, AsyncGeneratorProvider
from ..providers.create_images import CreateImagesProvider
from .. import debug
try:
from .deprecated import *
except ImportError as e:
debug.error("Deprecated providers not loaded:", e)
from .needs_auth import *
from .template import OpenaiTemplate, BackendApi
from .hf import HuggingFace, HuggingChat, HuggingFaceAPI, HuggingFaceInference, HuggingFaceMedia
from .har import HarProvider
try:
from .not_working import *
except ImportError as e:
debug.error("Not working providers not loaded:", e)
try:
from .local import *
except ImportError as e:
debug.error("Local providers not loaded:", e)
try:
from .hf_space import *
except ImportError as e:
debug.error("HuggingFace Space providers not loaded:", e)
try:
from .mini_max import HailuoAI, MiniMax
except ImportError as e:
debug.error("MiniMax providers not loaded:", e)
try:
from .audio import *
except ImportError as e:
debug.error("Audio providers not loaded:", e)
from .ARTA import ARTA
from .Blackbox import Blackbox
from .Chatai import Chatai
from .ChatGLM import ChatGLM
from .ChatGpt import ChatGpt
from .Cloudflare import Cloudflare
from .Copilot import Copilot
from .DDG import DDG
from .DeepInfraChat import DeepInfraChat
from .DuckDuckGo import DuckDuckGo
from .Dynaspark import Dynaspark
from .Free2GPT import Free2GPT
from .FreeGpt import FreeGpt
from .GizAI import GizAI
from .ImageLabs import ImageLabs
from .LambdaChat import LambdaChat
from .Liaobots import Liaobots
from .LMArenaProvider import LMArenaProvider
from .PerplexityLabs import PerplexityLabs
from .Pi import Pi
from .Pizzagpt import Pizzagpt
from .PollinationsAI import PollinationsAI
from .PollinationsImage import PollinationsImage
from .TeachAnything import TeachAnything
from .TypeGPT import TypeGPT
from .You import You
from .Websim import Websim
from .Yqcloud import Yqcloud
import sys
__modules__: list = [
getattr(sys.modules[__name__], provider) for provider in dir()
if not provider.startswith("__")
]
__providers__: list[ProviderType] = [
provider for provider in __modules__
if isinstance(provider, type)
and issubclass(provider, BaseProvider)
]
__all__: list[str] = [
provider.__name__ for provider in __providers__
]
__map__: dict[str, ProviderType] = {
provider.__name__: provider for provider in __providers__
}
class ProviderUtils:
convert: dict[str, ProviderType] = __map__