Skip to content

πŸ€– Advanced Multi-Agent AI Template: Production-ready system combining Groq's speed with LangChain's flexibility. Features RAG, document processing, and real-time agent collaboration. Built with Streamlit for instant deployment. Ready to customize and scale! πŸš€

License

Notifications You must be signed in to change notification settings

Hams-Ollo/Project-S.O.C.R.A.T.E.S.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

82 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ€– Project S.O.C.R.A.T.E.S.: Sophisticated Orchestration of Collaborative Resources and AI Task Execution System

Project S.O.C.R.A.T.E.S. is a cutting-edge framework designed to harness the power of multi-agent AI systems for seamless collaboration, task automation, and resource management. By orchestrating specialized agents and leveraging advanced AI capabilities, S.O.C.R.A.T.E.S. enables efficient task execution and intelligent resource integration, making it an indispensable tool for researchers, developers, and organizations.

🎑 Overview

S.O.C.R.A.T.E.S. integrates a sophisticated multi-agent framework with state-of-the-art AI models, providing a powerful platform for collaborative task management and resource optimization. Whether it’s analyzing documents, generating content, or executing complex workflows, the system’s agents work together to deliver streamlined and intelligent solutions.

Core Features

🌟 Key Features

  • Advanced Chat Interface:

    • πŸ’¬ Context-aware conversations using RAG
    • 🧠 Intelligent response generation
    • πŸ“ Chat history management
    • πŸ” Semantic search capabilities
  • Document Management:

    • πŸ“„ Support for multiple formats (PDF, TXT, DOCX, MD)
    • πŸ”„ Advanced document processing and vectorization
    • πŸ—‘οΈ Robust document deletion with resource cleanup
    • πŸ”Ž Full-text and semantic search
    • πŸ”„ Efficient vector store management
    • 🧹 Automatic resource cleanup and optimization
  • Modern Architecture:

    • πŸš€ LLaMA 3 70B via Groq for state-of-the-art responses
    • πŸ”— LangChain for RAG and memory management
    • πŸ’Ύ ChromaDB for efficient vector storage
    • 🎯 Streamlit for responsive UI
    • βš™οΈ Unified configuration management
    • πŸ€— Local inference with SentenceTransformers
  • Enhanced Logging:

    • πŸ“ Emoji-enhanced logging for better traceability
    • πŸ” Detailed error tracking and reporting
    • πŸ“Š Improved operation status feedback
  • Improved UI:

    • πŸ–₯️ Updated chat interface with emoji roles
    • πŸ“‹ Enhanced document management interface
    • πŸ”” Smooth notifications and feedback
    • 🎨 Better visual consistency
  • Document Upload Enhancements:

    • πŸ“€ Improved document processing capabilities

πŸš€ Quick Start

Prerequisites

Setup

  1. Clone the repository:

    git clone https://github.com/Hams-Ollo/Dynamic-AI-Assistant-base.git
    cd Dynamic-AI-Assistant-base
  2. Set up virtual environment:

    python -m venv venv
    
    # Windows
    .\venv\Scripts\activate
    
    # Unix/MacOS
    source venv/bin/activate
  3. Install dependencies:

    pip install -r requirements.txt
  4. Configure environment:

    cp .env.example .env
    # Add your Groq API key and other settings to .env
  5. Run the application:

    streamlit run frontend/Home.py

πŸ“ Project Structure

Dynamic-AI-Assistant-base/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ agents/
β”‚   β”‚   └── chat_agent.py        # Core chat and RAG functionality
β”‚   β”œβ”€β”€ utils/
β”‚   β”‚   β”œβ”€β”€ config.py           # Unified configuration management
β”‚   β”‚   β”œβ”€β”€ document_processor.py # Document handling
β”‚   β”‚   └── memory.py           # Memory management
β”‚   └── core/                   # Core application components
β”œβ”€β”€ frontend/
β”‚   β”œβ”€β”€ Home.py                 # Main entry point
β”‚   └── pages/
β”‚       β”œβ”€β”€ Chat.py             # Chat interface
β”‚       └── Document_Upload.py   # Document management
β”œβ”€β”€ data/                       # Data storage
β”‚   └── memory/                 # Vector store and memory
β”œβ”€β”€ docs/                       # Documentation
└── tests/                      # Test suite

βš™οΈ Configuration

The application uses a unified configuration system (app/utils/config.py) that manages:

  • Model settings (temperature, tokens, etc.)
  • API configurations
  • Memory management
  • Document processing parameters
  • Path management

Configuration can be customized through:

  1. Environment variables
  2. .env file
  3. Runtime configuration

🎯 Use Cases

  • Research Assistant: Process and analyze academic papers
  • Documentation Helper: Quick access to technical documentation
  • Knowledge Base: Create smart FAQ systems
  • Legal Assistant: Analyze legal documents
  • Training Support: Process training materials

πŸ”§ Customization

Key customization points:

  1. Document Processing:

    • Adjust chunking in document_processor.py
    • Configure embedding models
    • Modify vector store settings
  2. Chat Behavior:

    • Update prompts in chat_agent.py
    • Customize RAG integration
    • Adjust memory management
  3. User Interface:

    • Modify Streamlit components
    • Add new pages
    • Customize styling

🀝 Contributing

We welcome contributions! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Submit a pull request

πŸ“„ License

[Your License] - See LICENSE file for details

πŸ“¦ Versioning

This release is version 1.1.0, featuring new enhancements and improvements.

About

πŸ€– Advanced Multi-Agent AI Template: Production-ready system combining Groq's speed with LangChain's flexibility. Features RAG, document processing, and real-time agent collaboration. Built with Streamlit for instant deployment. Ready to customize and scale! πŸš€

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages