Spaces:
Build error
Build error
| import requests | |
| import json | |
| import hashlib | |
| import random | |
| import string | |
| from fake_useragent import UserAgent | |
| class ChatCompletion: | |
| def md5(self, text): | |
| return hashlib.md5(text.encode()).hexdigest()[::-1] | |
| def get_api_key(self, user_agent): | |
| part1 = str(random.randint(0, 10**11)) | |
| part2 = self.md5(user_agent+self.md5(user_agent+self.md5(user_agent+part1+"x"))) | |
| return f"tryit-{part1}-{part2}" | |
| def create(self, messages): | |
| user_agent = UserAgent().random | |
| api_key = self.get_api_key(user_agent) | |
| headers = { | |
| "api-key": api_key, | |
| "user-agent": user_agent | |
| } | |
| files = { | |
| "chat_style": (None, "chat"), | |
| "chatHistory": (None, json.dumps(messages)) | |
| } | |
| r = requests.post("https://api.deepai.org/chat_response", headers=headers, files=files, stream=True) | |
| for chunk in r.iter_content(chunk_size=None): | |
| r.raise_for_status() | |
| yield chunk.decode() | |
| class Completion: | |
| def create(self, prompt): | |
| return ChatCompletion.create([ | |
| { | |
| "role": "user", | |
| "content": prompt | |
| } | |
| ]) |