Тут просто перебор провайдеров, если будут нужны для текста или аудио, то просто меняйте working_providers
from time import perf_counter
from g4f.client import Client
from g4f import Provider
working_providers = [
provider for provider in Provider.__providers__
if provider.working
and not provider.needs_auth
and not getattr(provider, "image_models", False)
and not getattr(provider, "audio_models", False)
]
result_dict = {}
for provider in working_providers:
try:
print(f"[-] try {provider.__name__}")
start = perf_counter()
client = Client(provider=provider)
response = client.chat.completions.create(messages=[{"role": "user", "content": "Hello, say test"}],
proxy="http://fwbvkubh:a9mrqjnqqcpw@216.74.114.133:6416")
end = perf_counter()
elapsed = end - start
answer = response.choices[0].message.content
result_dict[provider.__name__] = [elapsed, answer]
print(f"[+] {provider.__name__} -> {answer} -> {elapsed}\n")
except Exception as exce:
print(f"[--] {provider.__name__} -> {exce}\n")
print(result_dict)
