summaryrefslogtreecommitdiffstats
path: root/g4f/Provider/Opchatgpts.py
diff options
context:
space:
mode:
Diffstat (limited to 'g4f/Provider/Opchatgpts.py')
-rw-r--r--g4f/Provider/Opchatgpts.py60
1 files changed, 4 insertions, 56 deletions
diff --git a/g4f/Provider/Opchatgpts.py b/g4f/Provider/Opchatgpts.py
index 241646f0..166323bd 100644
--- a/g4f/Provider/Opchatgpts.py
+++ b/g4f/Provider/Opchatgpts.py
@@ -1,60 +1,8 @@
from __future__ import annotations
-import requests
+from .ChatgptLogin import ChatgptLogin
-from ..typing import Any, CreateResult
-from .base_provider import BaseProvider
-
-class Opchatgpts(BaseProvider):
- url = "https://opchatgpts.net"
- working = True
- supports_gpt_35_turbo = True
-
- @staticmethod
- def create_completion(
- model: str,
- messages: list[dict[str, str]],
- stream: bool, **kwargs: Any) -> CreateResult:
-
- temperature = kwargs.get("temperature", 0.8)
- max_tokens = kwargs.get("max_tokens", 1024)
- system_prompt = kwargs.get(
- "system_prompt",
- "Converse as if you were an AI assistant. Be friendly, creative.")
-
- payload = _create_payload(
- messages = messages,
- temperature = temperature,
- max_tokens = max_tokens,
- system_prompt = system_prompt)
-
- response = requests.post("https://opchatgpts.net/wp-json/ai-chatbot/v1/chat", json=payload)
-
- response.raise_for_status()
- yield response.json()["reply"]
-
-
-def _create_payload(
- messages: list[dict[str, str]],
- temperature: float,
- max_tokens: int, system_prompt: str) -> dict:
-
- return {
- "env" : "chatbot",
- "session" : "N/A",
- "prompt" : "\n",
- "context" : system_prompt,
- "messages" : messages,
- "newMessage" : messages[::-1][0]["content"],
- "userName" : '<div class="mwai-name-text">User:</div>',
- "aiName" : '<div class="mwai-name-text">AI:</div>',
- "model" : "gpt-3.5-turbo",
- "temperature" : temperature,
- "maxTokens" : max_tokens,
- "maxResults" : 1,
- "apiKey" : "",
- "service" : "openai",
- "embeddingsIndex" : "",
- "stop" : "",
- }
+class Opchatgpts(ChatgptLogin):
+ url = "https://opchatgpts.net"
+ working = True \ No newline at end of file