The Pythonic Multi-Agent AI Framework

Transform complex AI applications into simple, composable agent systems using decorator-based APIs, secure messaging, and distributed deployment.

489 lines β†’ 50 lines Dramatic code reduction through decorator-based design
v0.7.9 MIT License Python 3.9+

The Coral Reef Philosophy

Just as coral reefs create complex, thriving ecosystems from simple organisms working together, Praval enables sophisticated AI systems through the collaboration of specialized agents.

🐠

Specialized Organisms

Each agent excels at one thing. No "god agents" trying to do everything.

🌊

Nutrient Flow

Knowledge-first messaging enables natural information exchange between agents.

πŸ›οΈ

Emergent Ecosystems

Complex intelligence arises from simple interactions and self-organization.

🌿

Natural Growth

Scale by adding new specialists, not rewriting existing systems.

Why Praval?

🎯

Pythonic Simplicity

Decorator-based @agent() API transforms functions into intelligent agents. Zero boilerplate, maximum clarity.

🌊

Self-Organizing Systems

Agents coordinate without central control through the Reef communication protocol. True emergent intelligence.

🧠

Persistent Memory

ChromaDB-powered semantic memory with knowledge base support, including PDF indexing and cross-session learning.

πŸ”’

Enterprise Ready

End-to-end encryption (Secure Spores), multi-protocol messaging (AMQP, MQTT, STOMP), and production deployment.

🎭

Multi-LLM Support

Seamlessly work with OpenAI, Anthropic, Cohere, and more. Switch providers without code changes.

πŸ”§

Tool Integration

Declarative @tool decorator enables external API integrations, web searches, and custom capabilities.

🐳

Docker Deployment

Full-stack containerization with RabbitMQ, Mosquitto, Qdrant, and Redis. Production-ready infrastructure.

πŸ“‘

Reef Communication

Knowledge-first messaging through Spores. Agents broadcast and subscribe to structured semantic data.

Multi-Agent RAG Example

Build a retrieval-augmented generation system with specialized agents

rag_chatbot.py
from praval import agent, chat, broadcast, start_agents

# Knowledge base (use ChromaDB/Qdrant in production)
KNOWLEDGE = [
    "Python is a high-level programming language...",
    "Praval is a Pythonic multi-agent AI framework...",
]

@agent("retriever", responds_to=["query"])
def retriever(spore):
    """Retrieves relevant documents from knowledge base"""
    question = spore.knowledge.get("question", "").lower()

    # Find relevant documents
    relevant = [doc for doc in KNOWLEDGE
                if any(word in doc.lower()
                for word in question.split())]

    # Share context with responder
    broadcast({
        "type": "context",
        "question": spore.knowledge.get("question"),
        "docs": relevant
    })

    return {"retrieved": len(relevant)}

@agent("responder", responds_to=["context"])
def responder(spore):
    """Generates informed answer using retrieved context"""
    question = spore.knowledge.get("question")
    docs = spore.knowledge.get("docs", [])

    context = "\n".join(docs)
    prompt = f"Context:\n{context}\n\nQuestion: {question}"
    answer = chat(prompt)

    return {"answer": answer}

# Run the RAG system - agents coordinate automatically!
start_agents(retriever, responder,
             initial_data={"type": "query",
                         "question": "What is Praval?"})
Key Features
Specialized agents β€’ Automatic coordination β€’ Knowledge-first messaging

Real-World Applications

πŸ“Š Business Model Analysis

VentureLens: Multi-agent business analysis platform with dynamic questioning, viability scoring, and automated PDF report generation.

  • Interviewer agent conducts smart Q&A with founders
  • Analyst agent evaluates across multiple dimensions
  • Reporter agent creates professional PDFs

πŸ•ΈοΈ Knowledge Processing

Knowledge Graph Miner: Automated concept discovery and relationship mapping with parallel LLM processing.

  • Domain expert agent identifies concepts
  • Relationship analyst agent maps connections
  • Graph builder agent constructs knowledge structures

πŸ’¬ RAG Chatbot

Multi-Agent RAG System: Retrieval-augmented generation with specialized agents for searching and responding.

  • Retriever agent searches knowledge base for relevant documents
  • Responder agent generates informed answers using LLM
  • Agents coordinate automatically via broadcast messaging

πŸ”¬ Research Automation

ArXiv Paper Analyzer: Automated research paper discovery, download, and knowledge extraction.

  • Query processor agent optimizes search
  • Downloader agent retrieves papers
  • Analyzer agent extracts key insights

Get Started in Minutes

1

Install Praval

pip install praval
2

Set Up Environment

# Add to .env file
OPENAI_API_KEY=your_openai_key
3

Run Your First Agent

# Test your installation
python -c "from praval import agent; print('Ready!')"

Or Deploy with Docker

# Full stack with RabbitMQ, Qdrant, Redis
docker-compose -f docker/docker-compose.secure.yml up -d

Learn More

About the Creator

Rajesh Sampathkumar

Praval was created by Rajesh Sampathkumar, a Data and AI leader with over 22 years of experience, including a decade spanning machine learning and AI. Rajesh has built AI and ML products and solutions in diverse domains such as automotive, aerospace, energy, telecommunications, and BFSI sectors.

His work focuses on architecting enterprise-scale generative AI applications, including agentic systems, RAG architectures, and compound AI systems. Praval emerged from the confluence of Rajesh's passion for self-organizing systems and complex adaptive systems on the one hand, and deep exploration of multi-agent frameworks on the other hand. Praval's vision is to make agentic AI development more Pythonic, composable, scalable and accessible.