Skip to content

Latest commit

 

History

History
517 lines (388 loc) · 15.5 KB

README.md

File metadata and controls

517 lines (388 loc) · 15.5 KB

PraisonAI Logo

Total Downloads Latest Stable Version License

Praison AI

MervinPraison%2FPraisonAI | Trendshift

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.

Key Features

  • 🤖 Automated AI Agents Creation
  • 🔄 Use CrewAI or AutoGen Framework
  • 💯 100+ LLM Support
  • 💻 Chat with ENTIRE Codebase
  • 🖥️ Interactive UIs
  • 📄 YAML-based Configuration
  • 🛠️ Custom Tool Integration
  • 🔍 Internet Search Capability (using Crawl4AI and Tavily)
  • 👁️ Vision Language Model (VLM) Support
  • 🎙️ Real-time Voice Interaction

Using No Code

Auto Mode:

pip install praisonai
export OPENAI_API_KEY=xxxxxxxxxxxxxxxxxxxxxx
praisonai --auto create a movie script about Robots in Mars

Initialise Mode:

pip install praisonai
export OPENAI_API_KEY=xxxxxxxxxxxxxxxxxxxxxx
praisonai --init create a movie script about Robots in Mars
praisonai

Using Coding

Light weight package dedicated for coding:

pip install praisonaiagents
export OPENAI_API_KEY=xxxxxxxxxxxxxxxxxxxxxx

Create app.py file and add the code below:

from praisonaiagents import Agent, Task, PraisonAIAgents

# 1. Create agents
researcher = Agent(
    name="Researcher",
    role="Senior Research Analyst",
    goal="Uncover cutting-edge developments in AI and data science",
    backstory="""You are an expert at a technology research group, 
    skilled in identifying trends and analyzing complex data.""",
    verbose=True,
    llm="gpt-4o",
    markdown=True
)
writer = Agent(
    name="Writer",
    role="Tech Content Strategist",
    goal="Craft compelling content on tech advancements",
    backstory="""You are a content strategist known for 
    making complex tech topics interesting and easy to understand.""",
    llm="gpt-4o",
    markdown=True
)

# 2. Define Tasks
task1 = Task(
    name="research_task",
    description="""Analyze 2024's AI advancements. 
    Find major trends, new technologies, and their effects.""",
    expected_output="""A detailed report on 2024 AI advancements""",
    agent=researcher
)

task2 = Task(
    name="writing_task",
    description="""Create a blog post about major AI advancements using the insights you have.
    Make it interesting, clear, and suited for tech enthusiasts. 
    It should be at least 4 paragraphs long.""",
    expected_output="A blog post of at least 4 paragraphs",
    agent=writer,
)

agents = PraisonAIAgents(
    agents=[researcher, writer],
    tasks=[task1, task2],
    verbose=False,
    process="hierarchical",
    manager_llm="gpt-4o"
)

result = agents.start()

Run:

python app.py

Ollama Integration

export OPENAI_BASE_URL=http://localhost:11434/v1

Groq Integration

Replace xxxx with Groq API KEY:

export OPENAI_API_KEY=xxxxxxxxxxx
export OPENAI_BASE_URL=https://api.groq.com/openai/v1

Logging

export LOGLEVEL=info

Advanced logging:

export LOGLEVEL=debug
PraisonAI Architecture

Different User Interfaces:

Interface Description URL
UI Multi Agents such as CrewAI or AutoGen https://docs.praison.ai/ui/ui
Chat Chat with 100+ LLMs, single AI Agent https://docs.praison.ai/ui/chat
Code Chat with entire Codebase, single AI Agent https://docs.praison.ai/ui/code
Realtime Real-time voice interaction with AI https://docs.praison.ai/ui/realtime
Other Features Description Docs
Train Fine-tune LLMs using your custom data https://docs.praison.ai/train

Google Colab Multi Agents

Cookbook Open in Colab
Basic PraisonAI Open In Colab
Include Tools PraisonAI Tools Open In Colab

Installation Options

Using pip

pip install praisonai

Framework-specific Installation

# Install with CrewAI support
pip install "praisonai[crewai]"

# Install with AutoGen support
pip install "praisonai[autogen]"

# Install with both frameworks
pip install "praisonai[crewai,autogen]"

UI and Additional Features

# Install UI support
pip install "praisonai[ui]"

# Install Chat interface
pip install "praisonai[chat]"

# Install Code interface
pip install "praisonai[code]"

# Install Realtime voice interaction
pip install "praisonai[realtime]"

# Install Call feature
pip install "praisonai[call]"

Quick Start

# Set your OpenAI API key
export OPENAI_API_KEY="Enter your API key"

# Initialize with CrewAI (default)
praisonai --init "create a movie script about dog in moon"

# Or initialize with AutoGen
praisonai --framework autogen --init "create a movie script about dog in moon"

# Run the agents
praisonai

Full Automatic Mode

# With CrewAI (default)
praisonai --auto "create a movie script about Dog in Moon"

# With AutoGen
praisonai --framework autogen --auto "create a movie script about Dog in Moon"

Framework-specific Features

CrewAI

When installing with pip install "praisonai[crewai]", you get:

  • CrewAI framework support
  • PraisonAI tools integration
  • Task delegation capabilities
  • Sequential and parallel task execution

AutoGen

When installing with pip install "praisonai[autogen]", you get:

  • AutoGen framework support
  • PraisonAI tools integration
  • Multi-agent conversation capabilities
  • Code execution environment

TL;DR Multi Agents

pip install praisonai
export OPENAI_API_KEY="Enter your API key"
praisonai --init create a movie script about dog in moon
praisonai

Table of Contents

Installation Multi Agents

pip install praisonai

Initialise

export OPENAI_API_KEY="Enter your API key"

Generate your OPENAI API KEY from here: https://platform.openai.com/api-keys

Note: You can use other providers such as Ollama, Mistral ... etc. Details are provided at the bottom.

praisonai --init create a movie script about dog in moon

This will automatically create agents.yaml file in the current directory.

To initialise with a specific agent framework (Optional):

praisonai --framework autogen --init create movie script about cat in mars

Run

praisonai

or

python -m praisonai

Specify the agent framework (Optional):

praisonai --framework autogen

Full Automatic Mode

praisonai --auto create a movie script about Dog in Moon

User Interface

PraisonAI User Interfaces:

Interface Description URL
UI Multi Agents such as CrewAI or AutoGen https://docs.praisonai.com/ui/ui
Chat Chat with 100+ LLMs, single AI Agent https://docs.praisonai.com/ui/chat
Code Chat with entire Codebase, single AI Agent https://docs.praisonai.com/ui/code
pip install -U "praisonai[ui]"
export OPENAI_API_KEY="Enter your API key"
chainlit create-secret
export CHAINLIT_AUTH_SECRET=xxxxxxxx
praisonai ui

or

python -m praisonai ui

Praison AI Chat

pip install "praisonai[chat]"
export OPENAI_API_KEY="Enter your API key"
praisonai chat

Internet Search

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.

Vision Language Model Support

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.

Praison AI Code

pip install "praisonai[code]"
export OPENAI_API_KEY="Enter your API key"
praisonai code

Internet Search

Praison AI Code also includes internet search functionality, enabling you to find relevant code snippets and programming information online.

Create Custom Tools

Agents Playbook

Simple Playbook Example

framework: crewai
topic: Artificial Intelligence
roles:
  screenwriter:
    backstory: "Skilled in crafting scripts with engaging dialogue about {topic}."
    goal: Create scripts from concepts.
    role: Screenwriter
    tasks:
      scriptwriting_task:
        description: "Develop scripts with compelling characters and dialogue about {topic}."
        expected_output: "Complete script ready for production."

Use 100+ Models

Include praisonai package in your project

Option 1: Using RAW YAML

from praisonai import PraisonAI

# Example agent_yaml content
agent_yaml = """
framework: "crewai"
topic: "Space Exploration"

roles:
  astronomer:
    role: "Space Researcher"
    goal: "Discover new insights about {topic}"
    backstory: "You are a curious and dedicated astronomer with a passion for unraveling the mysteries of the cosmos."
    tasks:
      investigate_exoplanets:
        description: "Research and compile information about exoplanets discovered in the last decade."
        expected_output: "A summarized report on exoplanet discoveries, including their size, potential habitability, and distance from Earth."
"""

# Create a PraisonAI instance with the agent_yaml content
praisonai = PraisonAI(agent_yaml=agent_yaml)

# Run PraisonAI
result = praisonai.run()

# Print the result
print(result)

Option 2: Using separate agents.yaml file

Note: Please create agents.yaml file before hand.

from praisonai import PraisonAI

def basic(): # Basic Mode
    praisonai = PraisonAI(agent_file="agents.yaml")
    praisonai.run()

if __name__ == "__main__":
    basic()

Commands to Install Dependencies:

Using uv

# Install uv if you haven't already
pip install uv

# Install from requirements
uv pip install -r pyproject.toml

# Install with extras
uv pip install -r pyproject.toml --extra code
uv pip install -r pyproject.toml --extra "crewai,autogen"

Contributing

  • Fork on GitHub: Use the "Fork" button on the repository page.
  • Clone your fork: git clone https://github.com/yourusername/praisonAI.git
  • Create a branch: git checkout -b new-feature
  • Make changes and commit: git commit -am "Add some feature"
  • Push to your fork: git push origin new-feature
  • Submit a pull request via GitHub's web interface.
  • Await feedback from project maintainers.

Star History

Star History Chart

License

Praison AI is an open-sourced software licensed under the MIT license.

Video Tutorials

Topic Video
Introduction Introduction
Tools Overview Tools Overview
Custom Tools Custom Tools
Firecrawl Integration Firecrawl
User Interface UI
Crawl4AI Integration Crawl4AI
Chat Interface Chat
Code Interface Code
Mem0 Integration Mem0
Training Training
Realtime Voice Interface Realtime
Call Interface Call

License

Praison AI is an open-sourced software licensed under the MIT license.