PraisonAI 2.1.1__tar.gz → 2.1.5__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.

Files changed (90) hide show
  1. {praisonai-2.1.1 → praisonai-2.1.5}/PKG-INFO +19 -17
  2. {praisonai-2.1.1 → praisonai-2.1.5}/README.md +2 -2
  3. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/deploy.py +1 -1
  4. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/inbuilt_tools/__init__.py +1 -1
  5. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/code.py +4 -2
  6. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/sql_alchemy.py +4 -4
  7. {praisonai-2.1.1 → praisonai-2.1.5}/pyproject.toml +35 -31
  8. {praisonai-2.1.1 → praisonai-2.1.5}/LICENSE +0 -0
  9. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/__init__.py +0 -0
  10. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/__main__.py +0 -0
  11. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/agents_generator.py +0 -0
  12. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/api/call.py +0 -0
  13. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/auto.py +0 -0
  14. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/chainlit_ui.py +0 -0
  15. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/cli.py +0 -0
  16. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/inbuilt_tools/autogen_tools.py +0 -0
  17. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/inc/__init__.py +0 -0
  18. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/inc/config.py +0 -0
  19. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/inc/models.py +0 -0
  20. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/public/android-chrome-192x192.png +0 -0
  21. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/public/android-chrome-512x512.png +0 -0
  22. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/public/apple-touch-icon.png +0 -0
  23. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/public/fantasy.svg +0 -0
  24. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/public/favicon-16x16.png +0 -0
  25. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/public/favicon-32x32.png +0 -0
  26. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/public/favicon.ico +0 -0
  27. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/public/game.svg +0 -0
  28. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/public/logo_dark.png +0 -0
  29. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/public/logo_light.png +0 -0
  30. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/public/movie.svg +0 -0
  31. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/public/praison-ai-agents-architecture-dark.png +0 -0
  32. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/public/praison-ai-agents-architecture.png +0 -0
  33. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/public/thriller.svg +0 -0
  34. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/setup/__init__.py +0 -0
  35. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/setup/build.py +0 -0
  36. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/setup/config.yaml +0 -0
  37. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/setup/post_install.py +0 -0
  38. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/setup/setup_conda_env.py +0 -0
  39. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/setup/setup_conda_env.sh +0 -0
  40. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/setup.py +0 -0
  41. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/test.py +0 -0
  42. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/train.py +0 -0
  43. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/train_vision.py +0 -0
  44. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/README.md +0 -0
  45. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/agents.py +0 -0
  46. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/callbacks.py +0 -0
  47. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/chat.py +0 -0
  48. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/colab.py +0 -0
  49. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/colab_chainlit.py +0 -0
  50. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/components/aicoder.py +0 -0
  51. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/.chainlit/config.toml +0 -0
  52. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/.chainlit/translations/bn.json +0 -0
  53. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/.chainlit/translations/en-US.json +0 -0
  54. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/.chainlit/translations/gu.json +0 -0
  55. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/.chainlit/translations/he-IL.json +0 -0
  56. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/.chainlit/translations/hi.json +0 -0
  57. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/.chainlit/translations/kn.json +0 -0
  58. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/.chainlit/translations/ml.json +0 -0
  59. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/.chainlit/translations/mr.json +0 -0
  60. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/.chainlit/translations/ta.json +0 -0
  61. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/.chainlit/translations/te.json +0 -0
  62. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/.chainlit/translations/zh-CN.json +0 -0
  63. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/chainlit.md +0 -0
  64. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/translations/bn.json +0 -0
  65. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/translations/en-US.json +0 -0
  66. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/translations/gu.json +0 -0
  67. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/translations/he-IL.json +0 -0
  68. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/translations/hi.json +0 -0
  69. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/translations/kn.json +0 -0
  70. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/translations/ml.json +0 -0
  71. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/translations/mr.json +0 -0
  72. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/translations/ta.json +0 -0
  73. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/translations/te.json +0 -0
  74. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/config/translations/zh-CN.json +0 -0
  75. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/context.py +0 -0
  76. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/db.py +0 -0
  77. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/public/fantasy.svg +0 -0
  78. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/public/game.svg +0 -0
  79. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/public/logo_dark.png +0 -0
  80. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/public/logo_light.png +0 -0
  81. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/public/movie.svg +0 -0
  82. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/public/praison.css +0 -0
  83. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/public/thriller.svg +0 -0
  84. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/realtime.py +0 -0
  85. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/realtimeclient/__init__.py +0 -0
  86. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/realtimeclient/realtimedocs.txt +0 -0
  87. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/realtimeclient/tools.py +0 -0
  88. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/ui/tools.md +0 -0
  89. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/upload_vision.py +0 -0
  90. {praisonai-2.1.1 → praisonai-2.1.5}/praisonai/version.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: PraisonAI
3
- Version: 2.1.1
3
+ Version: 2.1.5
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
@@ -28,16 +28,17 @@ Requires-Dist: aiosqlite (>=0.20.0) ; extra == "chat"
28
28
  Requires-Dist: aiosqlite (>=0.20.0) ; extra == "code"
29
29
  Requires-Dist: aiosqlite (>=0.20.0) ; extra == "realtime"
30
30
  Requires-Dist: aiosqlite (>=0.20.0) ; extra == "ui"
31
- Requires-Dist: chainlit (==2.0.3) ; extra == "chat"
32
- Requires-Dist: chainlit (==2.0.3) ; extra == "code"
33
- Requires-Dist: chainlit (==2.0.3) ; extra == "realtime"
34
- Requires-Dist: chainlit (==2.0.3) ; extra == "ui"
35
- Requires-Dist: crawl4ai (==0.3.4) ; extra == "chat"
36
- Requires-Dist: crawl4ai (==0.3.4) ; extra == "code"
37
- Requires-Dist: crawl4ai (==0.3.4) ; extra == "realtime"
31
+ Requires-Dist: chainlit (==2.5.5) ; extra == "chat"
32
+ Requires-Dist: chainlit (==2.5.5) ; extra == "code"
33
+ Requires-Dist: chainlit (==2.5.5) ; extra == "realtime"
34
+ Requires-Dist: chainlit (==2.5.5) ; extra == "ui"
35
+ Requires-Dist: crawl4ai (>=0.6.0) ; extra == "chat"
36
+ Requires-Dist: crawl4ai (>=0.6.0) ; extra == "code"
37
+ Requires-Dist: crawl4ai (>=0.6.0) ; extra == "realtime"
38
38
  Requires-Dist: crewai (>=0.32.0) ; extra == "crewai"
39
39
  Requires-Dist: crewai ; extra == "autogen"
40
40
  Requires-Dist: duckduckgo_search (>=6.3.0) ; extra == "realtime"
41
+ Requires-Dist: fastapi (>=0.115.0) ; extra == "api"
41
42
  Requires-Dist: fastapi (>=0.95.0) ; extra == "call"
42
43
  Requires-Dist: flaml[automl] (>=2.3.1) ; extra == "call"
43
44
  Requires-Dist: flask (>=3.0.0) ; extra == "api"
@@ -47,10 +48,10 @@ Requires-Dist: greenlet (>=3.0.3) ; extra == "code"
47
48
  Requires-Dist: greenlet (>=3.0.3) ; extra == "realtime"
48
49
  Requires-Dist: greenlet (>=3.0.3) ; extra == "ui"
49
50
  Requires-Dist: instructor (>=1.3.3)
50
- Requires-Dist: langchain-anthropic (>=0.1.13) ; extra == "anthropic"
51
- Requires-Dist: langchain-cohere (>=0.1.4) ; extra == "cohere"
52
- Requires-Dist: langchain-google-genai (>=1.0.4) ; extra == "google"
53
- Requires-Dist: langchain-openai (>=0.1.7) ; extra == "openai"
51
+ Requires-Dist: langchain-anthropic (>=0.3.0) ; extra == "anthropic"
52
+ Requires-Dist: langchain-cohere (>=0.3.0,<0.4.0) ; extra == "cohere"
53
+ Requires-Dist: langchain-google-genai (>=2.1.0) ; extra == "google"
54
+ Requires-Dist: langchain-openai (>=0.2.1,<0.3.0) ; extra == "openai"
54
55
  Requires-Dist: litellm (>=1.41.8) ; extra == "chat"
55
56
  Requires-Dist: litellm (>=1.41.8) ; extra == "code"
56
57
  Requires-Dist: litellm (>=1.41.8) ; extra == "realtime"
@@ -60,9 +61,9 @@ Requires-Dist: openai (>=1.54.0) ; extra == "call"
60
61
  Requires-Dist: playwright (>=1.47.0) ; extra == "chat"
61
62
  Requires-Dist: playwright (>=1.47.0) ; extra == "code"
62
63
  Requires-Dist: plotly (>=5.24.0) ; extra == "realtime"
63
- Requires-Dist: praisonai-tools (>=0.0.7) ; extra == "autogen"
64
- Requires-Dist: praisonai-tools (>=0.0.7) ; extra == "crewai"
65
- Requires-Dist: praisonaiagents (>=0.0.71)
64
+ Requires-Dist: praisonai-tools (>=0.0.15) ; extra == "autogen"
65
+ Requires-Dist: praisonai-tools (>=0.0.15) ; extra == "crewai"
66
+ Requires-Dist: praisonaiagents (>=0.0.81)
66
67
  Requires-Dist: pyautogen (>=0.2.19) ; extra == "autogen"
67
68
  Requires-Dist: pydantic (<=2.10.1) ; extra == "chat"
68
69
  Requires-Dist: pydantic (<=2.10.1) ; extra == "code"
@@ -82,6 +83,7 @@ Requires-Dist: tavily-python (==0.5.0) ; extra == "code"
82
83
  Requires-Dist: tavily-python (==0.5.0) ; extra == "realtime"
83
84
  Requires-Dist: twilio (>=7.0.0) ; extra == "call"
84
85
  Requires-Dist: uvicorn (>=0.20.0) ; extra == "call"
86
+ Requires-Dist: uvicorn (>=0.34.0) ; extra == "api"
85
87
  Requires-Dist: websockets (>=12.0) ; extra == "call"
86
88
  Requires-Dist: websockets (>=12.0) ; extra == "realtime"
87
89
  Requires-Dist: yfinance (>=0.2.44) ; extra == "realtime"
@@ -111,7 +113,7 @@ Description-Content-Type: text/markdown
111
113
 
112
114
  </div>
113
115
 
114
- PraisonAI is a production-ready Multi-AI Agents framework with self-reflection, designed to create AI Agents to automate and solve problems ranging from simple tasks to complex challenges. By integrating PraisonAI Agents, AutoGen, and CrewAI into a low-code solution, it streamlines the building and management of multi-agent LLM systems, emphasising simplicity, customisation, and effective human-agent collaboration.
116
+ PraisonAI is a production-ready Multi-AI Agents framework with self-reflection, designed to create AI Agents to automate and solve problems ranging from simple tasks to complex challenges. By integrating PraisonAI Agents, AG2 (Formerly AutoGen), and CrewAI into a low-code solution, it streamlines the building and management of multi-agent LLM systems, emphasising simplicity, customisation, and effective human-agent collaboration.
115
117
 
116
118
  <div align="center">
117
119
  <a href="https://docs.praison.ai">
@@ -639,7 +641,7 @@ uv pip install -r pyproject.toml --extra "crewai,autogen"
639
641
 
640
642
  ## Other Features
641
643
 
642
- - 🔄 Use CrewAI or AutoGen Framework
644
+ - 🔄 Use CrewAI or AG2 (Formerly AutoGen) Framework
643
645
  - 💻 Chat with ENTIRE Codebase
644
646
  - 🎨 Interactive UIs
645
647
  - 📄 YAML-based Configuration
@@ -20,7 +20,7 @@
20
20
 
21
21
  </div>
22
22
 
23
- PraisonAI is a production-ready Multi-AI Agents framework with self-reflection, designed to create AI Agents to automate and solve problems ranging from simple tasks to complex challenges. By integrating PraisonAI Agents, AutoGen, and CrewAI into a low-code solution, it streamlines the building and management of multi-agent LLM systems, emphasising simplicity, customisation, and effective human-agent collaboration.
23
+ PraisonAI is a production-ready Multi-AI Agents framework with self-reflection, designed to create AI Agents to automate and solve problems ranging from simple tasks to complex challenges. By integrating PraisonAI Agents, AG2 (Formerly AutoGen), and CrewAI into a low-code solution, it streamlines the building and management of multi-agent LLM systems, emphasising simplicity, customisation, and effective human-agent collaboration.
24
24
 
25
25
  <div align="center">
26
26
  <a href="https://docs.praison.ai">
@@ -548,7 +548,7 @@ uv pip install -r pyproject.toml --extra "crewai,autogen"
548
548
 
549
549
  ## Other Features
550
550
 
551
- - 🔄 Use CrewAI or AutoGen Framework
551
+ - 🔄 Use CrewAI or AG2 (Formerly AutoGen) Framework
552
552
  - 💻 Chat with ENTIRE Codebase
553
553
  - 🎨 Interactive UIs
554
554
  - 📄 YAML-based Configuration
@@ -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.1.1 gunicorn markdown\n")
59
+ file.write("RUN pip install flask praisonai==2.1.5 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,4 +1,4 @@
1
- # Only try to import autogen_tools if either CrewAI or AutoGen is available
1
+ # Only try to import autogen_tools if either CrewAI or AG2 is available
2
2
  CREWAI_AVAILABLE = False
3
3
  AUTOGEN_AVAILABLE = False
4
4
  PRAISONAI_TOOLS_AVAILABLE = False
@@ -100,7 +100,8 @@ async def start():
100
100
  )
101
101
  cl.user_session.set("settings", settings)
102
102
  await settings.send()
103
- gatherer = ContextGatherer()
103
+ repo_path_to_use = os.environ.get("PRAISONAI_CODE_REPO_PATH", ".")
104
+ gatherer = ContextGatherer(directory=repo_path_to_use)
104
105
  context, token_count, context_tree = gatherer.run()
105
106
  msg = cl.Message(content="""Token Count: {token_count},
106
107
  Files include: \n```bash\n{context_tree}\n"""
@@ -200,7 +201,8 @@ tools = [{
200
201
  async def main(message: cl.Message):
201
202
  model_name = load_setting("model_name") or os.getenv("MODEL_NAME") or "gpt-4o-mini"
202
203
  message_history = cl.user_session.get("message_history", [])
203
- gatherer = ContextGatherer()
204
+ repo_path_to_use = os.environ.get("PRAISONAI_CODE_REPO_PATH", ".")
205
+ gatherer = ContextGatherer(directory=repo_path_to_use)
204
206
  context, token_count, context_tree = gatherer.run()
205
207
  now = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
206
208
 
@@ -70,7 +70,7 @@ class SQLAlchemyDataLayer(BaseDataLayer):
70
70
  logger.info("SQLAlchemyDataLayer storage client initialized")
71
71
  else:
72
72
  self.storage_provider = None
73
- logger.warn(
73
+ logger.warning(
74
74
  "SQLAlchemyDataLayer storage client is not initialized and elements will not be persisted!"
75
75
  )
76
76
 
@@ -98,11 +98,11 @@ class SQLAlchemyDataLayer(BaseDataLayer):
98
98
  return result.rowcount
99
99
  except SQLAlchemyError as e:
100
100
  await session.rollback()
101
- logger.warn(f"An error occurred: {e}")
101
+ logger.warning(f"An error occurred: {e}")
102
102
  return None
103
103
  except Exception as e:
104
104
  await session.rollback()
105
- logger.warn(f"An unexpected error occurred: {e}")
105
+ logger.warning(f"An unexpected error occurred: {e}")
106
106
  return None
107
107
 
108
108
  async def get_current_timestamp(self) -> str:
@@ -456,7 +456,7 @@ class SQLAlchemyDataLayer(BaseDataLayer):
456
456
  logger.info(f"SQLAlchemy: create_element, element_id = {element.id}")
457
457
 
458
458
  if not self.storage_provider:
459
- logger.warn("SQLAlchemy: create_element error. No storage client!")
459
+ logger.warning("SQLAlchemy: create_element error. No storage client!")
460
460
  return
461
461
  if not element.for_id:
462
462
  return
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "PraisonAI"
3
- version = "2.1.1"
3
+ version = "2.1.5"
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 = ""
@@ -12,7 +12,7 @@ dependencies = [
12
12
  "rich>=13.7",
13
13
  "markdown>=3.5",
14
14
  "pyparsing>=3.0.0",
15
- "praisonaiagents>=0.0.71",
15
+ "praisonaiagents>=0.0.81",
16
16
  "python-dotenv>=0.19.0",
17
17
  "instructor>=1.3.3",
18
18
  "PyYAML>=6.0",
@@ -21,49 +21,53 @@ dependencies = [
21
21
 
22
22
  [project.optional-dependencies]
23
23
  ui = [
24
- "chainlit==2.0.3",
24
+ "chainlit==2.5.5",
25
25
  "sqlalchemy>=2.0.36",
26
26
  "aiosqlite>=0.20.0",
27
27
  "greenlet>=3.0.3",
28
28
  "pydantic<=2.10.1"
29
29
  ]
30
30
  gradio = ["gradio>=4.26.0"]
31
- api = ["flask>=3.0.0"]
31
+ api = [
32
+ "flask>=3.0.0",
33
+ "fastapi>=0.115.0",
34
+ "uvicorn>=0.34.0"
35
+ ]
32
36
  agentops = ["agentops>=0.3.12"]
33
- google = ["langchain-google-genai>=1.0.4"]
34
- openai = ["langchain-openai>=0.1.7"]
35
- anthropic = ["langchain-anthropic>=0.1.13"]
36
- cohere = ["langchain-cohere>=0.1.4"]
37
+ google = ["langchain-google-genai>=2.1.0"]
38
+ openai = ["langchain-openai>=0.2.1,<0.3.0"]
39
+ anthropic = ["langchain-anthropic>=0.3.0"]
40
+ cohere = ["langchain-cohere>=0.3.0,<0.4.0"]
37
41
  chat = [
38
- "chainlit==2.0.3",
42
+ "chainlit==2.5.5",
39
43
  "litellm>=1.41.8",
40
44
  "aiosqlite>=0.20.0",
41
45
  "greenlet>=3.0.3",
42
46
  "tavily-python==0.5.0",
43
- "crawl4ai==0.3.4",
47
+ "crawl4ai>=0.6.0",
44
48
  "sqlalchemy>=2.0.36",
45
49
  "playwright>=1.47.0",
46
50
  "rich",
47
51
  "pydantic<=2.10.1"
48
52
  ]
49
53
  code = [
50
- "chainlit==2.0.3",
54
+ "chainlit==2.5.5",
51
55
  "litellm>=1.41.8",
52
56
  "aiosqlite>=0.20.0",
53
57
  "greenlet>=3.0.3",
54
58
  "tavily-python==0.5.0",
55
- "crawl4ai==0.3.4",
59
+ "crawl4ai>=0.6.0",
56
60
  "sqlalchemy>=2.0.36",
57
61
  "playwright>=1.47.0",
58
62
  "pydantic<=2.10.1"
59
63
  ]
60
64
  realtime = [
61
- "chainlit==2.0.3",
65
+ "chainlit==2.5.5",
62
66
  "litellm>=1.41.8",
63
67
  "aiosqlite>=0.20.0",
64
68
  "greenlet>=3.0.3",
65
69
  "tavily-python==0.5.0",
66
- "crawl4ai==0.3.4",
70
+ "crawl4ai>=0.6.0",
67
71
  "websockets>=12.0",
68
72
  "plotly>=5.24.0",
69
73
  "yfinance>=0.2.44",
@@ -80,13 +84,13 @@ call = [
80
84
  "rich",
81
85
  "openai>=1.54.0",
82
86
  ]
83
- crewai = ["crewai>=0.32.0", "praisonai-tools>=0.0.7"]
84
- autogen = ["pyautogen>=0.2.19", "praisonai-tools>=0.0.7", "crewai"]
87
+ crewai = ["crewai>=0.32.0", "praisonai-tools>=0.0.15"]
88
+ autogen = ["pyautogen>=0.2.19", "praisonai-tools>=0.0.15", "crewai"]
85
89
 
86
90
  [tool.poetry]
87
91
  name = "PraisonAI"
88
- version = "2.1.1"
89
- 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 humanagent collaboration."
92
+ version = "2.1.5"
93
+ 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."
90
94
  authors = ["Mervin Praison"]
91
95
  license = ""
92
96
  readme = "README.md"
@@ -103,27 +107,27 @@ python = ">=3.10,<3.13"
103
107
  rich = ">=13.7"
104
108
  markdown = ">=3.5"
105
109
  pyparsing = ">=3.0.0"
106
- praisonaiagents = ">=0.0.71"
110
+ praisonaiagents = ">=0.0.81"
107
111
  python-dotenv = ">=0.19.0"
108
112
  instructor = ">=1.3.3"
109
113
  PyYAML = ">=6.0"
110
114
  mcp = "==1.6.0"
111
115
  pyautogen = {version = ">=0.2.19", optional = true}
112
116
  crewai = {version = ">=0.32.0", optional = true}
113
- praisonai-tools = {version = ">=0.0.7", optional = true}
114
- chainlit = {version = "==2.0.3", optional = true}
117
+ praisonai-tools = {version = ">=0.0.15", optional = true}
118
+ chainlit = {version = "==2.5.5", optional = true}
115
119
  gradio = {version = ">=4.26.0", optional = true}
116
120
  flask = {version = ">=3.0.0", optional = true}
117
121
  agentops = {version = ">=0.3.12", optional = true}
118
- langchain-google-genai = {version = ">=1.0.4", optional = true}
119
- langchain-anthropic = {version = ">=0.1.13", optional = true}
120
- langchain-openai = {version = ">=0.1.7", optional = true}
121
- langchain-cohere = {version = ">=0.1.4", optional = true}
122
+ langchain-google-genai = {version = ">=2.1.0", optional = true}
123
+ langchain-anthropic = {version = ">=0.3.0", optional = true}
124
+ langchain-openai = {version = ">=0.2.1,<0.3.0", optional = true}
125
+ langchain-cohere = {version = ">=0.3.0,<0.4.0", optional = true}
122
126
  litellm = {version = ">=1.41.8", optional = true}
123
127
  aiosqlite= {version = ">=0.20.0", optional = true}
124
128
  greenlet = {version = ">=3.0.3", optional = true}
125
129
  tavily-python = {version = "==0.5.0", optional=true}
126
- crawl4ai = {version = "==0.3.4", optional = true}
130
+ crawl4ai = {version = ">=0.6.0", optional = true}
127
131
  websockets = {version = ">=12.0", optional = true}
128
132
  plotly = {version = ">=5.24.0", optional = true}
129
133
  yfinance = {version = ">=0.2.44", optional = true}
@@ -175,14 +179,14 @@ mkdocstrings-python = "*"
175
179
  pdoc3 = "*"
176
180
  xmlrunner = "*"
177
181
  unittest2 = "*"
178
- chainlit = "==2.0.3"
182
+ chainlit = "==2.5.5"
179
183
  gradio = ">=4.26.0"
180
184
  flask = ">=3.0.0"
181
185
  agentops = ">=0.3.12"
182
- langchain-google-genai = ">=1.0.4"
183
- langchain-anthropic = ">=0.1.13"
184
- langchain-openai = ">=0.1.7"
185
- langchain-cohere = ">=0.1.4"
186
+ langchain-google-genai = ">=2.1.0"
187
+ langchain-anthropic = ">=0.3.0"
188
+ langchain-openai = ">=0.2.1,<0.3.0"
189
+ langchain-cohere = ">=0.3.0,<0.4.0"
186
190
  litellm = ">=1.41.8"
187
191
  aiosqlite = ">=0.20.0"
188
192
  greenlet = ">=3.0.3"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes