PraisonAI 2.0.61__tar.gz → 2.0.63__tar.gz
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-2.0.61 → praisonai-2.0.63}/PKG-INFO +1 -1
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/cli.py +87 -4
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/deploy.py +1 -1
- {praisonai-2.0.61 → praisonai-2.0.63}/pyproject.toml +2 -2
- {praisonai-2.0.61 → praisonai-2.0.63}/LICENSE +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/README.md +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/__init__.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/__main__.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/agents_generator.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/api/call.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/auto.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/chainlit_ui.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/inbuilt_tools/__init__.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/inbuilt_tools/autogen_tools.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/inc/__init__.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/inc/config.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/inc/models.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/public/android-chrome-192x192.png +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/public/android-chrome-512x512.png +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/public/apple-touch-icon.png +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/public/fantasy.svg +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/public/favicon-16x16.png +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/public/favicon-32x32.png +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/public/favicon.ico +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/public/game.svg +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/public/logo_dark.png +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/public/logo_light.png +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/public/movie.svg +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/public/praison-ai-agents-architecture-dark.png +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/public/praison-ai-agents-architecture.png +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/public/thriller.svg +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/setup/__init__.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/setup/build.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/setup/config.yaml +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/setup/post_install.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/setup/setup_conda_env.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/setup/setup_conda_env.sh +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/setup.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/test.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/train.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/README.md +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/agents.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/callbacks.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/chat.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/code.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/colab.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/colab_chainlit.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/components/aicoder.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/.chainlit/config.toml +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/.chainlit/translations/bn.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/.chainlit/translations/en-US.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/.chainlit/translations/gu.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/.chainlit/translations/he-IL.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/.chainlit/translations/hi.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/.chainlit/translations/kn.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/.chainlit/translations/ml.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/.chainlit/translations/mr.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/.chainlit/translations/ta.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/.chainlit/translations/te.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/.chainlit/translations/zh-CN.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/chainlit.md +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/translations/bn.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/translations/en-US.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/translations/gu.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/translations/he-IL.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/translations/hi.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/translations/kn.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/translations/ml.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/translations/mr.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/translations/ta.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/translations/te.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/config/translations/zh-CN.json +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/context.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/db.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/public/fantasy.svg +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/public/game.svg +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/public/logo_dark.png +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/public/logo_light.png +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/public/movie.svg +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/public/praison.css +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/public/thriller.svg +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/realtime.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/realtimeclient/__init__.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/realtimeclient/realtimedocs.txt +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/realtimeclient/tools.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/sql_alchemy.py +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/ui/tools.md +0 -0
- {praisonai-2.0.61 → praisonai-2.0.63}/praisonai/version.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: PraisonAI
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.63
|
|
4
4
|
Summary: PraisonAI is an AI Agents Framework with Self Reflection. PraisonAI application combines PraisonAI Agents, AutoGen, and CrewAI into a low-code solution for building and managing multi-agent LLM systems, focusing on simplicity, customisation, and efficient human-agent collaboration.
|
|
5
5
|
Author: Mervin Praison
|
|
6
6
|
Requires-Python: >=3.10,<3.13
|
|
@@ -140,6 +140,8 @@ class PraisonAI:
|
|
|
140
140
|
provided arguments.
|
|
141
141
|
"""
|
|
142
142
|
args = self.parse_args()
|
|
143
|
+
# Store args for use in handle_direct_prompt
|
|
144
|
+
self.args = args
|
|
143
145
|
invocation_cmd = "praisonai"
|
|
144
146
|
version_string = f"PraisonAI version {__version__}"
|
|
145
147
|
|
|
@@ -148,8 +150,16 @@ class PraisonAI:
|
|
|
148
150
|
if args.command:
|
|
149
151
|
if args.command.startswith("tests.test"): # Argument used for testing purposes
|
|
150
152
|
print("test")
|
|
153
|
+
return "test"
|
|
151
154
|
else:
|
|
152
155
|
self.agent_file = args.command
|
|
156
|
+
elif hasattr(args, 'direct_prompt') and args.direct_prompt:
|
|
157
|
+
result = self.handle_direct_prompt(args.direct_prompt)
|
|
158
|
+
print(result)
|
|
159
|
+
return result
|
|
160
|
+
else:
|
|
161
|
+
# Default to agents.yaml if no command provided
|
|
162
|
+
self.agent_file = "agents.yaml"
|
|
153
163
|
|
|
154
164
|
if args.deploy:
|
|
155
165
|
from .deploy import CloudDeployer
|
|
@@ -285,14 +295,18 @@ class PraisonAI:
|
|
|
285
295
|
"""
|
|
286
296
|
Parse the command-line arguments for the PraisonAI CLI.
|
|
287
297
|
"""
|
|
298
|
+
# Define special commands
|
|
299
|
+
special_commands = ['chat', 'code', 'call', 'realtime', 'train', 'ui']
|
|
300
|
+
|
|
288
301
|
parser = argparse.ArgumentParser(prog="praisonai", description="praisonAI command-line interface")
|
|
289
302
|
parser.add_argument("--framework", choices=["crewai", "autogen", "praisonai"], help="Specify the framework")
|
|
290
303
|
parser.add_argument("--ui", choices=["chainlit", "gradio"], help="Specify the UI framework (gradio or chainlit).")
|
|
291
304
|
parser.add_argument("--auto", nargs=argparse.REMAINDER, help="Enable auto mode and pass arguments for it")
|
|
292
305
|
parser.add_argument("--init", nargs=argparse.REMAINDER, help="Initialize agents with optional topic")
|
|
293
|
-
parser.add_argument("command", nargs="?", help="Command to run")
|
|
306
|
+
parser.add_argument("command", nargs="?", help="Command to run or direct prompt")
|
|
294
307
|
parser.add_argument("--deploy", action="store_true", help="Deploy the application")
|
|
295
308
|
parser.add_argument("--model", type=str, help="Model name")
|
|
309
|
+
parser.add_argument("--llm", type=str, help="LLM model to use for direct prompts")
|
|
296
310
|
parser.add_argument("--hf", type=str, help="Hugging Face model name")
|
|
297
311
|
parser.add_argument("--ollama", type=str, help="Ollama model name")
|
|
298
312
|
parser.add_argument("--dataset", type=str, help="Dataset name for training", default="yahma/alpaca-cleaned")
|
|
@@ -301,6 +315,7 @@ class PraisonAI:
|
|
|
301
315
|
parser.add_argument("--public", action="store_true", help="Use ngrok to expose the server publicly (only with --call)")
|
|
302
316
|
args, unknown_args = parser.parse_known_args()
|
|
303
317
|
|
|
318
|
+
# Handle special cases first
|
|
304
319
|
if unknown_args and unknown_args[0] == '-b' and unknown_args[1] == 'api:app':
|
|
305
320
|
args.command = 'agents.yaml'
|
|
306
321
|
if args.command == 'api:app' or args.command == '/app/api:app':
|
|
@@ -331,9 +346,7 @@ class PraisonAI:
|
|
|
331
346
|
call_module.main(call_args)
|
|
332
347
|
sys.exit(0)
|
|
333
348
|
|
|
334
|
-
# Handle special commands
|
|
335
|
-
special_commands = ['chat', 'code', 'call', 'realtime', 'train', 'ui']
|
|
336
|
-
|
|
349
|
+
# Handle special commands
|
|
337
350
|
if args.command in special_commands:
|
|
338
351
|
if args.command == 'chat':
|
|
339
352
|
if not CHAINLIT_AVAILABLE:
|
|
@@ -402,8 +415,78 @@ class PraisonAI:
|
|
|
402
415
|
print("pip install praisonaiagents # For PraisonAIAgents\n")
|
|
403
416
|
sys.exit(1)
|
|
404
417
|
|
|
418
|
+
# Handle direct prompt if command is not a special command or file
|
|
419
|
+
if args.command and not args.command.endswith('.yaml') and args.command not in special_commands:
|
|
420
|
+
args.direct_prompt = args.command
|
|
421
|
+
args.command = None
|
|
422
|
+
|
|
405
423
|
return args
|
|
406
424
|
|
|
425
|
+
def handle_direct_prompt(self, prompt):
|
|
426
|
+
"""
|
|
427
|
+
Handle direct prompt by creating a single agent and running it.
|
|
428
|
+
"""
|
|
429
|
+
if PRAISONAI_AVAILABLE:
|
|
430
|
+
agent_config = {
|
|
431
|
+
"name": "DirectAgent",
|
|
432
|
+
"role": "Assistant",
|
|
433
|
+
"goal": "Complete the given task",
|
|
434
|
+
"backstory": "You are a helpful AI assistant"
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
# Add llm if specified
|
|
438
|
+
if hasattr(self, 'args') and self.args.llm:
|
|
439
|
+
agent_config["llm"] = self.args.llm
|
|
440
|
+
|
|
441
|
+
agent = PraisonAgent(**agent_config)
|
|
442
|
+
result = agent.start(prompt)
|
|
443
|
+
return ""
|
|
444
|
+
elif CREWAI_AVAILABLE:
|
|
445
|
+
agent_config = {
|
|
446
|
+
"name": "DirectAgent",
|
|
447
|
+
"role": "Assistant",
|
|
448
|
+
"goal": "Complete the given task",
|
|
449
|
+
"backstory": "You are a helpful AI assistant"
|
|
450
|
+
}
|
|
451
|
+
|
|
452
|
+
# Add llm if specified
|
|
453
|
+
if hasattr(self, 'args') and self.args.llm:
|
|
454
|
+
agent_config["llm"] = self.args.llm
|
|
455
|
+
|
|
456
|
+
agent = Agent(**agent_config)
|
|
457
|
+
task = Task(
|
|
458
|
+
description=prompt,
|
|
459
|
+
agent=agent
|
|
460
|
+
)
|
|
461
|
+
crew = Crew(
|
|
462
|
+
agents=[agent],
|
|
463
|
+
tasks=[task]
|
|
464
|
+
)
|
|
465
|
+
return crew.kickoff()
|
|
466
|
+
elif AUTOGEN_AVAILABLE:
|
|
467
|
+
config_list = self.config_list
|
|
468
|
+
# Add llm if specified
|
|
469
|
+
if hasattr(self, 'args') and self.args.llm:
|
|
470
|
+
config_list[0]['model'] = self.args.llm
|
|
471
|
+
|
|
472
|
+
assistant = autogen.AssistantAgent(
|
|
473
|
+
name="DirectAgent",
|
|
474
|
+
llm_config={"config_list": config_list}
|
|
475
|
+
)
|
|
476
|
+
user_proxy = autogen.UserProxyAgent(
|
|
477
|
+
name="UserProxy",
|
|
478
|
+
code_execution_config={"work_dir": "coding"}
|
|
479
|
+
)
|
|
480
|
+
user_proxy.initiate_chat(assistant, message=prompt)
|
|
481
|
+
return "Task completed"
|
|
482
|
+
else:
|
|
483
|
+
print("[red]ERROR: No framework is installed. Please install at least one framework:[/red]")
|
|
484
|
+
print("\npip install \"praisonai\\[crewai]\" # For CrewAI")
|
|
485
|
+
print("pip install \"praisonai\\[autogen]\" # For AutoGen")
|
|
486
|
+
print("pip install \"praisonai\\[crewai,autogen]\" # For both frameworks\n")
|
|
487
|
+
print("pip install praisonaiagents # For PraisonAIAgents\n")
|
|
488
|
+
sys.exit(1)
|
|
489
|
+
|
|
407
490
|
def create_chainlit_chat_interface(self):
|
|
408
491
|
"""
|
|
409
492
|
Create a Chainlit interface for the chat application.
|
|
@@ -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==2.0.
|
|
59
|
+
file.write("RUN pip install flask praisonai==2.0.63 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
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "PraisonAI"
|
|
3
|
-
version = "2.0.
|
|
3
|
+
version = "2.0.63"
|
|
4
4
|
description = "PraisonAI is an AI Agents Framework with Self Reflection. PraisonAI application combines PraisonAI Agents, AutoGen, and CrewAI into a low-code solution for building and managing multi-agent LLM systems, focusing on simplicity, customisation, and efficient human-agent collaboration."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
license = ""
|
|
@@ -84,7 +84,7 @@ autogen = ["pyautogen>=0.2.19", "praisonai-tools>=0.0.7", "crewai"]
|
|
|
84
84
|
|
|
85
85
|
[tool.poetry]
|
|
86
86
|
name = "PraisonAI"
|
|
87
|
-
version = "2.0.
|
|
87
|
+
version = "2.0.63"
|
|
88
88
|
description = "PraisonAI is an AI Agents Framework with Self Reflection. PraisonAI application combines PraisonAI Agents, AutoGen, and CrewAI into a low-code solution for building and managing multi-agent LLM systems, focusing on simplicity, customisation, and efficient human–agent collaboration."
|
|
89
89
|
authors = ["Mervin Praison"]
|
|
90
90
|
license = ""
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{praisonai-2.0.61 → praisonai-2.0.63}/praisonai/public/praison-ai-agents-architecture-dark.png
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|