diff options
author | Commenter123321 <36051603+Commenter123321@users.noreply.github.com> | 2023-10-10 14:15:12 +0200 |
---|---|---|
committer | Commenter123321 <36051603+Commenter123321@users.noreply.github.com> | 2023-10-10 14:15:12 +0200 |
commit | 0e4297494dd46533738f786e4ac675541586177a (patch) | |
tree | 6c2999e14ed831f7f37cc60991571cd040772918 /g4f/Provider/GPTalk.py | |
parent | add cool testing for gpt-3.5 and and gpt-4 (diff) | |
parent | Update Aivvm.py (diff) | |
download | gpt4free-0e4297494dd46533738f786e4ac675541586177a.tar gpt4free-0e4297494dd46533738f786e4ac675541586177a.tar.gz gpt4free-0e4297494dd46533738f786e4ac675541586177a.tar.bz2 gpt4free-0e4297494dd46533738f786e4ac675541586177a.tar.lz gpt4free-0e4297494dd46533738f786e4ac675541586177a.tar.xz gpt4free-0e4297494dd46533738f786e4ac675541586177a.tar.zst gpt4free-0e4297494dd46533738f786e4ac675541586177a.zip |
Diffstat (limited to '')
-rw-r--r-- | g4f/Provider/GPTalk.py | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/g4f/Provider/GPTalk.py b/g4f/Provider/GPTalk.py index c85399c1..afb6ff68 100644 --- a/g4f/Provider/GPTalk.py +++ b/g4f/Provider/GPTalk.py @@ -2,8 +2,8 @@ from __future__ import annotations import secrets, time, json from aiohttp import ClientSession -from typing import AsyncGenerator +from ..typing import AsyncResult, Messages from .base_provider import AsyncGeneratorProvider from .helper import format_prompt @@ -18,9 +18,10 @@ class GPTalk(AsyncGeneratorProvider): async def create_async_generator( cls, model: str, - messages: list[dict[str, str]], + messages: Messages, + proxy: str = None, **kwargs - ) -> AsyncGenerator: + ) -> AsyncResult: if not model: model = "gpt-3.5-turbo" timestamp = int(time.time()) @@ -48,7 +49,7 @@ class GPTalk(AsyncGeneratorProvider): "fingerprint": secrets.token_hex(16).zfill(32), "platform": "fingerprint" } - async with session.post(cls.url + "/api/chatgpt/user/login", json=data) as response: + async with session.post(cls.url + "/api/chatgpt/user/login", json=data, proxy=proxy) as response: response.raise_for_status() cls._auth = (await response.json())["data"] data = { @@ -68,11 +69,11 @@ class GPTalk(AsyncGeneratorProvider): headers = { 'authorization': f'Bearer {cls._auth["token"]}', } - async with session.post(cls.url + "/api/chatgpt/chatapi/text", json=data, headers=headers) as response: + async with session.post(cls.url + "/api/chatgpt/chatapi/text", json=data, headers=headers, proxy=proxy) as response: response.raise_for_status() token = (await response.json())["data"]["token"] last_message = "" - async with session.get(cls.url + "/api/chatgpt/chatapi/stream", params={"token": token}) as response: + async with session.get(cls.url + "/api/chatgpt/chatapi/stream", params={"token": token}, proxy=proxy) as response: response.raise_for_status() async for line in response.content: if line.startswith(b"data: "): |