PraisonAI 2.0.53__cp311-cp311-macosx_15_0_arm64.whl → 2.2.16__cp311-cp311-macosx_15_0_arm64.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/README.md +5 -0
- praisonai/agents_generator.py +23 -17
- praisonai/auto.py +1 -1
- praisonai/cli.py +144 -15
- praisonai/deploy.py +1 -1
- praisonai/inbuilt_tools/__init__.py +1 -1
- praisonai/setup/setup_conda_env.sh +55 -22
- praisonai/train.py +442 -156
- praisonai/train_vision.py +306 -0
- praisonai/ui/code.py +4 -2
- praisonai/ui/sql_alchemy.py +4 -4
- praisonai/upload_vision.py +140 -0
- praisonai-2.2.16.dist-info/METADATA +103 -0
- {praisonai-2.0.53.dist-info → praisonai-2.2.16.dist-info}/RECORD +16 -26
- {praisonai-2.0.53.dist-info → praisonai-2.2.16.dist-info}/WHEEL +1 -1
- praisonai/ui/config/.chainlit/config.toml +0 -120
- praisonai/ui/config/.chainlit/translations/bn.json +0 -231
- praisonai/ui/config/.chainlit/translations/en-US.json +0 -229
- praisonai/ui/config/.chainlit/translations/gu.json +0 -231
- praisonai/ui/config/.chainlit/translations/he-IL.json +0 -231
- praisonai/ui/config/.chainlit/translations/hi.json +0 -231
- praisonai/ui/config/.chainlit/translations/kn.json +0 -231
- praisonai/ui/config/.chainlit/translations/ml.json +0 -231
- praisonai/ui/config/.chainlit/translations/mr.json +0 -231
- praisonai/ui/config/.chainlit/translations/ta.json +0 -231
- praisonai/ui/config/.chainlit/translations/te.json +0 -231
- praisonai/ui/config/.chainlit/translations/zh-CN.json +0 -229
- praisonai-2.0.53.dist-info/LICENSE +0 -20
- praisonai-2.0.53.dist-info/METADATA +0 -673
- {praisonai-2.0.53.dist-info → praisonai-2.2.16.dist-info}/entry_points.txt +0 -0
|
@@ -1,673 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.3
|
|
2
|
-
Name: PraisonAI
|
|
3
|
-
Version: 2.0.53
|
|
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
|
-
Author: Mervin Praison
|
|
6
|
-
Requires-Python: >=3.10,<3.13
|
|
7
|
-
Classifier: Programming Language :: Python :: 3
|
|
8
|
-
Classifier: Programming Language :: Python :: 3.10
|
|
9
|
-
Classifier: Programming Language :: Python :: 3.11
|
|
10
|
-
Classifier: Programming Language :: Python :: 3.12
|
|
11
|
-
Provides-Extra: agentops
|
|
12
|
-
Provides-Extra: anthropic
|
|
13
|
-
Provides-Extra: api
|
|
14
|
-
Provides-Extra: autogen
|
|
15
|
-
Provides-Extra: call
|
|
16
|
-
Provides-Extra: chat
|
|
17
|
-
Provides-Extra: code
|
|
18
|
-
Provides-Extra: cohere
|
|
19
|
-
Provides-Extra: crewai
|
|
20
|
-
Provides-Extra: google
|
|
21
|
-
Provides-Extra: gradio
|
|
22
|
-
Provides-Extra: openai
|
|
23
|
-
Provides-Extra: realtime
|
|
24
|
-
Provides-Extra: ui
|
|
25
|
-
Requires-Dist: PyYAML (>=6.0)
|
|
26
|
-
Requires-Dist: agentops (>=0.3.12) ; extra == "agentops"
|
|
27
|
-
Requires-Dist: aiosqlite (>=0.20.0) ; extra == "chat"
|
|
28
|
-
Requires-Dist: aiosqlite (>=0.20.0) ; extra == "code"
|
|
29
|
-
Requires-Dist: aiosqlite (>=0.20.0) ; extra == "realtime"
|
|
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"
|
|
38
|
-
Requires-Dist: crewai (>=0.32.0) ; extra == "crewai"
|
|
39
|
-
Requires-Dist: crewai ; extra == "autogen"
|
|
40
|
-
Requires-Dist: duckduckgo_search (>=6.3.0) ; extra == "realtime"
|
|
41
|
-
Requires-Dist: fastapi (>=0.95.0) ; extra == "call"
|
|
42
|
-
Requires-Dist: flaml[automl] (>=2.3.1) ; extra == "call"
|
|
43
|
-
Requires-Dist: flask (>=3.0.0) ; extra == "api"
|
|
44
|
-
Requires-Dist: gradio (>=4.26.0) ; extra == "gradio"
|
|
45
|
-
Requires-Dist: greenlet (>=3.0.3) ; extra == "chat"
|
|
46
|
-
Requires-Dist: greenlet (>=3.0.3) ; extra == "code"
|
|
47
|
-
Requires-Dist: greenlet (>=3.0.3) ; extra == "realtime"
|
|
48
|
-
Requires-Dist: greenlet (>=3.0.3) ; extra == "ui"
|
|
49
|
-
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"
|
|
54
|
-
Requires-Dist: litellm (>=1.41.8) ; extra == "chat"
|
|
55
|
-
Requires-Dist: litellm (>=1.41.8) ; extra == "code"
|
|
56
|
-
Requires-Dist: litellm (>=1.41.8) ; extra == "realtime"
|
|
57
|
-
Requires-Dist: markdown (>=3.5)
|
|
58
|
-
Requires-Dist: openai (>=1.54.0) ; extra == "call"
|
|
59
|
-
Requires-Dist: playwright (>=1.47.0) ; extra == "chat"
|
|
60
|
-
Requires-Dist: playwright (>=1.47.0) ; extra == "code"
|
|
61
|
-
Requires-Dist: plotly (>=5.24.0) ; extra == "realtime"
|
|
62
|
-
Requires-Dist: praisonai-tools (>=0.0.7) ; extra == "autogen"
|
|
63
|
-
Requires-Dist: praisonai-tools (>=0.0.7) ; extra == "crewai"
|
|
64
|
-
Requires-Dist: praisonaiagents (>=0.0.44)
|
|
65
|
-
Requires-Dist: pyautogen (>=0.2.19) ; extra == "autogen"
|
|
66
|
-
Requires-Dist: pydantic (<=2.10.1) ; extra == "chat"
|
|
67
|
-
Requires-Dist: pydantic (<=2.10.1) ; extra == "code"
|
|
68
|
-
Requires-Dist: pydantic (<=2.10.1) ; extra == "ui"
|
|
69
|
-
Requires-Dist: pyngrok (>=1.4.0) ; extra == "call"
|
|
70
|
-
Requires-Dist: pyparsing (>=3.0.0)
|
|
71
|
-
Requires-Dist: python-dotenv (>=0.19.0)
|
|
72
|
-
Requires-Dist: rich (>=13.7)
|
|
73
|
-
Requires-Dist: rich ; extra == "call"
|
|
74
|
-
Requires-Dist: rich ; extra == "chat"
|
|
75
|
-
Requires-Dist: sqlalchemy (>=2.0.36) ; extra == "chat"
|
|
76
|
-
Requires-Dist: sqlalchemy (>=2.0.36) ; extra == "code"
|
|
77
|
-
Requires-Dist: sqlalchemy (>=2.0.36) ; extra == "realtime"
|
|
78
|
-
Requires-Dist: sqlalchemy (>=2.0.36) ; extra == "ui"
|
|
79
|
-
Requires-Dist: tavily-python (==0.5.0) ; extra == "chat"
|
|
80
|
-
Requires-Dist: tavily-python (==0.5.0) ; extra == "code"
|
|
81
|
-
Requires-Dist: tavily-python (==0.5.0) ; extra == "realtime"
|
|
82
|
-
Requires-Dist: twilio (>=7.0.0) ; extra == "call"
|
|
83
|
-
Requires-Dist: uvicorn (>=0.20.0) ; extra == "call"
|
|
84
|
-
Requires-Dist: websockets (>=12.0) ; extra == "call"
|
|
85
|
-
Requires-Dist: websockets (>=12.0) ; extra == "realtime"
|
|
86
|
-
Requires-Dist: yfinance (>=0.2.44) ; extra == "realtime"
|
|
87
|
-
Project-URL: Homepage, https://docs.praison.ai
|
|
88
|
-
Project-URL: Repository, https://github.com/mervinpraison/PraisonAI
|
|
89
|
-
Description-Content-Type: text/markdown
|
|
90
|
-
|
|
91
|
-
<p align="center">
|
|
92
|
-
<picture>
|
|
93
|
-
<source media="(prefers-color-scheme: dark)" srcset="docs/logo/dark.png" />
|
|
94
|
-
<source media="(prefers-color-scheme: light)" srcset="docs/logo/light.png" />
|
|
95
|
-
<img alt="PraisonAI Logo" src="docs/logo/light.png" />
|
|
96
|
-
</picture>
|
|
97
|
-
</p>
|
|
98
|
-
|
|
99
|
-
<p align="center">
|
|
100
|
-
<a href="https://github.com/MervinPraison/PraisonAI"><img src="https://static.pepy.tech/badge/PraisonAI" alt="Total Downloads" /></a>
|
|
101
|
-
<a href="https://github.com/MervinPraison/PraisonAI"><img src="https://img.shields.io/github/v/release/MervinPraison/PraisonAI" alt="Latest Stable Version" /></a>
|
|
102
|
-
<a href="https://github.com/MervinPraison/PraisonAI"><img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License" /></a>
|
|
103
|
-
</p>
|
|
104
|
-
|
|
105
|
-
<div align="center">
|
|
106
|
-
|
|
107
|
-
# Praison AI
|
|
108
|
-
|
|
109
|
-
<a href="https://trendshift.io/repositories/9130" target="_blank"><img src="https://trendshift.io/api/badge/repositories/9130" alt="MervinPraison%2FPraisonAI | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a>
|
|
110
|
-
|
|
111
|
-
</div>
|
|
112
|
-
|
|
113
|
-
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.
|
|
114
|
-
|
|
115
|
-
<div align="center">
|
|
116
|
-
<a href="https://docs.praison.ai">
|
|
117
|
-
<p align="center">
|
|
118
|
-
<img src="https://img.shields.io/badge/📚_Documentation-Visit_docs.praison.ai-blue?style=for-the-badge&logo=bookstack&logoColor=white" alt="Documentation" />
|
|
119
|
-
</p>
|
|
120
|
-
</a>
|
|
121
|
-
</div>
|
|
122
|
-
|
|
123
|
-
## Key Features
|
|
124
|
-
|
|
125
|
-
- 🤖 Automated AI Agents Creation
|
|
126
|
-
- 🔄 Self Reflection AI Agents
|
|
127
|
-
- 🧠 Reasoning AI Agents
|
|
128
|
-
- 👁️ Multi Modal AI Agents
|
|
129
|
-
- 🤝 Multi Agent Collaboration
|
|
130
|
-
- ⚡ AI Agent Workflow
|
|
131
|
-
- 🔄 Use CrewAI or AutoGen Framework
|
|
132
|
-
- 💯 100+ LLM Support
|
|
133
|
-
- 💻 Chat with ENTIRE Codebase
|
|
134
|
-
- 🎨 Interactive UIs
|
|
135
|
-
- 📄 YAML-based Configuration
|
|
136
|
-
- 🛠️ Custom Tool Integration
|
|
137
|
-
- 🔍 Internet Search Capability (using Crawl4AI and Tavily)
|
|
138
|
-
- 🖼️ Vision Language Model (VLM) Support
|
|
139
|
-
- 🎙️ Real-time Voice Interaction
|
|
140
|
-
|
|
141
|
-
## Using No Code
|
|
142
|
-
|
|
143
|
-
### Auto Mode:
|
|
144
|
-
```bash
|
|
145
|
-
pip install praisonai
|
|
146
|
-
export OPENAI_API_KEY=xxxxxxxxxxxxxxxxxxxxxx
|
|
147
|
-
praisonai --auto create a movie script about Robots in Mars
|
|
148
|
-
```
|
|
149
|
-
|
|
150
|
-
### Initialise Mode:
|
|
151
|
-
```bash
|
|
152
|
-
pip install praisonai
|
|
153
|
-
export OPENAI_API_KEY=xxxxxxxxxxxxxxxxxxxxxx
|
|
154
|
-
praisonai --init create a movie script about Robots in Mars
|
|
155
|
-
praisonai
|
|
156
|
-
```
|
|
157
|
-
|
|
158
|
-
## Using Coding
|
|
159
|
-
|
|
160
|
-
Light weight package dedicated for coding:
|
|
161
|
-
```bash
|
|
162
|
-
pip install praisonaiagents
|
|
163
|
-
```
|
|
164
|
-
|
|
165
|
-
```bash
|
|
166
|
-
export OPENAI_API_KEY=xxxxxxxxxxxxxxxxxxxxxx
|
|
167
|
-
```
|
|
168
|
-
|
|
169
|
-
Create app.py file and add the code below:
|
|
170
|
-
```python
|
|
171
|
-
from praisonaiagents import Agent, Task, PraisonAIAgents
|
|
172
|
-
|
|
173
|
-
# 1. Create agents
|
|
174
|
-
researcher = Agent(
|
|
175
|
-
name="Researcher",
|
|
176
|
-
role="Senior Research Analyst",
|
|
177
|
-
goal="Uncover cutting-edge developments in AI and data science",
|
|
178
|
-
backstory="""You are an expert at a technology research group,
|
|
179
|
-
skilled in identifying trends and analyzing complex data.""",
|
|
180
|
-
verbose=True,
|
|
181
|
-
llm="gpt-4o",
|
|
182
|
-
markdown=True
|
|
183
|
-
)
|
|
184
|
-
writer = Agent(
|
|
185
|
-
name="Writer",
|
|
186
|
-
role="Tech Content Strategist",
|
|
187
|
-
goal="Craft compelling content on tech advancements",
|
|
188
|
-
backstory="""You are a content strategist known for
|
|
189
|
-
making complex tech topics interesting and easy to understand.""",
|
|
190
|
-
llm="gpt-4o",
|
|
191
|
-
markdown=True
|
|
192
|
-
)
|
|
193
|
-
|
|
194
|
-
# 2. Define Tasks
|
|
195
|
-
task1 = Task(
|
|
196
|
-
name="research_task",
|
|
197
|
-
description="""Analyze 2024's AI advancements.
|
|
198
|
-
Find major trends, new technologies, and their effects.""",
|
|
199
|
-
expected_output="""A detailed report on 2024 AI advancements""",
|
|
200
|
-
agent=researcher
|
|
201
|
-
)
|
|
202
|
-
|
|
203
|
-
task2 = Task(
|
|
204
|
-
name="writing_task",
|
|
205
|
-
description="""Create a blog post about major AI advancements using the insights you have.
|
|
206
|
-
Make it interesting, clear, and suited for tech enthusiasts.
|
|
207
|
-
It should be at least 4 paragraphs long.""",
|
|
208
|
-
expected_output="A blog post of at least 4 paragraphs",
|
|
209
|
-
agent=writer,
|
|
210
|
-
)
|
|
211
|
-
|
|
212
|
-
agents = PraisonAIAgents(
|
|
213
|
-
agents=[researcher, writer],
|
|
214
|
-
tasks=[task1, task2],
|
|
215
|
-
verbose=False,
|
|
216
|
-
process="hierarchical",
|
|
217
|
-
manager_llm="gpt-4o"
|
|
218
|
-
)
|
|
219
|
-
|
|
220
|
-
result = agents.start()
|
|
221
|
-
```
|
|
222
|
-
|
|
223
|
-
Run:
|
|
224
|
-
```bash
|
|
225
|
-
python app.py
|
|
226
|
-
```
|
|
227
|
-
|
|
228
|
-
## Ollama Integration
|
|
229
|
-
```bash
|
|
230
|
-
export OPENAI_BASE_URL=http://localhost:11434/v1
|
|
231
|
-
```
|
|
232
|
-
|
|
233
|
-
## Groq Integration
|
|
234
|
-
Replace xxxx with Groq API KEY:
|
|
235
|
-
```bash
|
|
236
|
-
export OPENAI_API_KEY=xxxxxxxxxxx
|
|
237
|
-
export OPENAI_BASE_URL=https://api.groq.com/openai/v1
|
|
238
|
-
```
|
|
239
|
-
|
|
240
|
-
## Logging
|
|
241
|
-
```bash
|
|
242
|
-
export LOGLEVEL=info
|
|
243
|
-
```
|
|
244
|
-
|
|
245
|
-
Advanced logging:
|
|
246
|
-
```bash
|
|
247
|
-
export LOGLEVEL=debug
|
|
248
|
-
```
|
|
249
|
-
|
|
250
|
-
<div align="center">
|
|
251
|
-
<picture>
|
|
252
|
-
<source media="(prefers-color-scheme: dark)" srcset="docs/images/architecture-dark.png" />
|
|
253
|
-
<source media="(prefers-color-scheme: light)" srcset="docs/images/architecture-light.png" />
|
|
254
|
-
<img alt="PraisonAI Architecture" src="docs/images/architecture-light.png" />
|
|
255
|
-
</picture>
|
|
256
|
-
</div>
|
|
257
|
-
|
|
258
|
-
## Different User Interfaces:
|
|
259
|
-
|
|
260
|
-
| Interface | Description | URL |
|
|
261
|
-
|---|---|---|
|
|
262
|
-
| **UI** | Multi Agents such as CrewAI or AutoGen | [https://docs.praison.ai/ui/ui](https://docs.praison.ai/ui/ui) |
|
|
263
|
-
| **Chat** | Chat with 100+ LLMs, single AI Agent | [https://docs.praison.ai/ui/chat](https://docs.praison.ai/ui/chat) |
|
|
264
|
-
| **Code** | Chat with entire Codebase, single AI Agent | [https://docs.praison.ai/ui/code](https://docs.praison.ai/ui/code) |
|
|
265
|
-
| **Realtime** | Real-time voice interaction with AI | [https://docs.praison.ai/ui/realtime](https://docs.praison.ai/ui/realtime) |
|
|
266
|
-
|
|
267
|
-
| Other Features | Description | Docs |
|
|
268
|
-
|---|---|---|
|
|
269
|
-
| **Train** | Fine-tune LLMs using your custom data | [https://docs.praison.ai/train](https://docs.praison.ai/train) |
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
## Google Colab Multi Agents
|
|
273
|
-
|
|
274
|
-
| | Cookbook | Open in Colab |
|
|
275
|
-
| ------------- | --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
276
|
-
| Basic | PraisonAI | <a target="_blank" href="https://colab.research.google.com/github/MervinPraison/PraisonAI/blob/main/cookbooks/praisonai-googlecolab.ipynb"><img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab" /></a> |
|
|
277
|
-
| Include Tools | PraisonAI Tools | <a target="_blank" href="https://colab.research.google.com/github/MervinPraison/PraisonAI/blob/main/cookbooks/praisonai-tools-googlecolab.ipynb"><img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab" /></a> |
|
|
278
|
-
|
|
279
|
-
## Installation Options
|
|
280
|
-
|
|
281
|
-
### Using pip
|
|
282
|
-
```bash
|
|
283
|
-
pip install praisonai
|
|
284
|
-
```
|
|
285
|
-
|
|
286
|
-
### Framework-specific Installation
|
|
287
|
-
```bash
|
|
288
|
-
# Install with CrewAI support
|
|
289
|
-
pip install "praisonai[crewai]"
|
|
290
|
-
|
|
291
|
-
# Install with AutoGen support
|
|
292
|
-
pip install "praisonai[autogen]"
|
|
293
|
-
|
|
294
|
-
# Install with both frameworks
|
|
295
|
-
pip install "praisonai[crewai,autogen]"
|
|
296
|
-
```
|
|
297
|
-
|
|
298
|
-
### UI and Additional Features
|
|
299
|
-
```bash
|
|
300
|
-
# Install UI support
|
|
301
|
-
pip install "praisonai[ui]"
|
|
302
|
-
|
|
303
|
-
# Install Chat interface
|
|
304
|
-
pip install "praisonai[chat]"
|
|
305
|
-
|
|
306
|
-
# Install Code interface
|
|
307
|
-
pip install "praisonai[code]"
|
|
308
|
-
|
|
309
|
-
# Install Realtime voice interaction
|
|
310
|
-
pip install "praisonai[realtime]"
|
|
311
|
-
|
|
312
|
-
# Install Call feature
|
|
313
|
-
pip install "praisonai[call]"
|
|
314
|
-
```
|
|
315
|
-
|
|
316
|
-
## Quick Start
|
|
317
|
-
|
|
318
|
-
```bash
|
|
319
|
-
# Set your OpenAI API key
|
|
320
|
-
export OPENAI_API_KEY="Enter your API key"
|
|
321
|
-
|
|
322
|
-
# Initialize with CrewAI (default)
|
|
323
|
-
praisonai --init "create a movie script about dog in moon"
|
|
324
|
-
|
|
325
|
-
# Or initialize with AutoGen
|
|
326
|
-
praisonai --framework autogen --init "create a movie script about dog in moon"
|
|
327
|
-
|
|
328
|
-
# Run the agents
|
|
329
|
-
praisonai
|
|
330
|
-
```
|
|
331
|
-
|
|
332
|
-
## Full Automatic Mode
|
|
333
|
-
|
|
334
|
-
```bash
|
|
335
|
-
# With CrewAI (default)
|
|
336
|
-
praisonai --auto "create a movie script about Dog in Moon"
|
|
337
|
-
|
|
338
|
-
# With AutoGen
|
|
339
|
-
praisonai --framework autogen --auto "create a movie script about Dog in Moon"
|
|
340
|
-
```
|
|
341
|
-
|
|
342
|
-
## Framework-specific Features
|
|
343
|
-
|
|
344
|
-
### CrewAI
|
|
345
|
-
When installing with `pip install "praisonai[crewai]"`, you get:
|
|
346
|
-
- CrewAI framework support
|
|
347
|
-
- PraisonAI tools integration
|
|
348
|
-
- Task delegation capabilities
|
|
349
|
-
- Sequential and parallel task execution
|
|
350
|
-
|
|
351
|
-
### AutoGen
|
|
352
|
-
When installing with `pip install "praisonai[autogen]"`, you get:
|
|
353
|
-
- AutoGen framework support
|
|
354
|
-
- PraisonAI tools integration
|
|
355
|
-
- Multi-agent conversation capabilities
|
|
356
|
-
- Code execution environment
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
## TL;DR Multi Agents
|
|
361
|
-
|
|
362
|
-
```bash
|
|
363
|
-
pip install praisonai
|
|
364
|
-
export OPENAI_API_KEY="Enter your API key"
|
|
365
|
-
praisonai --init create a movie script about dog in moon
|
|
366
|
-
praisonai
|
|
367
|
-
```
|
|
368
|
-
|
|
369
|
-
## Table of Contents
|
|
370
|
-
|
|
371
|
-
- [Installation](#installation)
|
|
372
|
-
- [Initialise](#initialise)
|
|
373
|
-
- [Run](#run)
|
|
374
|
-
- [Full Automatic Mode](#full-automatic-mode)
|
|
375
|
-
- [User Interface](#user-interface)
|
|
376
|
-
- [Praison AI Chat](#praison-ai-chat)
|
|
377
|
-
- [Create Custom Tools](#create-custom-tools)
|
|
378
|
-
- [Agents Playbook](#agents-playbook)
|
|
379
|
-
- [Include praisonai package in your project](#include-praisonai-package-in-your-project)
|
|
380
|
-
- [Commands to Install Dev Dependencies](#commands-to-install-dependencies)
|
|
381
|
-
- [Other Models](#other-models)
|
|
382
|
-
- [Contributing](#contributing)
|
|
383
|
-
- [Star History](#star-history)
|
|
384
|
-
|
|
385
|
-
## Installation Multi Agents
|
|
386
|
-
|
|
387
|
-
```bash
|
|
388
|
-
pip install praisonai
|
|
389
|
-
```
|
|
390
|
-
|
|
391
|
-
## Initialise
|
|
392
|
-
|
|
393
|
-
```bash
|
|
394
|
-
export OPENAI_API_KEY="Enter your API key"
|
|
395
|
-
```
|
|
396
|
-
|
|
397
|
-
Generate your OPENAI API KEY from here: https://platform.openai.com/api-keys
|
|
398
|
-
|
|
399
|
-
Note: You can use other providers such as Ollama, Mistral ... etc. Details are provided at the bottom.
|
|
400
|
-
|
|
401
|
-
```bash
|
|
402
|
-
praisonai --init create a movie script about dog in moon
|
|
403
|
-
```
|
|
404
|
-
|
|
405
|
-
This will automatically create agents.yaml file in the current directory.
|
|
406
|
-
|
|
407
|
-
### To initialise with a specific agent framework (Optional):
|
|
408
|
-
|
|
409
|
-
```bash
|
|
410
|
-
praisonai --framework autogen --init create movie script about cat in mars
|
|
411
|
-
```
|
|
412
|
-
|
|
413
|
-
## Run
|
|
414
|
-
|
|
415
|
-
```bash
|
|
416
|
-
praisonai
|
|
417
|
-
```
|
|
418
|
-
|
|
419
|
-
or
|
|
420
|
-
|
|
421
|
-
```bash
|
|
422
|
-
python -m praisonai
|
|
423
|
-
```
|
|
424
|
-
|
|
425
|
-
### Specify the agent framework (Optional):
|
|
426
|
-
|
|
427
|
-
```bash
|
|
428
|
-
praisonai --framework autogen
|
|
429
|
-
```
|
|
430
|
-
|
|
431
|
-
### Full Automatic Mode
|
|
432
|
-
|
|
433
|
-
```bash
|
|
434
|
-
praisonai --auto create a movie script about Dog in Moon
|
|
435
|
-
```
|
|
436
|
-
|
|
437
|
-
## User Interface
|
|
438
|
-
|
|
439
|
-
## PraisonAI User Interfaces:
|
|
440
|
-
|
|
441
|
-
| Interface | Description | URL |
|
|
442
|
-
| --------- | ------------------------------------------ | --------------------------------------------------------------------- |
|
|
443
|
-
| **UI** | Multi Agents such as CrewAI or AutoGen | [https://docs.praisonai.com/ui/ui](https://docs.praison.ai/ui/ui) |
|
|
444
|
-
| **Chat** | Chat with 100+ LLMs, single AI Agent | [https://docs.praisonai.com/ui/chat](https://docs.praison.ai/ui/chat) |
|
|
445
|
-
| **Code** | Chat with entire Codebase, single AI Agent | [https://docs.praisonai.com/ui/code](https://docs.praison.ai/ui/code) |
|
|
446
|
-
|
|
447
|
-
```bash
|
|
448
|
-
pip install -U "praisonai[ui]"
|
|
449
|
-
export OPENAI_API_KEY="Enter your API key"
|
|
450
|
-
chainlit create-secret
|
|
451
|
-
export CHAINLIT_AUTH_SECRET=xxxxxxxx
|
|
452
|
-
praisonai ui
|
|
453
|
-
```
|
|
454
|
-
|
|
455
|
-
or
|
|
456
|
-
|
|
457
|
-
```
|
|
458
|
-
python -m praisonai ui
|
|
459
|
-
```
|
|
460
|
-
|
|
461
|
-
## Praison AI Chat
|
|
462
|
-
|
|
463
|
-
- https://docs.praison.ai/chat/
|
|
464
|
-
|
|
465
|
-
```bash
|
|
466
|
-
pip install "praisonai[chat]"
|
|
467
|
-
export OPENAI_API_KEY="Enter your API key"
|
|
468
|
-
praisonai chat
|
|
469
|
-
```
|
|
470
|
-
|
|
471
|
-
### Internet Search
|
|
472
|
-
|
|
473
|
-
Praison AI Chat and Praison AI Code now includes internet search capabilities using Crawl4AI and Tavily, allowing you to retrieve up-to-date information during your conversations.
|
|
474
|
-
|
|
475
|
-
### Vision Language Model Support
|
|
476
|
-
|
|
477
|
-
You can now upload images and ask questions based on them using Vision Language Models. This feature enables visual understanding and analysis within your chat sessions.
|
|
478
|
-
|
|
479
|
-
## Praison AI Code
|
|
480
|
-
|
|
481
|
-
```bash
|
|
482
|
-
pip install "praisonai[code]"
|
|
483
|
-
export OPENAI_API_KEY="Enter your API key"
|
|
484
|
-
praisonai code
|
|
485
|
-
```
|
|
486
|
-
|
|
487
|
-
### Internet Search
|
|
488
|
-
|
|
489
|
-
Praison AI Code also includes internet search functionality, enabling you to find relevant code snippets and programming information online.
|
|
490
|
-
|
|
491
|
-
## Create Custom Tools
|
|
492
|
-
|
|
493
|
-
- https://docs.praison.ai/tools/custom/
|
|
494
|
-
|
|
495
|
-
## Agents Playbook
|
|
496
|
-
|
|
497
|
-
### Simple Playbook Example
|
|
498
|
-
|
|
499
|
-
```yaml
|
|
500
|
-
framework: crewai
|
|
501
|
-
topic: Artificial Intelligence
|
|
502
|
-
roles:
|
|
503
|
-
screenwriter:
|
|
504
|
-
backstory: "Skilled in crafting scripts with engaging dialogue about {topic}."
|
|
505
|
-
goal: Create scripts from concepts.
|
|
506
|
-
role: Screenwriter
|
|
507
|
-
tasks:
|
|
508
|
-
scriptwriting_task:
|
|
509
|
-
description: "Develop scripts with compelling characters and dialogue about {topic}."
|
|
510
|
-
expected_output: "Complete script ready for production."
|
|
511
|
-
```
|
|
512
|
-
|
|
513
|
-
## Use 100+ Models
|
|
514
|
-
|
|
515
|
-
- https://docs.praison.ai/models/
|
|
516
|
-
|
|
517
|
-
## Include praisonai package in your project
|
|
518
|
-
|
|
519
|
-
- https://docs.praison.ai/developers/wrapper
|
|
520
|
-
- https://docs.praison.ai/developers/wrapper-tools/
|
|
521
|
-
|
|
522
|
-
## Option 1: Using RAW YAML
|
|
523
|
-
|
|
524
|
-
```python
|
|
525
|
-
from praisonai import PraisonAI
|
|
526
|
-
|
|
527
|
-
# Example agent_yaml content
|
|
528
|
-
agent_yaml = """
|
|
529
|
-
framework: "crewai"
|
|
530
|
-
topic: "Space Exploration"
|
|
531
|
-
|
|
532
|
-
roles:
|
|
533
|
-
astronomer:
|
|
534
|
-
role: "Space Researcher"
|
|
535
|
-
goal: "Discover new insights about {topic}"
|
|
536
|
-
backstory: "You are a curious and dedicated astronomer with a passion for unraveling the mysteries of the cosmos."
|
|
537
|
-
tasks:
|
|
538
|
-
investigate_exoplanets:
|
|
539
|
-
description: "Research and compile information about exoplanets discovered in the last decade."
|
|
540
|
-
expected_output: "A summarized report on exoplanet discoveries, including their size, potential habitability, and distance from Earth."
|
|
541
|
-
"""
|
|
542
|
-
|
|
543
|
-
# Create a PraisonAI instance with the agent_yaml content
|
|
544
|
-
praisonai = PraisonAI(agent_yaml=agent_yaml)
|
|
545
|
-
|
|
546
|
-
# Run PraisonAI
|
|
547
|
-
result = praisonai.run()
|
|
548
|
-
|
|
549
|
-
# Print the result
|
|
550
|
-
print(result)
|
|
551
|
-
```
|
|
552
|
-
|
|
553
|
-
## Option 2: Using separate agents.yaml file
|
|
554
|
-
|
|
555
|
-
Note: Please create agents.yaml file before hand.
|
|
556
|
-
|
|
557
|
-
```python
|
|
558
|
-
from praisonai import PraisonAI
|
|
559
|
-
|
|
560
|
-
def basic(): # Basic Mode
|
|
561
|
-
praisonai = PraisonAI(agent_file="agents.yaml")
|
|
562
|
-
praisonai.run()
|
|
563
|
-
|
|
564
|
-
if __name__ == "__main__":
|
|
565
|
-
basic()
|
|
566
|
-
```
|
|
567
|
-
|
|
568
|
-
## Commands to Install Dependencies:
|
|
569
|
-
|
|
570
|
-
### Using uv
|
|
571
|
-
```bash
|
|
572
|
-
# Install uv if you haven't already
|
|
573
|
-
pip install uv
|
|
574
|
-
|
|
575
|
-
# Install from requirements
|
|
576
|
-
uv pip install -r pyproject.toml
|
|
577
|
-
|
|
578
|
-
# Install with extras
|
|
579
|
-
uv pip install -r pyproject.toml --extra code
|
|
580
|
-
uv pip install -r pyproject.toml --extra "crewai,autogen"
|
|
581
|
-
```
|
|
582
|
-
|
|
583
|
-
## Contributing
|
|
584
|
-
|
|
585
|
-
- Fork on GitHub: Use the "Fork" button on the repository page.
|
|
586
|
-
- Clone your fork: `git clone https://github.com/yourusername/praisonAI.git`
|
|
587
|
-
- Create a branch: `git checkout -b new-feature`
|
|
588
|
-
- Make changes and commit: `git commit -am "Add some feature"`
|
|
589
|
-
- Push to your fork: `git push origin new-feature`
|
|
590
|
-
- Submit a pull request via GitHub's web interface.
|
|
591
|
-
- Await feedback from project maintainers.
|
|
592
|
-
|
|
593
|
-
## Star History
|
|
594
|
-
|
|
595
|
-
[](https://docs.praison.ai)
|
|
596
|
-
|
|
597
|
-
## License
|
|
598
|
-
|
|
599
|
-
Praison AI is an open-sourced software licensed under the **[MIT license](https://opensource.org/licenses/MIT)**.
|
|
600
|
-
|
|
601
|
-
## Video Tutorials
|
|
602
|
-
|
|
603
|
-
| Topic | Video |
|
|
604
|
-
|-------|--------|
|
|
605
|
-
| Introduction | [](https://www.youtube.com/watch?v=Fn1lQjC0GO0) |
|
|
606
|
-
| Tools Overview | [](https://www.youtube.com/watch?v=XaQRgRpV7jo) |
|
|
607
|
-
| Custom Tools | [](https://www.youtube.com/watch?v=JSU2Rndh06c) |
|
|
608
|
-
| Firecrawl Integration | [](https://www.youtube.com/watch?v=UoqUDcLcOYo) |
|
|
609
|
-
| User Interface | [](https://www.youtube.com/watch?v=tg-ZjNl3OCg) |
|
|
610
|
-
| Crawl4AI Integration | [](https://www.youtube.com/watch?v=KAvuVUh0XU8) |
|
|
611
|
-
| Chat Interface | [](https://www.youtube.com/watch?v=sw3uDqn2h1Y) |
|
|
612
|
-
| Code Interface | [](https://www.youtube.com/watch?v=_5jQayO-MQY) |
|
|
613
|
-
| Mem0 Integration | [](https://www.youtube.com/watch?v=KIGSgRxf1cY) |
|
|
614
|
-
| Training | [](https://www.youtube.com/watch?v=aLawE8kwCrI) |
|
|
615
|
-
| Realtime Voice Interface | [](https://www.youtube.com/watch?v=frRHfevTCSw) |
|
|
616
|
-
| Call Interface | [](https://www.youtube.com/watch?v=m1cwrUG2iAk) |
|
|
617
|
-
|
|
618
|
-
## License
|
|
619
|
-
|
|
620
|
-
Praison AI is an open-sourced software licensed under the **[MIT license](https://opensource.org/licenses/MIT)**.
|
|
621
|
-
|
|
622
|
-
## Local Docker Development with Live Reload
|
|
623
|
-
|
|
624
|
-
To facilitate local development with live reload, you can use Docker. Follow the steps below:
|
|
625
|
-
|
|
626
|
-
1. **Create a `Dockerfile.dev`**:
|
|
627
|
-
```dockerfile
|
|
628
|
-
FROM python:3.11-slim
|
|
629
|
-
|
|
630
|
-
WORKDIR /app
|
|
631
|
-
|
|
632
|
-
COPY . .
|
|
633
|
-
|
|
634
|
-
RUN pip install flask praisonai==2.0.18 watchdog
|
|
635
|
-
|
|
636
|
-
EXPOSE 5555
|
|
637
|
-
|
|
638
|
-
ENV FLASK_ENV=development
|
|
639
|
-
|
|
640
|
-
CMD ["flask", "run", "--host=0.0.0.0"]
|
|
641
|
-
```
|
|
642
|
-
|
|
643
|
-
2. **Create a `docker-compose.yml`**:
|
|
644
|
-
```yaml
|
|
645
|
-
version: '3.8'
|
|
646
|
-
|
|
647
|
-
services:
|
|
648
|
-
app:
|
|
649
|
-
build:
|
|
650
|
-
context: .
|
|
651
|
-
dockerfile: Dockerfile.dev
|
|
652
|
-
volumes:
|
|
653
|
-
- .:/app
|
|
654
|
-
ports:
|
|
655
|
-
- "5555:5555"
|
|
656
|
-
environment:
|
|
657
|
-
FLASK_ENV: development
|
|
658
|
-
command: flask run --host=0.0.0.0
|
|
659
|
-
|
|
660
|
-
watch:
|
|
661
|
-
image: alpine:latest
|
|
662
|
-
volumes:
|
|
663
|
-
- .:/app
|
|
664
|
-
command: sh -c "apk add --no-cache inotify-tools && while inotifywait -r -e modify,create,delete /app; do kill -HUP 1; done"
|
|
665
|
-
```
|
|
666
|
-
|
|
667
|
-
3. **Run Docker Compose**:
|
|
668
|
-
```bash
|
|
669
|
-
docker-compose up
|
|
670
|
-
```
|
|
671
|
-
|
|
672
|
-
This setup will allow you to develop locally with live reload, making it easier to test and iterate on your code.
|
|
673
|
-
|
|
File without changes
|