summaryrefslogtreecommitdiffstats
path: root/theb
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--theb/README.md (renamed from openai_rev/theb/README.md)6
-rw-r--r--theb/__init__.py (renamed from openai_rev/theb/__init__.py)20
-rw-r--r--theb/theb_test.py4
3 files changed, 17 insertions, 13 deletions
diff --git a/openai_rev/theb/README.md b/theb/README.md
index bd37ba3f..ca978fce 100644
--- a/openai_rev/theb/README.md
+++ b/theb/README.md
@@ -1,10 +1,12 @@
### Example: `theb` (use like openai pypi package) <a name="example-theb"></a>
+
```python
# import library
-from openai_rev import theb
+import theb
# simple streaming completion
for token in theb.Completion.create('hello world'):
print(token, end='', flush=True)
-``` \ No newline at end of file
+print("")
+```
diff --git a/openai_rev/theb/__init__.py b/theb/__init__.py
index fa79fdd9..726e025e 100644
--- a/openai_rev/theb/__init__.py
+++ b/theb/__init__.py
@@ -1,11 +1,9 @@
+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'
@@ -16,8 +14,7 @@ class Completion:
message_queue = Queue()
stream_completed = False
- @classmethod
- def request(cls, prompt: str):
+ def request(prompt: str):
headers = {
'authority': 'chatbot.theb.ai',
'content-type': 'application/json',
@@ -25,11 +22,12 @@ 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
@@ -38,7 +36,7 @@ class Completion:
def create(prompt: str):
Thread(target=Completion.request, args=[prompt]).start()
- while not Completion.stream_completed or not Completion.message_queue.empty():
+ while Completion.stream_completed != True 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
new file mode 100644
index 00000000..177c970a
--- /dev/null
+++ b/theb/theb_test.py
@@ -0,0 +1,4 @@
+import theb
+
+for token in theb.Completion.create('hello world'):
+ print(token, end='', flush=True) \ No newline at end of file