diff options
author | Raju Komati <komatiraju032@gmail.com> | 2023-04-27 23:28:12 +0200 |
---|---|---|
committer | Raju Komati <komatiraju032@gmail.com> | 2023-04-27 23:28:47 +0200 |
commit | dc1d9834f97bc5044c6417aeb44b9ca84bd18118 (patch) | |
tree | 23dd20d492eb9e6d3d337692d2683ec15dd60695 /openai_rev/theb | |
parent | update openai_rev module add test file with simple use (diff) | |
download | gpt4free-dc1d9834f97bc5044c6417aeb44b9ca84bd18118.tar gpt4free-dc1d9834f97bc5044c6417aeb44b9ca84bd18118.tar.gz gpt4free-dc1d9834f97bc5044c6417aeb44b9ca84bd18118.tar.bz2 gpt4free-dc1d9834f97bc5044c6417aeb44b9ca84bd18118.tar.lz gpt4free-dc1d9834f97bc5044c6417aeb44b9ca84bd18118.tar.xz gpt4free-dc1d9834f97bc5044c6417aeb44b9ca84bd18118.tar.zst gpt4free-dc1d9834f97bc5044c6417aeb44b9ca84bd18118.zip |
Diffstat (limited to '')
-rw-r--r-- | openai_rev/theb/README.md (renamed from theb/README.md) | 3 | ||||
-rw-r--r-- | openai_rev/theb/__init__.py (renamed from theb/__init__.py) | 20 | ||||
-rw-r--r-- | openai_rev/theb/theb_test.py | 4 |
3 files changed, 16 insertions, 11 deletions
diff --git a/theb/README.md b/openai_rev/theb/README.md index 982c34a1..bd37ba3f 100644 --- a/theb/README.md +++ b/openai_rev/theb/README.md @@ -1,9 +1,8 @@ ### Example: `theb` (use like openai pypi package) <a name="example-theb"></a> - ```python # import library -import theb +from openai_rev import theb # simple streaming completion for token in theb.Completion.create('hello world'): diff --git a/theb/__init__.py b/openai_rev/theb/__init__.py index 726e025e..fa79fdd9 100644 --- a/theb/__init__.py +++ b/openai_rev/theb/__init__.py @@ -1,9 +1,11 @@ -from re import findall from json import loads from queue import Queue, Empty +from re import findall from threading import Thread + from curl_cffi import requests + class Completion: # experimental part1 = '{"role":"assistant","id":"chatcmpl' @@ -14,7 +16,8 @@ class Completion: message_queue = Queue() stream_completed = False - def request(prompt: str): + @classmethod + def request(cls, prompt: str): headers = { 'authority': 'chatbot.theb.ai', 'content-type': 'application/json', @@ -22,12 +25,11 @@ class Completion: 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36', } - requests.post('https://chatbot.theb.ai/api/chat-process', headers=headers, - content_callback = Completion.handle_stream_response, - json = { - 'prompt': prompt, - 'options': {} - } + requests.post( + 'https://chatbot.theb.ai/api/chat-process', + headers=headers, + content_callback=Completion.handle_stream_response, + json={'prompt': prompt, 'options': {}}, ) Completion.stream_completed = True @@ -36,7 +38,7 @@ class Completion: def create(prompt: str): Thread(target=Completion.request, args=[prompt]).start() - while Completion.stream_completed != True or not Completion.message_queue.empty(): + while not Completion.stream_completed or not Completion.message_queue.empty(): try: message = Completion.message_queue.get(timeout=0.01) for message in findall(Completion.regex, message): diff --git a/openai_rev/theb/theb_test.py b/openai_rev/theb/theb_test.py new file mode 100644 index 00000000..805ef094 --- /dev/null +++ b/openai_rev/theb/theb_test.py @@ -0,0 +1,4 @@ +from openai_rev import theb + +for token in theb.Completion.create('hello world'): + print(token, end='', flush=True) |