PraisonAI 2.0.12__tar.gz → 2.0.14__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 (81) hide show
  1. {praisonai-2.0.12 → praisonai-2.0.14}/PKG-INFO +125 -14
  2. {praisonai-2.0.12 → praisonai-2.0.14}/README.md +123 -12
  3. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/agents_generator.py +54 -1
  4. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/deploy.py +1 -1
  5. {praisonai-2.0.12 → praisonai-2.0.14}/pyproject.toml +4 -4
  6. {praisonai-2.0.12 → praisonai-2.0.14}/LICENSE +0 -0
  7. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/__init__.py +0 -0
  8. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/__main__.py +0 -0
  9. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/api/call.py +0 -0
  10. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/auto.py +0 -0
  11. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/chainlit_ui.py +0 -0
  12. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/cli.py +0 -0
  13. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/inbuilt_tools/__init__.py +0 -0
  14. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/inbuilt_tools/autogen_tools.py +0 -0
  15. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/inc/__init__.py +0 -0
  16. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/inc/config.py +0 -0
  17. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/inc/models.py +0 -0
  18. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/public/android-chrome-192x192.png +0 -0
  19. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/public/android-chrome-512x512.png +0 -0
  20. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/public/apple-touch-icon.png +0 -0
  21. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/public/fantasy.svg +0 -0
  22. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/public/favicon-16x16.png +0 -0
  23. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/public/favicon-32x32.png +0 -0
  24. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/public/favicon.ico +0 -0
  25. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/public/game.svg +0 -0
  26. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/public/logo_dark.png +0 -0
  27. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/public/logo_light.png +0 -0
  28. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/public/movie.svg +0 -0
  29. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/public/thriller.svg +0 -0
  30. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/setup/__init__.py +0 -0
  31. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/setup/build.py +0 -0
  32. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/setup/config.yaml +0 -0
  33. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/setup/post_install.py +0 -0
  34. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/setup/setup_conda_env.py +0 -0
  35. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/setup/setup_conda_env.sh +0 -0
  36. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/setup.py +0 -0
  37. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/test.py +0 -0
  38. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/train.py +0 -0
  39. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/README.md +0 -0
  40. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/chat.py +0 -0
  41. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/code.py +0 -0
  42. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/components/aicoder.py +0 -0
  43. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/.chainlit/config.toml +0 -0
  44. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/.chainlit/translations/bn.json +0 -0
  45. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/.chainlit/translations/en-US.json +0 -0
  46. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/.chainlit/translations/gu.json +0 -0
  47. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/.chainlit/translations/he-IL.json +0 -0
  48. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/.chainlit/translations/hi.json +0 -0
  49. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/.chainlit/translations/kn.json +0 -0
  50. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/.chainlit/translations/ml.json +0 -0
  51. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/.chainlit/translations/mr.json +0 -0
  52. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/.chainlit/translations/ta.json +0 -0
  53. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/.chainlit/translations/te.json +0 -0
  54. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/.chainlit/translations/zh-CN.json +0 -0
  55. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/chainlit.md +0 -0
  56. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/translations/bn.json +0 -0
  57. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/translations/en-US.json +0 -0
  58. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/translations/gu.json +0 -0
  59. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/translations/he-IL.json +0 -0
  60. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/translations/hi.json +0 -0
  61. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/translations/kn.json +0 -0
  62. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/translations/ml.json +0 -0
  63. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/translations/mr.json +0 -0
  64. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/translations/ta.json +0 -0
  65. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/translations/te.json +0 -0
  66. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/config/translations/zh-CN.json +0 -0
  67. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/context.py +0 -0
  68. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/db.py +0 -0
  69. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/public/fantasy.svg +0 -0
  70. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/public/game.svg +0 -0
  71. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/public/logo_dark.png +0 -0
  72. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/public/logo_light.png +0 -0
  73. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/public/movie.svg +0 -0
  74. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/public/praison.css +0 -0
  75. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/public/thriller.svg +0 -0
  76. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/realtime.py +0 -0
  77. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/realtimeclient/__init__.py +0 -0
  78. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/realtimeclient/realtimedocs.txt +0 -0
  79. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/realtimeclient/tools.py +0 -0
  80. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/ui/sql_alchemy.py +0 -0
  81. {praisonai-2.0.12 → praisonai-2.0.14}/praisonai/version.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: PraisonAI
3
- Version: 2.0.12
3
+ Version: 2.0.14
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
@@ -46,7 +46,7 @@ Requires-Dist: openai (>=1.54.0) ; extra == "call"
46
46
  Requires-Dist: playwright (>=1.47.0) ; extra == "chat" or extra == "code"
47
47
  Requires-Dist: plotly (>=5.24.0) ; extra == "realtime"
48
48
  Requires-Dist: praisonai-tools (>=0.0.7) ; extra == "crewai" or extra == "autogen"
49
- Requires-Dist: praisonaiagents (>=0.0.4)
49
+ Requires-Dist: praisonaiagents (>=0.0.6)
50
50
  Requires-Dist: pyautogen (>=0.2.19) ; extra == "autogen"
51
51
  Requires-Dist: pydantic (<=2.10.1) ; extra == "chat" or extra == "code"
52
52
  Requires-Dist: pyngrok (>=1.4.0) ; extra == "call"
@@ -85,7 +85,129 @@ Description-Content-Type: text/markdown
85
85
 
86
86
  </div>
87
87
 
88
- Praison AI, leveraging both AutoGen and CrewAI or any other agent framework, represents a low-code, centralised framework designed to simplify the creation and orchestration of multi-agent systems for various LLM applications, emphasizing ease of use, customization, and human-agent interaction.
88
+ 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.
89
+
90
+ ## Key Features
91
+
92
+ - 🤖 Automated AI Agents Creation
93
+ - 🔄 Use CrewAI or AutoGen Framework
94
+ - 💯 100+ LLM Support
95
+ - 💻 Chat with ENTIRE Codebase
96
+ - 🖥️ Interactive UIs
97
+ - 📄 YAML-based Configuration
98
+ - 🛠️ Custom Tool Integration
99
+ - 🔍 Internet Search Capability (using Crawl4AI and Tavily)
100
+ - 👁️ Vision Language Model (VLM) Support
101
+ - 🎙️ Real-time Voice Interaction
102
+
103
+ ## Using No Code
104
+
105
+ ### Auto Mode:
106
+ ```bash
107
+ pip install praisonai
108
+ export OPENAI_API_KEY=xxxxxxxxxxxxxxxxxxxxxx
109
+ praisonai --auto create a movie script about Robots in Mars
110
+ ```
111
+
112
+ ### Initialise Mode:
113
+ ```bash
114
+ pip install praisonai
115
+ export OPENAI_API_KEY=xxxxxxxxxxxxxxxxxxxxxx
116
+ praisonai --init create a movie script about Robots in Mars
117
+ praisonai
118
+ ```
119
+
120
+ ## Using Coding
121
+
122
+ Light weight package dedicated for coding:
123
+ ```bash
124
+ pip install praisonaiagents
125
+ ```
126
+
127
+ ```bash
128
+ export OPENAI_API_KEY=xxxxxxxxxxxxxxxxxxxxxx
129
+ ```
130
+
131
+ Create app.py file and add the code below:
132
+ ```python
133
+ from praisonaiagents import Agent, Task, PraisonAIAgents
134
+
135
+ # 1. Create agents
136
+ researcher = Agent(
137
+ name="Researcher",
138
+ role="Senior Research Analyst",
139
+ goal="Uncover cutting-edge developments in AI and data science",
140
+ backstory="""You are an expert at a technology research group,
141
+ skilled in identifying trends and analyzing complex data.""",
142
+ verbose=True,
143
+ llm="gpt-4o",
144
+ markdown=True
145
+ )
146
+ writer = Agent(
147
+ name="Writer",
148
+ role="Tech Content Strategist",
149
+ goal="Craft compelling content on tech advancements",
150
+ backstory="""You are a content strategist known for
151
+ making complex tech topics interesting and easy to understand.""",
152
+ llm="gpt-4o",
153
+ markdown=True
154
+ )
155
+
156
+ # 2. Define Tasks
157
+ task1 = Task(
158
+ name="research_task",
159
+ description="""Analyze 2024's AI advancements.
160
+ Find major trends, new technologies, and their effects.""",
161
+ expected_output="""A detailed report on 2024 AI advancements""",
162
+ agent=researcher
163
+ )
164
+
165
+ task2 = Task(
166
+ name="writing_task",
167
+ description="""Create a blog post about major AI advancements using the insights you have.
168
+ Make it interesting, clear, and suited for tech enthusiasts.
169
+ It should be at least 4 paragraphs long.""",
170
+ expected_output="A blog post of at least 4 paragraphs",
171
+ agent=writer,
172
+ )
173
+
174
+ agents = PraisonAIAgents(
175
+ agents=[researcher, writer],
176
+ tasks=[task1, task2],
177
+ verbose=False,
178
+ process="hierarchical",
179
+ manager_llm="gpt-4o"
180
+ )
181
+
182
+ result = agents.start()
183
+ ```
184
+
185
+ Run:
186
+ ```bash
187
+ python app.py
188
+ ```
189
+
190
+ ## Ollama Integration
191
+ ```bash
192
+ export OPENAI_BASE_URL=http://localhost:11434/v1
193
+ ```
194
+
195
+ ## Groq Integration
196
+ Replace xxxx with Groq API KEY:
197
+ ```bash
198
+ export OPENAI_API_KEY=xxxxxxxxxxx
199
+ export OPENAI_BASE_URL=https://api.groq.com/openai/v1
200
+ ```
201
+
202
+ ## Logging
203
+ ```bash
204
+ export LOGLEVEL=info
205
+ ```
206
+
207
+ Advanced logging:
208
+ ```bash
209
+ export LOGLEVEL=debug
210
+ ```
89
211
 
90
212
  <div align="center">
91
213
  <picture>
@@ -195,18 +317,7 @@ When installing with `pip install "praisonai[autogen]"`, you get:
195
317
  - Multi-agent conversation capabilities
196
318
  - Code execution environment
197
319
 
198
- ## Key Features
199
320
 
200
- - 🤖 Automated AI Agents Creation
201
- - 🔄 Use CrewAI or AutoGen Framework
202
- - 💯 100+ LLM Support
203
- - 💻 Chat with ENTIRE Codebase
204
- - 🖥️ Interactive UIs
205
- - 📄 YAML-based Configuration
206
- - 🛠️ Custom Tool Integration
207
- - 🔍 Internet Search Capability (using Crawl4AI and Tavily)
208
- - 👁️ Vision Language Model (VLM) Support
209
- - 🎙️ Real-time Voice Interaction
210
321
 
211
322
  ## TL;DR Multi Agents
212
323
 
@@ -20,7 +20,129 @@
20
20
 
21
21
  </div>
22
22
 
23
- Praison AI, leveraging both AutoGen and CrewAI or any other agent framework, represents a low-code, centralised framework designed to simplify the creation and orchestration of multi-agent systems for various LLM applications, emphasizing ease of use, customization, and human-agent interaction.
23
+ 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.
24
+
25
+ ## Key Features
26
+
27
+ - 🤖 Automated AI Agents Creation
28
+ - 🔄 Use CrewAI or AutoGen Framework
29
+ - 💯 100+ LLM Support
30
+ - 💻 Chat with ENTIRE Codebase
31
+ - 🖥️ Interactive UIs
32
+ - 📄 YAML-based Configuration
33
+ - 🛠️ Custom Tool Integration
34
+ - 🔍 Internet Search Capability (using Crawl4AI and Tavily)
35
+ - 👁️ Vision Language Model (VLM) Support
36
+ - 🎙️ Real-time Voice Interaction
37
+
38
+ ## Using No Code
39
+
40
+ ### Auto Mode:
41
+ ```bash
42
+ pip install praisonai
43
+ export OPENAI_API_KEY=xxxxxxxxxxxxxxxxxxxxxx
44
+ praisonai --auto create a movie script about Robots in Mars
45
+ ```
46
+
47
+ ### Initialise Mode:
48
+ ```bash
49
+ pip install praisonai
50
+ export OPENAI_API_KEY=xxxxxxxxxxxxxxxxxxxxxx
51
+ praisonai --init create a movie script about Robots in Mars
52
+ praisonai
53
+ ```
54
+
55
+ ## Using Coding
56
+
57
+ Light weight package dedicated for coding:
58
+ ```bash
59
+ pip install praisonaiagents
60
+ ```
61
+
62
+ ```bash
63
+ export OPENAI_API_KEY=xxxxxxxxxxxxxxxxxxxxxx
64
+ ```
65
+
66
+ Create app.py file and add the code below:
67
+ ```python
68
+ from praisonaiagents import Agent, Task, PraisonAIAgents
69
+
70
+ # 1. Create agents
71
+ researcher = Agent(
72
+ name="Researcher",
73
+ role="Senior Research Analyst",
74
+ goal="Uncover cutting-edge developments in AI and data science",
75
+ backstory="""You are an expert at a technology research group,
76
+ skilled in identifying trends and analyzing complex data.""",
77
+ verbose=True,
78
+ llm="gpt-4o",
79
+ markdown=True
80
+ )
81
+ writer = Agent(
82
+ name="Writer",
83
+ role="Tech Content Strategist",
84
+ goal="Craft compelling content on tech advancements",
85
+ backstory="""You are a content strategist known for
86
+ making complex tech topics interesting and easy to understand.""",
87
+ llm="gpt-4o",
88
+ markdown=True
89
+ )
90
+
91
+ # 2. Define Tasks
92
+ task1 = Task(
93
+ name="research_task",
94
+ description="""Analyze 2024's AI advancements.
95
+ Find major trends, new technologies, and their effects.""",
96
+ expected_output="""A detailed report on 2024 AI advancements""",
97
+ agent=researcher
98
+ )
99
+
100
+ task2 = Task(
101
+ name="writing_task",
102
+ description="""Create a blog post about major AI advancements using the insights you have.
103
+ Make it interesting, clear, and suited for tech enthusiasts.
104
+ It should be at least 4 paragraphs long.""",
105
+ expected_output="A blog post of at least 4 paragraphs",
106
+ agent=writer,
107
+ )
108
+
109
+ agents = PraisonAIAgents(
110
+ agents=[researcher, writer],
111
+ tasks=[task1, task2],
112
+ verbose=False,
113
+ process="hierarchical",
114
+ manager_llm="gpt-4o"
115
+ )
116
+
117
+ result = agents.start()
118
+ ```
119
+
120
+ Run:
121
+ ```bash
122
+ python app.py
123
+ ```
124
+
125
+ ## Ollama Integration
126
+ ```bash
127
+ export OPENAI_BASE_URL=http://localhost:11434/v1
128
+ ```
129
+
130
+ ## Groq Integration
131
+ Replace xxxx with Groq API KEY:
132
+ ```bash
133
+ export OPENAI_API_KEY=xxxxxxxxxxx
134
+ export OPENAI_BASE_URL=https://api.groq.com/openai/v1
135
+ ```
136
+
137
+ ## Logging
138
+ ```bash
139
+ export LOGLEVEL=info
140
+ ```
141
+
142
+ Advanced logging:
143
+ ```bash
144
+ export LOGLEVEL=debug
145
+ ```
24
146
 
25
147
  <div align="center">
26
148
  <picture>
@@ -130,18 +252,7 @@ When installing with `pip install "praisonai[autogen]"`, you get:
130
252
  - Multi-agent conversation capabilities
131
253
  - Code execution environment
132
254
 
133
- ## Key Features
134
255
 
135
- - 🤖 Automated AI Agents Creation
136
- - 🔄 Use CrewAI or AutoGen Framework
137
- - 💯 100+ LLM Support
138
- - 💻 Chat with ENTIRE Codebase
139
- - 🖥️ Interactive UIs
140
- - 📄 YAML-based Configuration
141
- - 🛠️ Custom Tool Integration
142
- - 🔍 Internet Search Capability (using Crawl4AI and Tavily)
143
- - 👁️ Vision Language Model (VLM) Support
144
- - 🎙️ Real-time Voice Interaction
145
256
 
146
257
  ## TL;DR Multi Agents
147
258
 
@@ -200,6 +200,57 @@ class AgentsGenerator:
200
200
  tools_dict[name] = obj
201
201
  return tools_dict
202
202
 
203
+ def load_tools_from_tools_py(self):
204
+ """
205
+ Automatically loads all tools (functions and tool definitions) from tools.py file.
206
+
207
+ Returns:
208
+ dict: A dictionary containing:
209
+ - Function names as keys and function objects as values
210
+ - Tool definition names as keys and tool definition dictionaries as values
211
+
212
+ Note:
213
+ This function looks for:
214
+ 1. Regular functions
215
+ 2. Tool definition dictionaries (containing 'type' and 'function' keys)
216
+ 3. Variables named as tools or ending with '_tool'
217
+ """
218
+ tools_dict = {}
219
+ try:
220
+ # Try to import tools.py from current directory
221
+ spec = importlib.util.spec_from_file_location("tools", "tools.py")
222
+ if spec is None:
223
+ self.logger.warning("tools.py not found in current directory")
224
+ return tools_dict
225
+
226
+ module = importlib.util.module_from_spec(spec)
227
+ spec.loader.exec_module(module)
228
+
229
+ # Get all module attributes
230
+ for name, obj in inspect.getmembers(module):
231
+ # Skip private attributes
232
+ if name.startswith('_'):
233
+ continue
234
+
235
+ # Case 1: Regular functions
236
+ if inspect.isfunction(obj) and obj.__module__ == "tools":
237
+ tools_dict[name] = obj
238
+
239
+ # Case 2: Tool definition dictionaries
240
+ elif isinstance(obj, dict) and obj.get('type') == 'function' and 'function' in obj:
241
+ tools_dict[name] = obj
242
+
243
+ # Case 3: Variables named as tools
244
+ elif (name.endswith('_tool') or name == 'tools') and not inspect.ismodule(obj):
245
+ tools_dict[name] = obj
246
+
247
+ self.logger.debug(f"Loaded {len(tools_dict)} tools from tools.py")
248
+
249
+ except Exception as e:
250
+ self.logger.warning(f"Error loading tools from tools.py: {e}")
251
+
252
+ return tools_dict
253
+
203
254
  def generate_crew_and_kickoff(self):
204
255
  """
205
256
  Generates a crew of agents and initiates tasks based on the provided configuration.
@@ -271,7 +322,7 @@ class AgentsGenerator:
271
322
  elif tools_dir_path.is_dir():
272
323
  tools_dict.update(self.load_tools_from_module_class(tools_dir_path))
273
324
  self.logger.debug("tools folder exists in the root directory")
274
-
325
+
275
326
  framework = self.framework or config.get('framework')
276
327
 
277
328
  if framework == "autogen":
@@ -498,6 +549,8 @@ class AgentsGenerator:
498
549
  tasks = []
499
550
  tasks_dict = {}
500
551
 
552
+ tools_dict = self.load_tools_from_tools_py()
553
+
501
554
  # Create agents from config
502
555
  for role, details in config['roles'].items():
503
556
  role_filled = details['role'].format(topic=topic)
@@ -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.10 gunicorn markdown\n")
59
+ file.write("RUN pip install flask praisonai==2.0.14 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.12"
3
+ version = "2.0.14"
4
4
  description = "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
  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.4",
15
+ "praisonaiagents>=0.0.6",
16
16
  "python-dotenv>=0.19.0",
17
17
  "instructor>=1.3.3",
18
18
  "PyYAML>=6.0",
@@ -78,7 +78,7 @@ autogen = ["pyautogen>=0.2.19", "praisonai-tools>=0.0.7", "crewai"]
78
78
 
79
79
  [tool.poetry]
80
80
  name = "PraisonAI"
81
- version = "2.0.12"
81
+ version = "2.0.14"
82
82
  description = "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."
83
83
  authors = ["Mervin Praison"]
84
84
  license = ""
@@ -96,7 +96,7 @@ python = ">=3.10,<3.13"
96
96
  rich = ">=13.7"
97
97
  markdown = ">=3.5"
98
98
  pyparsing = ">=3.0.0"
99
- praisonaiagents = ">=0.0.4"
99
+ praisonaiagents = ">=0.0.6"
100
100
  python-dotenv = ">=0.19.0"
101
101
  instructor = ">=1.3.3"
102
102
  PyYAML = ">=6.0"
File without changes
File without changes
File without changes
File without changes