From 42b8450be3d8c185713c513d5d997cae1c522e8a Mon Sep 17 00:00:00 2001 From: William Stein Date: Fri, 5 May 2023 05:07:28 +0000 Subject: remove cocalc; all non-authenticated access has been disabled - cocalc is my website - i have disabled *all* non-authenticated access, so gpt4free will no longer work with cocalc. - it's better to remove it so you don't confuse your users, who might expect cocalc to work with gpt4free --- gpt4free/README.md | 5 ---- gpt4free/__init__.py | 7 ----- gpt4free/cocalc/__init__.py | 67 --------------------------------------------- gpt4free/cocalc/readme.md | 19 ------------- 4 files changed, 98 deletions(-) delete mode 100644 gpt4free/cocalc/__init__.py delete mode 100644 gpt4free/cocalc/readme.md diff --git a/gpt4free/README.md b/gpt4free/README.md index f3ba27ab..73e7fa09 100644 --- a/gpt4free/README.md +++ b/gpt4free/README.md @@ -42,9 +42,6 @@ print(f'END') response = gpt4free.Completion.create(Provider.Theb, prompt='Write a poem on Lionel Messi') print(response) -# usage cocalc -response = gpt4free.Completion.create(Provider.CoCalc, prompt='Write a poem on Lionel Messi', cookie_input='') -print(response) ``` @@ -73,8 +70,6 @@ Some of the keyword arguments are optional, while others are required. - Theb: (no keyword arguments required) -- CoCalc: - - `cookie_input`: str - this needs to be provided by user #### Token generation of quora ```python diff --git a/gpt4free/__init__.py b/gpt4free/__init__.py index 6df778e3..1e652897 100644 --- a/gpt4free/__init__.py +++ b/gpt4free/__init__.py @@ -1,6 +1,5 @@ from enum import Enum -from gpt4free import cocalc from gpt4free import forefront from gpt4free import quora from gpt4free import theb @@ -15,7 +14,6 @@ class Provider(Enum): Poe = 'poe' ForeFront = 'fore_front' Theb = 'theb' - CoCalc = 'cocalc' UseLess = 'useless' @@ -40,8 +38,6 @@ class Completion: return Completion.__fore_front_service(prompt, **kwargs) elif provider == Provider.Theb: return Completion.__theb_service(prompt, **kwargs) - elif provider == Provider.CoCalc: - return Completion.__cocalc_service(prompt, **kwargs) elif provider == Provider.UseLess: return Completion.__useless_service(prompt, **kwargs) else: @@ -67,6 +63,3 @@ class Completion: def __theb_service(prompt: str, **kwargs): return ''.join(theb.Completion.create(prompt=prompt)) - @staticmethod - def __cocalc_service(prompt: str, **kwargs): - return cocalc.Completion.create(prompt, cookie_input=kwargs.get('cookie_input', '')).text diff --git a/gpt4free/cocalc/__init__.py b/gpt4free/cocalc/__init__.py deleted file mode 100644 index e122051a..00000000 --- a/gpt4free/cocalc/__init__.py +++ /dev/null @@ -1,67 +0,0 @@ -import requests -from fake_useragent import UserAgent -from pydantic import BaseModel - - -class CoCalcResponse(BaseModel): - text: str - status: bool - - -class Completion: - """A class for generating text completions using CoCalc's GPT-based chatbot.""" - - API_ENDPOINT = "https://cocalc.com/api/v2/openai/chatgpt" - DEFAULT_SYSTEM_PROMPT = "ASSUME I HAVE FULL ACCESS TO COCALC. " - - @staticmethod - def create(prompt: str, cookie_input: str) -> CoCalcResponse: - """ - Generate a text completion for the given prompt using CoCalc's GPT-based chatbot. - - Args: - prompt: The text prompt to complete. - cookie_input: The cookie required to authenticate the chatbot API request. - - Returns: - A CoCalcResponse object containing the text completion and a boolean indicating - whether the request was successful. - """ - - # Initialize a session with custom headers - session = Completion._initialize_session(cookie_input) - - # Set the data that will be submitted - payload = Completion._create_payload(prompt, Completion.DEFAULT_SYSTEM_PROMPT) - - try: - # Submit the request and return the results - response = session.post(Completion.API_ENDPOINT, json=payload).json() - return CoCalcResponse(text=response['output'], status=response['success']) - except requests.exceptions.RequestException as e: - # Handle exceptions that may occur during the request - print(f"Error: {e}") - return CoCalcResponse(text="", status=False) - - @classmethod - def _initialize_session(cls, conversation_cookie: str) -> 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": conversation_cookie, - "User-Agent": UserAgent().random, - } - session.headers.update(headers) - - return session - - @staticmethod - def _create_payload(prompt: str, system_prompt: str) -> dict: - """Create the payload for the API request.""" - - return {"input": prompt, "system": system_prompt, "tag": "next:index"} diff --git a/gpt4free/cocalc/readme.md b/gpt4free/cocalc/readme.md deleted file mode 100644 index f0911155..00000000 --- a/gpt4free/cocalc/readme.md +++ /dev/null @@ -1,19 +0,0 @@ -### Example: `cocalc` - -```python -# import library -from gpt4free import cocalc - -cocalc.Completion.create(prompt="How are you!", cookie_input="cookieinput") ## Tutorial -``` - -### How to grab cookie input -```js -// input this into ur developer tools console and the exact response u get from this u put into ur cookieInput! -var cookies = document.cookie.split("; "); -var cookieString = ""; -for (var i = 0; i < cookies.length; i++) { - cookieString += cookies[i] + "; "; -} -console.log(cookieString); -``` -- cgit v1.2.3