{"repo": "abaijan/telegram-tinder", "files": {"gpt.py": {"e340b2e0a02789183f65236f8c99710b25f7cddd": {"t": 1785674451.203969, "n": 1497, "h": "dff7501adc64e963", "c": "import openai\r\nfrom openai import OpenAI\r\nimport httpx as httpx\r\n\r\nclass ChatGptService:\r\n client: OpenAI = None\r\n message_list: list = None\r\n\r\n def __init__(self, token):\r\n token = \"sk-proj-\"+token[:3:-1] if token.startswith('gpt:') else token\r\n self.client = openai.OpenAI(http_client=httpx.Client(proxies=\"http://18.199.183.77:49232\"), api_key=token)\r\n self.message_list = []\r\n\r\n async def send_message_list(self) -> str:\r\n completion = self.client.chat.completions.create(\r\n model=\"gpt-4o\", # gpt-4o, gpt-4-turbo, gpt-3.5-turbo\r\n messages=self.message_list,\r\n max_tokens=3000,\r\n temperature=0.9\r\n )\r\n message = completion.choices[0].message\r\n self.message_list.append(message)\r\n return message.content\r\n\r\n def set_prompt(self, prompt_text: str) -> None:\r\n self.message_list.clear()\r\n self.message_list.append({\"role\": \"system\", \"content\": prompt_text})\r\n\r\n async def add_message(self, message_text: str) -> str:\r\n self.message_list.append({\"role\": \"user\", \"content\": message_text})\r\n return await self.send_message_list()\r\n\r\n async def send_question(self, prompt_text: str, message_text: str) -> str:\r\n self.message_list.clear()\r\n self.message_list.append({\"role\": \"system\", \"content\": prompt_text})\r\n self.message_list.append({\"role\": \"user\", \"content\": message_text})\r\n return await self.send_message_list()\r\n"}}}}