diff options
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-- | theb/theb_test.py | 4 |
3 files changed, 12 insertions, 15 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/theb/theb_test.py b/theb/theb_test.py deleted file mode 100644 index 177c970a..00000000 --- a/theb/theb_test.py +++ /dev/null @@ -1,4 +0,0 @@ -import theb - -for token in theb.Completion.create('hello world'): - print(token, end='', flush=True)
\ No newline at end of file |