From 0b52fa578488e4e90bc03a26691d210edb3b5f1e Mon Sep 17 00:00:00 2001 From: Vadim Boev <33985574+VadimBoev@users.noreply.github.com> Date: Thu, 5 Oct 2023 00:30:46 +0300 Subject: [PATCH] upd 0.1.1 --- g4f/Provider/AItianhu.py | 66 ++++++ g4f/Provider/AItianhuSpace.py | 81 +++++++ g4f/Provider/Acytoo.py | 51 +++++ g4f/Provider/Aibn.py | 51 +++++ g4f/Provider/Aichat.py | 54 +++++ g4f/Provider/Ails.py | 106 +++++++++ g4f/Provider/Aivvm.py | 62 ++++++ g4f/Provider/Bing.py | 299 ++++++++++++++++++++++++++ g4f/Provider/ChatBase.py | 62 ++++++ g4f/Provider/ChatForAi.py | 62 ++++++ g4f/Provider/ChatgptAi.py | 75 +++++++ g4f/Provider/ChatgptDuo.py | 51 +++++ g4f/Provider/ChatgptLogin.py | 74 +++++++ g4f/Provider/DeepAi.py | 66 ++++++ g4f/Provider/FreeGpt.py | 54 +++++ g4f/Provider/GptGo.py | 78 +++++++ g4f/Provider/H2o.py | 109 ++++++++++ g4f/Provider/Liaobots.py | 89 ++++++++ g4f/Provider/Myshell.py | 172 +++++++++++++++ g4f/Provider/Phind.py | 76 +++++++ g4f/Provider/Vercel.py | 377 +++++++++++++++++++++++++++++++++ g4f/Provider/Vitalentum.py | 68 ++++++ g4f/Provider/Ylokh.py | 74 +++++++ g4f/Provider/You.py | 40 ++++ g4f/Provider/Yqcloud.py | 48 +++++ g4f/Provider/base_provider.py | 136 ++++++++++++ g4f/Provider/helper.py | 70 ++++++ g4f/Provider/retry_provider.py | 81 +++++++ 28 files changed, 2632 insertions(+) create mode 100644 g4f/Provider/AItianhu.py create mode 100644 g4f/Provider/AItianhuSpace.py create mode 100644 g4f/Provider/Acytoo.py create mode 100644 g4f/Provider/Aibn.py create mode 100644 g4f/Provider/Aichat.py create mode 100644 g4f/Provider/Ails.py create mode 100644 g4f/Provider/Aivvm.py create mode 100644 g4f/Provider/Bing.py create mode 100644 g4f/Provider/ChatBase.py create mode 100644 g4f/Provider/ChatForAi.py create mode 100644 g4f/Provider/ChatgptAi.py create mode 100644 g4f/Provider/ChatgptDuo.py create mode 100644 g4f/Provider/ChatgptLogin.py create mode 100644 g4f/Provider/DeepAi.py create mode 100644 g4f/Provider/FreeGpt.py create mode 100644 g4f/Provider/GptGo.py create mode 100644 g4f/Provider/H2o.py create mode 100644 g4f/Provider/Liaobots.py create mode 100644 g4f/Provider/Myshell.py create mode 100644 g4f/Provider/Phind.py create mode 100644 g4f/Provider/Vercel.py create mode 100644 g4f/Provider/Vitalentum.py create mode 100644 g4f/Provider/Ylokh.py create mode 100644 g4f/Provider/You.py create mode 100644 g4f/Provider/Yqcloud.py create mode 100644 g4f/Provider/base_provider.py create mode 100644 g4f/Provider/helper.py create mode 100644 g4f/Provider/retry_provider.py diff --git a/g4f/Provider/AItianhu.py b/g4f/Provider/AItianhu.py new file mode 100644 index 00000000..1d8653b7 --- /dev/null +++ b/g4f/Provider/AItianhu.py @@ -0,0 +1,66 @@ +from __future__ import annotations + +import json + +from ..typing import AsyncGenerator +from ..requests import StreamSession +from .base_provider import AsyncGeneratorProvider, format_prompt + + +class AItianhu(AsyncGeneratorProvider): + url = "https://www.aitianhu.com" + working = True + supports_gpt_35_turbo = True + + @classmethod + async def create_async_generator( + cls, + model: str, + messages: list[dict[str, str]], + proxy: str = None, + **kwargs + ) -> AsyncGenerator: + data = { + "prompt": format_prompt(messages), + "options": {}, + "systemMessage": "You are ChatGPT, a large language model trained by OpenAI. Follow the user's instructions carefully.", + "temperature": 0.8, + "top_p": 1, + **kwargs + } + headers = { + "Authority": cls.url, + "Accept": "application/json, text/plain, */*", + "Origin": cls.url, + "Referer": f"{cls.url}/" + } + async with StreamSession(headers=headers, proxies={"https": proxy}, impersonate="chrome107", verify=False) as session: + async with session.post(f"{cls.url}/api/chat-process", json=data) as response: + response.raise_for_status() + async for line in response.iter_lines(): + if line == b"