summaryrefslogtreecommitdiffstats
path: root/g4f/Provider/Yqcloud.py
diff options
context:
space:
mode:
authorRyan Jordan <ryjordan@gmail.com>2023-09-06 02:39:57 +0200
committerGitHub <noreply@github.com>2023-09-06 02:39:57 +0200
commitf81e618958318a092ca4c70a1b3ea15260bda97c (patch)
tree3ce022a8d719011268da7f1a0befc97bf32a60d8 /g4f/Provider/Yqcloud.py
parentfeat(docker): add Docker and Docker Compose support (diff)
parent~ | Merge pull request #869 from ahobsonsayers/add-console-script (diff)
downloadgpt4free-f81e618958318a092ca4c70a1b3ea15260bda97c.tar
gpt4free-f81e618958318a092ca4c70a1b3ea15260bda97c.tar.gz
gpt4free-f81e618958318a092ca4c70a1b3ea15260bda97c.tar.bz2
gpt4free-f81e618958318a092ca4c70a1b3ea15260bda97c.tar.lz
gpt4free-f81e618958318a092ca4c70a1b3ea15260bda97c.tar.xz
gpt4free-f81e618958318a092ca4c70a1b3ea15260bda97c.tar.zst
gpt4free-f81e618958318a092ca4c70a1b3ea15260bda97c.zip
Diffstat (limited to '')
-rw-r--r--g4f/Provider/Yqcloud.py42
1 files changed, 21 insertions, 21 deletions
diff --git a/g4f/Provider/Yqcloud.py b/g4f/Provider/Yqcloud.py
index a3147c2d..731e4ecb 100644
--- a/g4f/Provider/Yqcloud.py
+++ b/g4f/Provider/Yqcloud.py
@@ -1,45 +1,45 @@
-import requests
+from __future__ import annotations
-from ..typing import Any, CreateResult
-from .base_provider import BaseProvider
+from aiohttp import ClientSession
+from .base_provider import AsyncProvider, format_prompt
-class Yqcloud(BaseProvider):
+
+class Yqcloud(AsyncProvider):
url = "https://chat9.yqcloud.top/"
working = True
supports_gpt_35_turbo = True
@staticmethod
- def create_completion(
+ async def create_async(
model: str,
messages: list[dict[str, str]],
- stream: bool,
- **kwargs: Any,
- ) -> CreateResult:
- headers = _create_header()
- payload = _create_payload(messages)
-
- url = "https://api.aichatos.cloud/api/generateStream"
- response = requests.post(url=url, headers=headers, json=payload)
- response.raise_for_status()
- response.encoding = 'utf-8'
- yield response.text
+ proxy: str = None,
+ **kwargs,
+ ) -> str:
+ async with ClientSession(
+ headers=_create_header()
+ ) as session:
+ payload = _create_payload(messages)
+ async with session.post("https://api.aichatos.cloud/api/generateStream", proxy=proxy, json=payload) as response:
+ response.raise_for_status()
+ return await response.text()
def _create_header():
return {
- "accept": "application/json, text/plain, */*",
- "content-type": "application/json",
- "origin": "https://chat9.yqcloud.top",
+ "accept" : "application/json, text/plain, */*",
+ "content-type" : "application/json",
+ "origin" : "https://chat9.yqcloud.top",
}
def _create_payload(messages: list[dict[str, str]]):
- prompt = messages[-1]["content"]
return {
- "prompt": prompt,
+ "prompt": format_prompt(messages),
"network": True,
"system": "",
"withoutContext": False,
"stream": False,
+ "userId": "#/chat/1693025544336"
}