diff options
Diffstat (limited to 'unfinished/usesless')
-rw-r--r-- | unfinished/usesless/README.md | 23 | ||||
-rw-r--r-- | unfinished/usesless/__init__.py | 51 |
2 files changed, 74 insertions, 0 deletions
diff --git a/unfinished/usesless/README.md b/unfinished/usesless/README.md new file mode 100644 index 00000000..13e9df8c --- /dev/null +++ b/unfinished/usesless/README.md @@ -0,0 +1,23 @@ +ai.usesless.com + +to do: + +- use random user agent in header +- make the code better I guess (?) + +### Example: `usesless` <a name="example-usesless"></a> + +```python +import usesless + +message_id = "" +while True: + prompt = input("Question: ") + if prompt == "!stop": + break + + req = usesless.Completion.create(prompt=prompt, parentMessageId=message_id) + + print(f"Answer: {req['text']}") + message_id = req["id"] +``` diff --git a/unfinished/usesless/__init__.py b/unfinished/usesless/__init__.py new file mode 100644 index 00000000..6f9a47ef --- /dev/null +++ b/unfinished/usesless/__init__.py @@ -0,0 +1,51 @@ +import requests +import json + + +class Completion: + headers = { + "authority": "ai.usesless.com", + "accept": "application/json, text/plain, */*", + "accept-language": "en-US,en;q=0.5", + "cache-control": "no-cache", + "sec-fetch-dest": "empty", + "sec-fetch-mode": "cors", + "sec-fetch-site": "same-origin", + "user-agent": "Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/112.0", + } + + @staticmethod + def create( + systemMessage: str = "You are a helpful assistant", + prompt: str = "", + parentMessageId: str = "", + presence_penalty: float = 1, + temperature: float = 1, + model: str = "gpt-3.5-turbo", + ): + json_data = { + "openaiKey": "", + "prompt": prompt, + "options": { + "parentMessageId": parentMessageId, + "systemMessage": systemMessage, + "completionParams": { + "presence_penalty": presence_penalty, + "temperature": temperature, + "model": model, + }, + }, + } + + url = "https://ai.usesless.com/api/chat-process" + request = requests.post(url, headers=Completion.headers, json=json_data) + content = request.content + response = Completion.__response_to_json(content) + return response + + @classmethod + def __response_to_json(cls, text) -> dict: + text = str(text.decode("utf-8")) + split_text = text.rsplit("\n", 1)[1] + to_json = json.loads(split_text) + return to_json |