summaryrefslogtreecommitdiffstats
path: root/g4f/Provider/Binjie.py
diff options
context:
space:
mode:
authorkqlio67 <kqlio67@users.noreply.github.com>2024-10-12 20:34:04 +0200
committerkqlio67 <kqlio67@users.noreply.github.com>2024-10-12 20:34:04 +0200
commit3119b8e37e73c958157ce8277bd7801202ab6962 (patch)
tree48c44c500d637a3843ebb49c976346f529b3225b /g4f/Provider/Binjie.py
parentfeat(/Provider/AmigoChat.py): add retry mechanism for API requests (diff)
downloadgpt4free-3119b8e37e73c958157ce8277bd7801202ab6962.tar
gpt4free-3119b8e37e73c958157ce8277bd7801202ab6962.tar.gz
gpt4free-3119b8e37e73c958157ce8277bd7801202ab6962.tar.bz2
gpt4free-3119b8e37e73c958157ce8277bd7801202ab6962.tar.lz
gpt4free-3119b8e37e73c958157ce8277bd7801202ab6962.tar.xz
gpt4free-3119b8e37e73c958157ce8277bd7801202ab6962.tar.zst
gpt4free-3119b8e37e73c958157ce8277bd7801202ab6962.zip
Diffstat (limited to 'g4f/Provider/Binjie.py')
-rw-r--r--g4f/Provider/Binjie.py65
1 files changed, 0 insertions, 65 deletions
diff --git a/g4f/Provider/Binjie.py b/g4f/Provider/Binjie.py
deleted file mode 100644
index 90f9ec3c..00000000
--- a/g4f/Provider/Binjie.py
+++ /dev/null
@@ -1,65 +0,0 @@
-from __future__ import annotations
-
-import random
-from ..requests import StreamSession
-
-from ..typing import AsyncResult, Messages
-from .base_provider import AsyncGeneratorProvider, format_prompt
-
-
-class Binjie(AsyncGeneratorProvider):
- url = "https://chat18.aichatos8.com"
- working = True
- supports_gpt_4 = True
- supports_stream = True
- supports_system_message = True
- supports_message_history = True
-
- @staticmethod
- async def create_async_generator(
- model: str,
- messages: Messages,
- proxy: str = None,
- timeout: int = 120,
- **kwargs,
- ) -> AsyncResult:
- async with StreamSession(
- headers=_create_header(), proxies={"https": proxy}, timeout=timeout
- ) as session:
- payload = _create_payload(messages, **kwargs)
- async with session.post("https://api.binjie.fun/api/generateStream", json=payload) as response:
- response.raise_for_status()
- async for chunk in response.iter_content():
- if chunk:
- chunk = chunk.decode()
- if "sorry, 您的ip已由于触发防滥用检测而被封禁" in chunk:
- raise RuntimeError("IP address is blocked by abuse detection.")
- yield chunk
-
-
-def _create_header():
- return {
- "accept" : "application/json, text/plain, */*",
- "content-type" : "application/json",
- "origin" : "https://chat18.aichatos8.com",
- "referer" : "https://chat18.aichatos8.com/"
- }
-
-
-def _create_payload(
- messages: Messages,
- system_message: str = "",
- user_id: int = None,
- **kwargs
-):
- if not user_id:
- user_id = random.randint(1690000544336, 2093025544336)
- return {
- "prompt": format_prompt(messages),
- "network": True,
- "system": system_message,
- "withoutContext": False,
- "stream": True,
- "userId": f"#/chat/{user_id}"
- }
-