summaryrefslogtreecommitdiffstats
path: root/g4f/Provider/nexra/NexraChatGPTWeb.py
diff options
context:
space:
mode:
Diffstat (limited to 'g4f/Provider/nexra/NexraChatGPTWeb.py')
-rw-r--r--g4f/Provider/nexra/NexraChatGPTWeb.py53
1 files changed, 0 insertions, 53 deletions
diff --git a/g4f/Provider/nexra/NexraChatGPTWeb.py b/g4f/Provider/nexra/NexraChatGPTWeb.py
deleted file mode 100644
index e7738665..00000000
--- a/g4f/Provider/nexra/NexraChatGPTWeb.py
+++ /dev/null
@@ -1,53 +0,0 @@
-from __future__ import annotations
-from aiohttp import ClientSession
-from ...typing import AsyncResult, Messages
-from ..base_provider import AsyncGeneratorProvider, ProviderModelMixin
-from ..helper import format_prompt
-import json
-
-class NexraChatGPTWeb(AsyncGeneratorProvider, ProviderModelMixin):
- label = "Nexra ChatGPT Web"
- api_endpoint = "https://nexra.aryahcr.cc/api/chat/gptweb"
- models = ['gptweb']
-
- @classmethod
- async def create_async_generator(
- cls,
- model: str,
- messages: Messages,
- proxy: str = None,
- **kwargs
- ) -> AsyncResult:
- headers = {
- "Content-Type": "application/json",
- }
-
- async with ClientSession(headers=headers) as session:
- prompt = format_prompt(messages)
- if prompt is None:
- raise ValueError("Prompt cannot be None")
-
- data = {
- "prompt": prompt,
- "markdown": False
- }
-
- async with session.post(cls.api_endpoint, json=data, proxy=proxy) as response:
- response.raise_for_status()
-
- full_response = ""
- async for chunk in response.content:
- if chunk:
- result = chunk.decode("utf-8").strip()
-
- try:
- json_data = json.loads(result)
-
- if json_data.get("status"):
- full_response = json_data.get("gpt", "")
- else:
- full_response = f"Error: {json_data.get('message', 'Unknown error')}"
- except json.JSONDecodeError:
- full_response = "Error: Invalid JSON response."
-
- yield full_response.strip()