PraisonAI 0.0.43__py3-none-any.whl → 0.0.44__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of PraisonAI might be problematic. Click here for more details.
- praisonai/deploy.py +1 -1
- praisonai/public/android-chrome-192x192.png +0 -0
- praisonai/public/android-chrome-512x512.png +0 -0
- praisonai/public/apple-touch-icon.png +0 -0
- praisonai/public/favicon-16x16.png +0 -0
- praisonai/public/favicon-32x32.png +0 -0
- praisonai/public/favicon.ico +0 -0
- praisonai/public/logo_dark.png +0 -0
- praisonai/public/logo_light.png +0 -0
- praisonai/ui/chat.py +138 -14
- praisonai/ui/public/fantasy.svg +3 -0
- praisonai/ui/public/game.svg +3 -0
- praisonai/ui/public/logo_dark.png +0 -0
- praisonai/ui/public/logo_light.png +0 -0
- praisonai/ui/public/movie.svg +3 -0
- praisonai/ui/public/thriller.svg +3 -0
- {praisonai-0.0.43.dist-info → praisonai-0.0.44.dist-info}/METADATA +1 -1
- praisonai-0.0.44.dist-info/RECORD +37 -0
- praisonai-0.0.43.dist-info/RECORD +0 -23
- {praisonai-0.0.43.dist-info → praisonai-0.0.44.dist-info}/LICENSE +0 -0
- {praisonai-0.0.43.dist-info → praisonai-0.0.44.dist-info}/WHEEL +0 -0
- {praisonai-0.0.43.dist-info → praisonai-0.0.44.dist-info}/entry_points.txt +0 -0
praisonai/deploy.py
CHANGED
|
@@ -56,7 +56,7 @@ class CloudDeployer:
|
|
|
56
56
|
file.write("FROM python:3.11-slim\n")
|
|
57
57
|
file.write("WORKDIR /app\n")
|
|
58
58
|
file.write("COPY . .\n")
|
|
59
|
-
file.write("RUN pip install flask praisonai==0.0.
|
|
59
|
+
file.write("RUN pip install flask praisonai==0.0.44 gunicorn markdown\n")
|
|
60
60
|
file.write("EXPOSE 8080\n")
|
|
61
61
|
file.write('CMD ["gunicorn", "-b", "0.0.0.0:8080", "api:app"]\n')
|
|
62
62
|
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
praisonai/ui/chat.py
CHANGED
|
@@ -11,6 +11,22 @@ load_dotenv()
|
|
|
11
11
|
import chainlit.data as cl_data
|
|
12
12
|
from chainlit.step import StepDict
|
|
13
13
|
from literalai.helper import utc_now
|
|
14
|
+
import logging
|
|
15
|
+
|
|
16
|
+
# Set up logging
|
|
17
|
+
logger = logging.getLogger(__name__)
|
|
18
|
+
log_level = os.getenv("LOGLEVEL", "INFO").upper()
|
|
19
|
+
logger.handlers = []
|
|
20
|
+
|
|
21
|
+
# Set up logging to console
|
|
22
|
+
console_handler = logging.StreamHandler()
|
|
23
|
+
console_handler.setLevel(log_level)
|
|
24
|
+
console_formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
|
|
25
|
+
console_handler.setFormatter(console_formatter)
|
|
26
|
+
logger.addHandler(console_handler)
|
|
27
|
+
|
|
28
|
+
# Set the logging level for the logger
|
|
29
|
+
logger.setLevel(log_level)
|
|
14
30
|
|
|
15
31
|
now = utc_now()
|
|
16
32
|
|
|
@@ -43,9 +59,51 @@ def initialize_db():
|
|
|
43
59
|
FOREIGN KEY (threadId) REFERENCES threads (id)
|
|
44
60
|
)
|
|
45
61
|
''')
|
|
62
|
+
cursor.execute('''
|
|
63
|
+
CREATE TABLE IF NOT EXISTS settings (
|
|
64
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
65
|
+
key TEXT UNIQUE,
|
|
66
|
+
value TEXT
|
|
67
|
+
)
|
|
68
|
+
''')
|
|
69
|
+
conn.commit()
|
|
70
|
+
conn.close()
|
|
71
|
+
|
|
72
|
+
def save_setting(key: str, value: str):
|
|
73
|
+
"""Saves a setting to the database.
|
|
74
|
+
|
|
75
|
+
Args:
|
|
76
|
+
key: The setting key.
|
|
77
|
+
value: The setting value.
|
|
78
|
+
"""
|
|
79
|
+
conn = sqlite3.connect(DB_PATH)
|
|
80
|
+
cursor = conn.cursor()
|
|
81
|
+
cursor.execute(
|
|
82
|
+
"""
|
|
83
|
+
INSERT OR REPLACE INTO settings (id, key, value)
|
|
84
|
+
VALUES ((SELECT id FROM settings WHERE key = ?), ?, ?)
|
|
85
|
+
""",
|
|
86
|
+
(key, key, value),
|
|
87
|
+
)
|
|
46
88
|
conn.commit()
|
|
47
89
|
conn.close()
|
|
48
90
|
|
|
91
|
+
def load_setting(key: str) -> str:
|
|
92
|
+
"""Loads a setting from the database.
|
|
93
|
+
|
|
94
|
+
Args:
|
|
95
|
+
key: The setting key.
|
|
96
|
+
|
|
97
|
+
Returns:
|
|
98
|
+
The setting value, or None if the key is not found.
|
|
99
|
+
"""
|
|
100
|
+
conn = sqlite3.connect(DB_PATH)
|
|
101
|
+
cursor = conn.cursor()
|
|
102
|
+
cursor.execute('SELECT value FROM settings WHERE key = ?', (key,))
|
|
103
|
+
result = cursor.fetchone()
|
|
104
|
+
conn.close()
|
|
105
|
+
return result[0] if result else None
|
|
106
|
+
|
|
49
107
|
def save_thread_to_db(thread):
|
|
50
108
|
conn = sqlite3.connect(DB_PATH)
|
|
51
109
|
cursor = conn.cursor()
|
|
@@ -57,7 +115,7 @@ def save_thread_to_db(thread):
|
|
|
57
115
|
# No steps to save as steps are empty in the provided thread data
|
|
58
116
|
conn.commit()
|
|
59
117
|
conn.close()
|
|
60
|
-
|
|
118
|
+
logger.debug("Thread saved to DB")
|
|
61
119
|
|
|
62
120
|
def update_thread_in_db(thread):
|
|
63
121
|
conn = sqlite3.connect(DB_PATH)
|
|
@@ -70,7 +128,7 @@ def update_thread_in_db(thread):
|
|
|
70
128
|
''', (thread['id'], thread['name'], thread['createdAt'], thread['userId'], thread['userIdentifier']))
|
|
71
129
|
|
|
72
130
|
# Fetch message_history from metadata
|
|
73
|
-
message_history =
|
|
131
|
+
message_history = cl.user_session.get("message_history", [])
|
|
74
132
|
|
|
75
133
|
# Ensure user messages come first followed by assistant messages
|
|
76
134
|
user_messages = [msg for msg in message_history if msg['role'] == 'user']
|
|
@@ -102,15 +160,29 @@ def update_thread_in_db(thread):
|
|
|
102
160
|
|
|
103
161
|
conn.commit()
|
|
104
162
|
conn.close()
|
|
163
|
+
logger.debug("Thread updated in DB")
|
|
164
|
+
|
|
165
|
+
def delete_thread_from_db(thread_id: str):
|
|
166
|
+
"""Deletes a thread and its steps from the database.
|
|
167
|
+
|
|
168
|
+
Args:
|
|
169
|
+
thread_id: The ID of the thread to delete.
|
|
170
|
+
"""
|
|
171
|
+
conn = sqlite3.connect(DB_PATH)
|
|
172
|
+
cursor = conn.cursor()
|
|
173
|
+
cursor.execute('DELETE FROM threads WHERE id = ?', (thread_id,))
|
|
174
|
+
cursor.execute('DELETE FROM steps WHERE threadId = ?', (thread_id,))
|
|
175
|
+
conn.commit()
|
|
176
|
+
conn.close()
|
|
105
177
|
|
|
106
178
|
def load_threads_from_db():
|
|
107
179
|
conn = sqlite3.connect(DB_PATH)
|
|
108
180
|
cursor = conn.cursor()
|
|
109
|
-
cursor.execute('SELECT * FROM threads')
|
|
181
|
+
cursor.execute('SELECT * FROM threads ORDER BY createdAt ASC')
|
|
110
182
|
thread_rows = cursor.fetchall()
|
|
111
183
|
threads = []
|
|
112
184
|
for thread_row in thread_rows:
|
|
113
|
-
cursor.execute('SELECT * FROM steps WHERE threadId = ?', (thread_row[0],))
|
|
185
|
+
cursor.execute('SELECT * FROM steps WHERE threadId = ? ORDER BY createdAt ASC', (thread_row[0],))
|
|
114
186
|
step_rows = cursor.fetchall()
|
|
115
187
|
steps = []
|
|
116
188
|
for step_row in step_rows:
|
|
@@ -131,6 +203,7 @@ def load_threads_from_db():
|
|
|
131
203
|
"steps": steps
|
|
132
204
|
})
|
|
133
205
|
conn.close()
|
|
206
|
+
logger.debug("Threads loaded from DB")
|
|
134
207
|
return threads
|
|
135
208
|
|
|
136
209
|
# Initialize the database
|
|
@@ -141,9 +214,11 @@ deleted_thread_ids = [] # type: List[str]
|
|
|
141
214
|
|
|
142
215
|
class TestDataLayer(cl_data.BaseDataLayer):
|
|
143
216
|
async def get_user(self, identifier: str):
|
|
217
|
+
logger.debug(f"Getting user: {identifier}")
|
|
144
218
|
return cl.PersistedUser(id="test", createdAt=now, identifier=identifier)
|
|
145
219
|
|
|
146
220
|
async def create_user(self, user: cl.User):
|
|
221
|
+
logger.debug(f"Creating user: {user.identifier}")
|
|
147
222
|
return cl.PersistedUser(id="test", createdAt=now, identifier=user.identifier)
|
|
148
223
|
|
|
149
224
|
async def update_thread(
|
|
@@ -154,6 +229,7 @@ class TestDataLayer(cl_data.BaseDataLayer):
|
|
|
154
229
|
metadata: Optional[Dict] = None,
|
|
155
230
|
tags: Optional[List[str]] = None,
|
|
156
231
|
):
|
|
232
|
+
logger.debug(f"Updating thread: {thread_id}")
|
|
157
233
|
thread = next((t for t in thread_history if t["id"] == thread_id), None)
|
|
158
234
|
if thread:
|
|
159
235
|
if name:
|
|
@@ -162,10 +238,12 @@ class TestDataLayer(cl_data.BaseDataLayer):
|
|
|
162
238
|
thread["metadata"] = metadata
|
|
163
239
|
if tags:
|
|
164
240
|
thread["tags"] = tags
|
|
165
|
-
|
|
241
|
+
|
|
242
|
+
logger.debug(f"Thread: {thread}")
|
|
166
243
|
cl.user_session.set("message_history", thread['metadata']['message_history'])
|
|
167
244
|
cl.user_session.set("thread_id", thread["id"])
|
|
168
|
-
|
|
245
|
+
update_thread_in_db(thread)
|
|
246
|
+
logger.debug(f"Thread updated: {thread_id}")
|
|
169
247
|
|
|
170
248
|
else:
|
|
171
249
|
thread_history.append(
|
|
@@ -191,6 +269,7 @@ class TestDataLayer(cl_data.BaseDataLayer):
|
|
|
191
269
|
"steps": [],
|
|
192
270
|
}
|
|
193
271
|
save_thread_to_db(thread)
|
|
272
|
+
logger.debug(f"Thread created: {thread_id}")
|
|
194
273
|
|
|
195
274
|
@cl_data.queue_until_user_message()
|
|
196
275
|
async def create_step(self, step_dict: StepDict):
|
|
@@ -204,48 +283,79 @@ class TestDataLayer(cl_data.BaseDataLayer):
|
|
|
204
283
|
thread["steps"].append(step_dict)
|
|
205
284
|
|
|
206
285
|
async def get_thread_author(self, thread_id: str):
|
|
286
|
+
logger.debug(f"Getting thread author: {thread_id}")
|
|
207
287
|
return "admin"
|
|
208
288
|
|
|
209
289
|
async def list_threads(
|
|
210
290
|
self, pagination: cl_data.Pagination, filters: cl_data.ThreadFilter
|
|
211
291
|
) -> cl_data.PaginatedResponse[cl_data.ThreadDict]:
|
|
292
|
+
logger.debug(f"Listing threads")
|
|
212
293
|
return cl_data.PaginatedResponse(
|
|
213
|
-
data=[t for t in thread_history if t["id"] not in deleted_thread_ids],
|
|
294
|
+
data=[t for t in thread_history if t["id"] not in deleted_thread_ids][::-1],
|
|
214
295
|
pageInfo=cl_data.PageInfo(
|
|
215
296
|
hasNextPage=False, startCursor=None, endCursor=None
|
|
216
297
|
),
|
|
217
298
|
)
|
|
218
299
|
|
|
219
300
|
async def get_thread(self, thread_id: str):
|
|
301
|
+
logger.debug(f"Getting thread: {thread_id}")
|
|
220
302
|
thread_history = load_threads_from_db()
|
|
221
303
|
return next((t for t in thread_history if t["id"] == thread_id), None)
|
|
222
304
|
|
|
223
305
|
async def delete_thread(self, thread_id: str):
|
|
224
306
|
deleted_thread_ids.append(thread_id)
|
|
307
|
+
delete_thread_from_db(thread_id)
|
|
308
|
+
logger.debug(f"Deleted thread: {thread_id}")
|
|
225
309
|
|
|
226
310
|
cl_data._data_layer = TestDataLayer()
|
|
227
311
|
|
|
228
312
|
@cl.on_chat_start
|
|
229
313
|
async def start():
|
|
230
314
|
initialize_db()
|
|
231
|
-
|
|
315
|
+
model_name = load_setting("model_name")
|
|
316
|
+
|
|
317
|
+
if model_name:
|
|
318
|
+
cl.user_session.set("model_name", model_name)
|
|
319
|
+
else:
|
|
320
|
+
# If no setting found, use default or environment variable
|
|
321
|
+
model_name = os.getenv("MODEL_NAME", "gpt-3.5-turbo")
|
|
322
|
+
cl.user_session.set("model_name", model_name)
|
|
323
|
+
logger.debug(f"Model name: {model_name}")
|
|
324
|
+
settings = cl.ChatSettings(
|
|
232
325
|
[
|
|
233
326
|
TextInput(
|
|
234
327
|
id="model_name",
|
|
235
328
|
label="Enter the Model Name",
|
|
236
|
-
placeholder="e.g., gpt-3.5-turbo"
|
|
329
|
+
placeholder="e.g., gpt-3.5-turbo",
|
|
330
|
+
initial=model_name
|
|
237
331
|
)
|
|
238
332
|
]
|
|
239
|
-
)
|
|
333
|
+
)
|
|
334
|
+
cl.user_session.set("settings", settings)
|
|
335
|
+
await settings.send()
|
|
240
336
|
|
|
241
337
|
@cl.on_settings_update
|
|
242
338
|
async def setup_agent(settings):
|
|
339
|
+
logger.debug(settings)
|
|
340
|
+
cl.user_session.set("settings", settings)
|
|
243
341
|
model_name = settings["model_name"]
|
|
244
342
|
cl.user_session.set("model_name", model_name)
|
|
343
|
+
|
|
344
|
+
# Save in settings table
|
|
345
|
+
save_setting("model_name", model_name)
|
|
346
|
+
|
|
347
|
+
# Save in thread metadata
|
|
348
|
+
thread_id = cl.user_session.get("thread_id")
|
|
349
|
+
if thread_id:
|
|
350
|
+
thread = await cl_data.get_thread(thread_id)
|
|
351
|
+
if thread:
|
|
352
|
+
metadata = thread.get("metadata", {})
|
|
353
|
+
metadata["model_name"] = model_name
|
|
354
|
+
await cl_data.update_thread(thread_id, metadata=metadata)
|
|
245
355
|
|
|
246
356
|
@cl.on_message
|
|
247
357
|
async def main(message: cl.Message):
|
|
248
|
-
model_name =
|
|
358
|
+
model_name = load_setting("model_name") or os.getenv("MODEL_NAME") or "gpt-3.5-turbo"
|
|
249
359
|
message_history = cl.user_session.get("message_history", [])
|
|
250
360
|
message_history.append({"role": "user", "content": message.content})
|
|
251
361
|
|
|
@@ -266,9 +376,9 @@ async def main(message: cl.Message):
|
|
|
266
376
|
if token := part['choices'][0]['delta']['content']:
|
|
267
377
|
await msg.stream_token(token)
|
|
268
378
|
full_response += token
|
|
269
|
-
|
|
379
|
+
logger.debug(f"Full response: {full_response}")
|
|
270
380
|
message_history.append({"role": "assistant", "content": full_response})
|
|
271
|
-
|
|
381
|
+
logger.debug(f"Message history: {message_history}")
|
|
272
382
|
cl.user_session.set("message_history", message_history)
|
|
273
383
|
await msg.update()
|
|
274
384
|
|
|
@@ -291,6 +401,20 @@ async def send_count():
|
|
|
291
401
|
|
|
292
402
|
@cl.on_chat_resume
|
|
293
403
|
async def on_chat_resume(thread: cl_data.ThreadDict):
|
|
404
|
+
logger.info(f"Resuming chat: {thread['id']}")
|
|
405
|
+
model_name = load_setting("model_name") or os.getenv("MODEL_NAME") or "gpt-3.5-turbo"
|
|
406
|
+
logger.debug(f"Model name: {model_name}")
|
|
407
|
+
settings = cl.ChatSettings(
|
|
408
|
+
[
|
|
409
|
+
TextInput(
|
|
410
|
+
id="model_name",
|
|
411
|
+
label="Enter the Model Name",
|
|
412
|
+
placeholder="e.g., gpt-3.5-turbo",
|
|
413
|
+
initial=model_name
|
|
414
|
+
)
|
|
415
|
+
]
|
|
416
|
+
)
|
|
417
|
+
await settings.send()
|
|
294
418
|
thread_id = thread["id"]
|
|
295
419
|
cl.user_session.set("thread_id", thread["id"])
|
|
296
420
|
message_history = cl.user_session.get("message_history", [])
|
|
@@ -303,6 +427,6 @@ async def on_chat_resume(thread: cl_data.ThreadDict):
|
|
|
303
427
|
elif msg_type == "assistant_message":
|
|
304
428
|
message_history.append({"role": "assistant", "content": message.get("output", "")})
|
|
305
429
|
else:
|
|
306
|
-
|
|
430
|
+
logger.warning(f"Message without type: {message}")
|
|
307
431
|
|
|
308
432
|
cl.user_session.set("message_history", message_history)
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
|
3
|
+
<svg width="800px" height="800px" viewBox="0 0 1024 1024" class="icon" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M840.5 798.2L662.3 599.5l-151 173.7-173.7-173.7-167.7 201c-21 30.4 0.9 71.8 37.9 71.6l594.7-3.3c36.2-0.1 57.8-40.3 38-70.6z" fill="#FFB89A" /><path d="M741.6 647.3l-52.3-47.7c-12.2-11.2-31.2-10.3-42.4 1.9s-10.3 31.2 1.9 42.4l52.3 47.7c5.8 5.3 13 7.8 20.2 7.8 8.1 0 16.2-3.3 22.2-9.8 11.2-12.1 10.3-31.1-1.9-42.3zM631.2 546.5c-12.4-11-31.4-9.8-42.3 2.6l-98.8 111.7-171-165.7L87.9 724.7c-11.8 11.7-11.8 30.7-0.1 42.4 5.9 5.9 13.6 8.9 21.3 8.9 7.6 0 15.3-2.9 21.1-8.7l189.4-188.1 173.8 168.5L633.8 589c11-12.5 9.8-31.5-2.6-42.5z" fill="#33CC99" /><path d="M721.3 342.8m-35.1 0a35.1 35.1 0 1 0 70.2 0 35.1 35.1 0 1 0-70.2 0Z" fill="#33CC99" /><path d="M743.2 175.1H191.6c-70.6 0-128.3 57.7-128.3 128.3v499.2c0 70.6 57.7 128.3 128.3 128.3h551.5c70.6 0 128.3-57.7 128.3-128.3V303.5c0.1-70.6-57.7-128.4-128.2-128.4z m68.3 627.6c0 18.1-7.1 35.2-20.1 48.2-13 13-30.1 20.1-48.2 20.1H191.6c-18.1 0-35.2-7.1-48.2-20.1-13-13-20.1-30.1-20.1-48.2V303.5c0-18.1 7.1-35.2 20.1-48.2 13-13 30.1-20.1 48.2-20.1h551.5c18.1 0 35.2 7.1 48.2 20.1 13 13 20.1 30.1 20.1 48.2v499.2z" fill="#45484C" /><path d="M799.7 90.9H237.2c-16.6 0-30 13.4-30 30s13.4 30 30 30h562.4c26.1 0 50.8 10.3 69.4 28.9 18.6 18.6 28.9 43.3 28.9 69.4v482.4c0 16.6 13.4 30 30 30s30-13.4 30-30V249.2C958 161.9 887 90.9 799.7 90.9z" fill="#45484C" /></svg>
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
|
3
|
+
<svg width="800px" height="800px" viewBox="0 0 1024 1024" class="icon" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M570.2 842c-50.6 0-278.7-180-278.7-401.9 0-58.8-2.9-133.1-1-183.9-50.8 3.2-91.4 45.7-91.4 97.3v272.1c37.4 194.7 137.5 334 255.2 334 69.5 0 132.9-48.6 180.9-128.5-20.8 7.1-42.6 10.9-65 10.9z" fill="#FFB89A" /><path d="M926.1 191.8C900.5 74.1 817.9 62.1 704.9 62.1c-29.1 0-60.3 0.8-93 0.8-36 0-70.5-1.1-102.5-1.1-109.7 0-189.8 12.5-201.3 123.7-20.4 198.3 30 617.1 306.1 617.1S939 414.3 926.1 191.8z m-76.9 268.5c-9.5 47.9-22.3 90.8-38.1 127.7-16.8 39.2-37 71.4-60 95.8-37.3 39.5-82.1 58.7-137 58.7-53.4 0-97.6-20.1-134.9-61.6-45.5-50.5-79.8-131.5-99-234.2-15.6-83.5-20.3-178.9-12.4-255.2 1.8-17.3 5.7-30.7 11.6-39.8 4.4-6.8 10.1-11.7 18.7-15.8 25.8-12.5 70.8-14.2 111.4-14.2 15 0 30.7 0.2 47.3 0.5 17.8 0.3 36.2 0.6 55.2 0.6 17.2 0 33.9-0.2 50-0.4 15.1-0.2 29.3-0.4 43.1-0.4 44.5 0 89.5 1.8 118 15.1 15.9 7.4 33.4 20.8 43.6 63 2.6 53.3 3.6 153.5-17.5 260.2z" fill="#4E5155" /><path d="M532 841.7c-32.5 22.3-70.6 33.7-113.2 33.7-29.7 0-57.3-6-82.1-17.7-23.2-11-44.7-27.4-63.9-48.7-46-50.9-80.3-131.3-99.2-232.4-15.1-80.6-19.6-172.9-12-246.8 3-29.5 12-50.2 27.5-63.2 14.2-12 35.1-19.2 65.8-22.9 16.5-2 28.2-16.9 26.3-33.3-2-16.5-16.9-28.2-33.3-26.3-42.9 5.1-73.8 16.7-97.4 36.5-27.9 23.5-43.8 57.2-48.5 103-8.2 79.3-3.4 178.1 12.7 264 9.7 51.9 23.4 99.4 40.6 141.2 19.8 48.1 44.4 88.6 73 120.4 51.6 57.2 115.7 86.2 190.6 86.2 55 0 104.5-14.9 147.2-44.2 13.7-9.4 17.1-28.1 7.7-41.7-9.4-13.7-28.1-17.2-41.8-7.8z" fill="#4E5155" /><path d="M519.7 248.5c-16.6 0-30 13.4-30 30v91.3c0 16.6 13.4 30 30 30s30-13.4 30-30v-91.3c0-16.6-13.5-30-30-30zM299.5 385.5c0-16.6-13.4-30-30-30s-30 13.4-30 30v91.3c0 16.6 13.4 30 30 30s30-13.4 30-30v-91.3zM754.6 248.5c-16.6 0-30 13.4-30 30v91.3c0 16.6 13.4 30 30 30s30-13.4 30-30v-91.3c0-16.6-13.4-30-30-30zM716.7 554.5c0-16.6-13.4-30-30-30H551v30c0 58.5 38.1 123.7 92.8 123.7 22.9 0 45-11.9 62.2-33.6 10.3-13 8.1-31.9-4.9-42.1-13-10.3-31.9-8.1-42.1 4.9-5.3 6.7-11.1 10.9-15.1 10.9-4.3 0-11.9-5.1-19.1-16.4-3.3-5.3-6.2-11.2-8.4-17.4h70.4c16.4 0 29.9-13.4 29.9-30zM401.6 704c-25.4 0-46.1-24.2-46.1-53.9 0-16.6-13.4-30-30-30s-30 13.4-30 30c0 62.8 47.6 113.9 106.1 113.9 16.6 0 30-13.4 30-30s-13.5-30-30-30z" fill="#33CC99" /></svg>
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
|
3
|
+
<svg width="800px" height="800px" viewBox="0 0 1024 1024" class="icon" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M861.9 383.8H218.1c-36.4 0-66.1-29.8-66.1-66.1V288c0-36.4 29.8-66.1 66.1-66.1h643.8c36.4 0 66.1 29.8 66.1 66.1v29.7c0 36.3-29.8 66.1-66.1 66.1z" fill="#FFB89A" /><path d="M822.9 129.2H199.8c-77.2 0-140.4 63.2-140.4 140.4v487.2c0 77.2 63.2 140.4 140.4 140.4h623.1c77.2 0 140.4-63.2 140.4-140.4V269.6c0-77.2-63.2-140.4-140.4-140.4z m80.4 177H760.4L864.6 201c5.4 3.3 10.4 7.3 15 11.8 15.3 15.3 23.7 35.4 23.7 56.8v36.6z m-673.3 0l104-117h61.3l-109.1 117H230z m247.4-117h169.2L532 306.2H368.3l109.1-117z m248.8 0h65.6L676 306.2h-60l112.5-114.8-2.3-2.2zM143 212.9c15.3-15.3 35.4-23.7 56.8-23.7h53.9l-104 117h-30.4v-36.5c0.1-21.4 8.5-41.5 23.7-56.8z m736.6 600.7c-15.3 15.3-35.4 23.7-56.8 23.7h-623c-21.3 0-41.5-8.4-56.8-23.7-15.3-15.3-23.7-35.4-23.7-56.8V366.2h783.9v390.6c0.1 21.3-8.3 41.5-23.6 56.8z" fill="#45484C" /><path d="M400.5 770.6V430.9L534.1 508c14.3 8.3 19.3 26.6 11 41-8.3 14.3-26.6 19.3-41 11l-43.6-25.2v131.8l114.1-65.9-7.5-4.3c-14.3-8.3-19.3-26.6-11-41 8.3-14.3 26.6-19.3 41-11l97.5 56.3-294.1 169.9z" fill="#33CC99" /></svg>
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
|
3
|
+
<svg width="800px" height="800px" viewBox="0 0 1024 1024" class="icon" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M188.3 766.5a94.4 135.8 0 1 0 188.8 0 94.4 135.8 0 1 0-188.8 0Z" fill="#FFB89A" /><path d="M931.5 397s0-0.1 0 0c-34.2-82.6-119.3-141-218.8-141-129.7 0-234.9 99.3-234.9 221.9 0 52.1 19.1 100.1 50.9 138 1 14.5 1.8 29.1 1.8 43.6 0 148.5 98.1 269 219.2 269 121 0 219.2-120.4 219.2-269 0-70.1-1.7-214.7-37.4-262.5z m-36.6 347.5c-8.7 25.3-21.1 47.9-36.8 67.1-29.8 36.5-68.3 56.7-108.5 56.7s-78.7-20.1-108.5-56.7c-15.7-19.2-28-41.8-36.8-67.1-9.3-26.9-13.9-55.5-13.9-85.1 0-16.8-1-33.5-2-47.7l-1.3-19.5-12.6-15c-24.1-28.6-36.8-63-36.8-99.3 0-89.3 78.5-161.9 174.9-161.9 36.4 0 71.4 10.3 101 29.7 28.4 18.7 65.5 81.7 65.5 81.7s17.9 27.5 24.7 98.2c4.5 46.5 5 95.9 5 133.8 0.1 29.6-4.6 58.2-13.9 85.1zM377.1 219.9c-51.8 0-93.8 42-93.8 93.8s42 93.8 93.8 93.8 93.8-42 93.8-93.8-42-93.8-93.8-93.8z m0 127.5c-18.6 0-33.8-15.2-33.8-33.8 0-18.6 15.2-33.8 33.8-33.8 18.6 0 33.8 15.2 33.8 33.8 0 18.7-15.1 33.8-33.8 33.8z" fill="#45484C" /><path d="M521.2 206.7m-50.3 0a50.3 50.3 0 1 0 100.6 0 50.3 50.3 0 1 0-100.6 0Z" fill="#45484C" /><path d="M653 156.4m-50.3 0a50.3 50.3 0 1 0 100.6 0 50.3 50.3 0 1 0-100.6 0Z" fill="#45484C" /><path d="M781.9 158.4m-50.3 0a50.3 50.3 0 1 0 100.6 0 50.3 50.3 0 1 0-100.6 0Z" fill="#45484C" /><path d="M909 206.7m-50.3 0a50.3 50.3 0 1 0 100.6 0 50.3 50.3 0 1 0-100.6 0Z" fill="#45484C" /><path d="M263.9 602.7c44.7 0 81 31.5 81 70.3 0 20.9-10.2 35.9-18.7 44.8l-15.9 19.7-0.5 27.2c0.7 7.2 0.6 16.9 0.6 24.7v4.8c0 33.7-27.4 61.2-61.2 61.2-14.9 0-33.3-9.6-48.1-25-15.2-15.9-24.6-35.9-24.6-52.3v-3.2c0-12.7 0-36.2 1-60.2 1.4-33 7.4-57.3 7.4-57.3 3.9-14.7 13.4-28.2 26.8-38 14.8-11 32.8-16.7 52.2-16.7m0-60c-66.4 0-122 42.4-137 99.4-10.9 23-10.4 112.6-10.4 135.9 0 66.9 65.8 137.3 132.7 137.3 66.9 0 121.2-54.3 121.2-121.2 0-9.2 0.3-23-0.8-34.9 22-23 35.4-53.2 35.4-86.3-0.1-71.9-63.2-130.2-141.1-130.2zM444.4 559.9c-26.4 0-47.8 21.4-47.8 47.8s21.4 47.8 47.8 47.8 47.8-21.4 47.8-47.8-21.4-47.8-47.8-47.8zM377.1 494.5c-15.2 0-27.5 12.3-27.5 27.5s12.3 27.5 27.5 27.5 27.5-12.3 27.5-27.5c0-15.3-12.3-27.5-27.5-27.5zM288.1 471.5c-15.2 0-27.5 12.3-27.5 27.5s12.3 27.5 27.5 27.5 27.5-12.3 27.5-27.5-12.4-27.5-27.5-27.5zM188.3 477.9c-15.2 0-27.5 12.3-27.5 27.5s12.3 27.5 27.5 27.5 27.5-12.3 27.5-27.5-12.3-27.5-27.5-27.5zM100.6 538.4c-15.2 0-27.5 12.3-27.5 27.5s12.3 27.5 27.5 27.5 27.5-12.3 27.5-27.5c-0.1-15.2-12.4-27.5-27.5-27.5z" fill="#45484C" /><path d="M670.1 584.6c-41.4 0-80.2-20.3-103.9-54.3-9.5-13.6-6.2-32.3 7.4-41.8 13.6-9.5 32.3-6.2 41.8 7.4 12.5 17.9 33 28.6 54.7 28.6 36.8 0 66.7-29.9 66.7-66.7 0-19.8-8.7-38.4-23.9-51.2-12.7-10.6-14.4-29.6-3.7-42.3s29.6-14.4 42.3-3.7c28.9 24.2 45.4 59.6 45.4 97.2-0.1 70-56.9 126.8-126.8 126.8z" fill="#33CC99" /><path d="M853 556.4c-26 0-49.6-14.5-60.1-36.9-7-15-0.6-32.9 14.4-39.9s32.9-0.6 39.9 14.4c0.3 0.6 2.2 2.4 5.8 2.4 1.2 0 2.3-0.2 3.3-0.6 15.5-5.9 32.8 1.8 38.7 17.3 5.9 15.5-1.8 32.8-17.3 38.7-7.9 3.1-16.2 4.6-24.7 4.6z" fill="#33CC99" /></svg>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: PraisonAI
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.44
|
|
4
4
|
Summary: PraisonAI application combines AutoGen and CrewAI or similar frameworks into a low-code solution for building and managing multi-agent LLM systems, focusing on simplicity, customization, and efficient human-agent collaboration.
|
|
5
5
|
Author: Mervin Praison
|
|
6
6
|
Requires-Python: >=3.10,<3.13
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
praisonai/__init__.py,sha256=JrgyPlzZfLlozoW7SHZ1nVJ63rLPR3ki2k5ZPywYrnI,175
|
|
2
|
+
praisonai/__main__.py,sha256=MVgsjMThjBexHt4nhd760JCqvP4x0IQcwo8kULOK4FQ,144
|
|
3
|
+
praisonai/agents_generator.py,sha256=8d1WRbubvEkBrW1HZ7_xnGyqgJi0yxmXa3MgTIqef1c,19127
|
|
4
|
+
praisonai/auto.py,sha256=9spTXqj47Hmmqv5QHRYE_RzSVHH_KoPbaZjskUj2UcE,7895
|
|
5
|
+
praisonai/chainlit_ui.py,sha256=bNR7s509lp0I9JlJNvwCZRUZosC64qdvlFCt8NmFamQ,12216
|
|
6
|
+
praisonai/cli.py,sha256=RAPXxz6FxEG8Ek7XVRrzZ0FE1fwNHRd-prOjVjJjd0k,12180
|
|
7
|
+
praisonai/deploy.py,sha256=K_M5LLw16IJZa2q8pAM0SZ6-8oct33cR-0ccHeufHiU,6031
|
|
8
|
+
praisonai/inbuilt_tools/__init__.py,sha256=mUKnbL6Gram9c9f2m8wJwEzURBLmPEOcHzwySBH89YA,74
|
|
9
|
+
praisonai/inbuilt_tools/autogen_tools.py,sha256=svYkM2N7DVFvbiwgoAS7U_MqTOD8rHf8VD3BaFUV5_Y,14907
|
|
10
|
+
praisonai/inc/__init__.py,sha256=sPDlYBBwdk0VlWzaaM_lG0_LD07lS2HRGvPdxXJFiYg,62
|
|
11
|
+
praisonai/inc/models.py,sha256=1kwP9o56AvN8L38x7eeAzudjAvstN0uWu-woQkgxAe4,5449
|
|
12
|
+
praisonai/public/android-chrome-192x192.png,sha256=ENJEqhDE3XEQViRhKNDezQKRiOiuHOUj5nzRN43fz50,6535
|
|
13
|
+
praisonai/public/android-chrome-512x512.png,sha256=4txEwB0cJkxFVarRdvFGJZR1DtWJ2h-L_2cUEjBXHAc,15244
|
|
14
|
+
praisonai/public/apple-touch-icon.png,sha256=YLlEhlenm24QY_yv-5wb_mxDxJ8H22H_S8Khlvz-zVA,6001
|
|
15
|
+
praisonai/public/fantasy.svg,sha256=4Gs3kIOux-pjGtw6ogI_rv5_viVJxnE5gRwGilsSg0o,1553
|
|
16
|
+
praisonai/public/favicon-16x16.png,sha256=jFiLfRSaEw_kwSxVQQUNV7Auc6oDRvZVKEIiUqC7vYE,429
|
|
17
|
+
praisonai/public/favicon-32x32.png,sha256=cgKvhHroXWNl1Err0TFr8tGepjNzIBpaTinFUT5pbZk,872
|
|
18
|
+
praisonai/public/favicon.ico,sha256=SOcyfycBi_8rd9ff3gmSuZ3M-rkxv1RpHi76cwvmsQ0,15406
|
|
19
|
+
praisonai/public/game.svg,sha256=y2QMaA01m8XzuDjTOBWzupOC3-TpnUl9ah89mIhviUw,2406
|
|
20
|
+
praisonai/public/logo_dark.png,sha256=frHz1zkrnivGssJgk9iy1cabojkVgm8B4MllFwL_CnI,17050
|
|
21
|
+
praisonai/public/logo_light.png,sha256=8cQRti_Ysa30O3_7C3ku2w40LnVUUlUok47H-3ZZHSU,19656
|
|
22
|
+
praisonai/public/movie.svg,sha256=aJ2EQ8vXZusVsF2SeuAVxP4RFJzQ14T26ejrGYdBgzk,1289
|
|
23
|
+
praisonai/public/thriller.svg,sha256=2dYY72EcgbEyTxS4QzjAm37Y4srtPWEW4vCMFki98ZI,3163
|
|
24
|
+
praisonai/test.py,sha256=RZKq3UEFb6AnFFiHER3zBXfNmlteSLBlrTmOvnpnZLo,4092
|
|
25
|
+
praisonai/ui/chat.py,sha256=2T7HJK_fZwYnbB8Z4TCfdb4tK7jelSs80RayTTfmWBo,14354
|
|
26
|
+
praisonai/ui/public/fantasy.svg,sha256=4Gs3kIOux-pjGtw6ogI_rv5_viVJxnE5gRwGilsSg0o,1553
|
|
27
|
+
praisonai/ui/public/game.svg,sha256=y2QMaA01m8XzuDjTOBWzupOC3-TpnUl9ah89mIhviUw,2406
|
|
28
|
+
praisonai/ui/public/logo_dark.png,sha256=frHz1zkrnivGssJgk9iy1cabojkVgm8B4MllFwL_CnI,17050
|
|
29
|
+
praisonai/ui/public/logo_light.png,sha256=8cQRti_Ysa30O3_7C3ku2w40LnVUUlUok47H-3ZZHSU,19656
|
|
30
|
+
praisonai/ui/public/movie.svg,sha256=aJ2EQ8vXZusVsF2SeuAVxP4RFJzQ14T26ejrGYdBgzk,1289
|
|
31
|
+
praisonai/ui/public/thriller.svg,sha256=2dYY72EcgbEyTxS4QzjAm37Y4srtPWEW4vCMFki98ZI,3163
|
|
32
|
+
praisonai/version.py,sha256=ugyuFliEqtAwQmH4sTlc16YXKYbFWDmfyk87fErB8-8,21
|
|
33
|
+
praisonai-0.0.44.dist-info/LICENSE,sha256=kqvFysVlnFxYOu0HxCe2HlmZmJtdmNGOxWRRkT9TsWc,1035
|
|
34
|
+
praisonai-0.0.44.dist-info/METADATA,sha256=gl6SQJ80HI7BqfiNXgBcCGW4lZGNUeQhh67o2HXbkP4,8088
|
|
35
|
+
praisonai-0.0.44.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
|
36
|
+
praisonai-0.0.44.dist-info/entry_points.txt,sha256=Qg41eW3A1-dvdV5tF7LqChfYof8Rihk2rN1fiEE3vnk,53
|
|
37
|
+
praisonai-0.0.44.dist-info/RECORD,,
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
praisonai/__init__.py,sha256=JrgyPlzZfLlozoW7SHZ1nVJ63rLPR3ki2k5ZPywYrnI,175
|
|
2
|
-
praisonai/__main__.py,sha256=MVgsjMThjBexHt4nhd760JCqvP4x0IQcwo8kULOK4FQ,144
|
|
3
|
-
praisonai/agents_generator.py,sha256=8d1WRbubvEkBrW1HZ7_xnGyqgJi0yxmXa3MgTIqef1c,19127
|
|
4
|
-
praisonai/auto.py,sha256=9spTXqj47Hmmqv5QHRYE_RzSVHH_KoPbaZjskUj2UcE,7895
|
|
5
|
-
praisonai/chainlit_ui.py,sha256=bNR7s509lp0I9JlJNvwCZRUZosC64qdvlFCt8NmFamQ,12216
|
|
6
|
-
praisonai/cli.py,sha256=RAPXxz6FxEG8Ek7XVRrzZ0FE1fwNHRd-prOjVjJjd0k,12180
|
|
7
|
-
praisonai/deploy.py,sha256=E-K35liJeVRHhJtEpE9_41IFg0lT4dr1f2amobYxpws,6031
|
|
8
|
-
praisonai/inbuilt_tools/__init__.py,sha256=mUKnbL6Gram9c9f2m8wJwEzURBLmPEOcHzwySBH89YA,74
|
|
9
|
-
praisonai/inbuilt_tools/autogen_tools.py,sha256=svYkM2N7DVFvbiwgoAS7U_MqTOD8rHf8VD3BaFUV5_Y,14907
|
|
10
|
-
praisonai/inc/__init__.py,sha256=sPDlYBBwdk0VlWzaaM_lG0_LD07lS2HRGvPdxXJFiYg,62
|
|
11
|
-
praisonai/inc/models.py,sha256=1kwP9o56AvN8L38x7eeAzudjAvstN0uWu-woQkgxAe4,5449
|
|
12
|
-
praisonai/public/fantasy.svg,sha256=4Gs3kIOux-pjGtw6ogI_rv5_viVJxnE5gRwGilsSg0o,1553
|
|
13
|
-
praisonai/public/game.svg,sha256=y2QMaA01m8XzuDjTOBWzupOC3-TpnUl9ah89mIhviUw,2406
|
|
14
|
-
praisonai/public/movie.svg,sha256=aJ2EQ8vXZusVsF2SeuAVxP4RFJzQ14T26ejrGYdBgzk,1289
|
|
15
|
-
praisonai/public/thriller.svg,sha256=2dYY72EcgbEyTxS4QzjAm37Y4srtPWEW4vCMFki98ZI,3163
|
|
16
|
-
praisonai/test.py,sha256=RZKq3UEFb6AnFFiHER3zBXfNmlteSLBlrTmOvnpnZLo,4092
|
|
17
|
-
praisonai/ui/chat.py,sha256=kyfWIIpVdb6D54SnoMPw3MQp0xk6sppgTzT-Xflz9Tw,10149
|
|
18
|
-
praisonai/version.py,sha256=ugyuFliEqtAwQmH4sTlc16YXKYbFWDmfyk87fErB8-8,21
|
|
19
|
-
praisonai-0.0.43.dist-info/LICENSE,sha256=kqvFysVlnFxYOu0HxCe2HlmZmJtdmNGOxWRRkT9TsWc,1035
|
|
20
|
-
praisonai-0.0.43.dist-info/METADATA,sha256=UW42K2ecDGhjfNlqV5rd_Xh6xYkQqLSwxMZzRgh6zVY,8088
|
|
21
|
-
praisonai-0.0.43.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
|
22
|
-
praisonai-0.0.43.dist-info/entry_points.txt,sha256=Qg41eW3A1-dvdV5tF7LqChfYof8Rihk2rN1fiEE3vnk,53
|
|
23
|
-
praisonai-0.0.43.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|