From ac92b8a2ad4d2aa6b6e471ced50799bc5992254b Mon Sep 17 00:00:00 2001 From: 9fo <71867245+9fo@users.noreply.github.com> Date: Thu, 27 Apr 2023 16:07:01 -0700 Subject: refactored cocalc too --- cocalc/__init__.py | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 cocalc/__init__.py diff --git a/cocalc/__init__.py b/cocalc/__init__.py new file mode 100644 index 00000000..5a32274c --- /dev/null +++ b/cocalc/__init__.py @@ -0,0 +1,57 @@ +import requests + +class Completion: + @staticmethod + def create(prompt:str, cookieInput:str) -> str: + # Initialize a session with custom headers + session = Completion._initialize_session(cookieInput) + + # Set the data that will be submitted + payload = Completion._create_payload(prompt, ("ASSUME I HAVE FULL ACCESS TO COCALC. ")) + + # Submit the request and return the results + return Completion._submit_request(session, payload) + + @classmethod + def _initialize_session(cls, conversationCookie) -> requests.Session: + """Initialize a session with custom headers for the request.""" + + session = requests.Session() + headers = { + 'Accept': '*/*', + 'Accept-Language': 'en-US,en;q=0.5', + 'Origin': 'https://cocalc.com', + 'Referer': 'https://cocalc.com/api/v2/openai/chatgpt', + 'Cookie': conversationCookie, + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36', + } + session.headers.update(headers) + + return session + + @classmethod + def _create_payload( + cls, + prompt: str, + system_prompt: str + ) -> dict: + + return { + "input": prompt, + "system": system_prompt, + "tag": "next:index" + } + + @classmethod + def _submit_request( + cls, + session: requests.Session, + payload: dict + ) -> str: + + response = session.post( + "https://cocalc.com/api/v2/openai/chatgpt", json=payload).json() + return { + "response":response["output"], + "success":response["success"] + } \ No newline at end of file -- cgit v1.2.3