Skip to content

bhqanhuit/PanelMind-core

Repository files navigation

PanelMind Core

Venue-aware multi-agent academic review pipeline with FastAPI, LangGraph, and modular LLM providers.

License Python FastAPI

PanelMind is an advanced AI-powered system designed to simulate a roundtable academic review process. It orchestrates multiple AI agents acting as reviewers, cross-validators, and meta-reviewers to provide comprehensive, venue-specific feedback on academic papers.

🚀 Highlights

  • Multi-Agent Orchestration: Uses LangGraph to manage complex workflows involving independent reviews, cross-validation, and meta-reviews.
  • Venue-Aware: Tailors reviews based on specific venue guidelines (e.g., ICLR, NeurIPS) using configurable YAML definitions.
  • Modern Backend: Built with FastAPI, supporting SSE (Server-Sent Events) for real-time workflow updates.
  • Modular Architecture: Clean separation between Core (Agent Logic), Backend (API/DB), and Shared components.
  • Pluggable LLM Layer: Supports OpenAI, Gemini, Anthropic, Groq, and xAI via a unified interface.
  • Observability: Integrated with LangTrace and OpenTelemetry for deep tracing of agent interactions.
  • PDF Ingestion: Robust PDF parsing using Docling.

📂 Project Structure

The codebase is organized into three main domains:

PanelMind/
├── backend/           # Server-side logic
│   ├── api/           # FastAPI routes and app factory
│   ├── database/      # SQLAlchemy models and DB connection
│   ├── services/      # Business logic (SSE, Event Store)
│   ├── storage/       # S3/File storage handlers
│   └── auth/          # Authentication & Security
├── core/              # AI Agent Engine
│   ├── agents/        # Reviewer, Cross-Validator, Meta-Reviewer classes
│   ├── workflows/     # LangGraph state machine definitions
│   ├── llm/           # LLM Client, Providers, and Parsers
│   ├── prompts/       # Jinja2 prompt templates
│   └── processors/    # PDF processing (Docling)
└── shared/            # Common utilities
    ├── models/        # Pydantic domain models
    ├── config/        # Configuration management
    ├── types/         # Shared type definitions
    └── monitor/       # Tracing and logging

🛠️ Installation

  1. Clone the repository

    git clone <your-repo-url>
    cd PanelMind-core
  2. Set up Python environment

    python3.11 -m venv venv
    source venv/bin/activate
  3. Install dependencies

    pip install -r requirements.txt
  4. Configuration Copy the example environment file and populate it with your API keys.

    cp .env.example .env

    Required keys: OPENAI_API_KEY, GEMINI_API_KEY, etc., depending on the providers you use.

🚦 Usage

Running the API Server

Start the FastAPI backend with hot-reloading:

uvicorn PanelMind.backend.api.app:app --reload
  • API Docs: Visit http://127.0.0.1:8000/docs for Swagger UI.
  • Health Check: http://127.0.0.1:8000/health

Running the CLI Pipeline

You can run a review workflow directly from the command line:

python -m PanelMind.backend.cli.run_review --pdf assets/pdfs/YourPaper.pdf --venue ICLR

Running Tests

To verify the pipeline integrity:

python test_pipeline.py

🧠 Workflow Architecture

The review process follows a structured graph:

  1. Preprocess: PDF is parsed, and text is extracted.
  2. Independent Review: Multiple agents (e.g., Technical Expert, Novelty Expert) generate initial reviews based on venue guidelines.
  3. Cross-Validation: Agents critique each other's reviews to identify gaps or inconsistencies.
  4. Meta-Review: A senior agent synthesizes all reviews and critiques into a final decision and summary.

📊 Observability

PanelMind uses LangTrace for tracing LLM calls.

  • To enable, set LANGTRACE_API_KEY in your .env.
  • To reduce noise, SQLite instrumentation is disabled by default in PanelMind/__init__.py.

🤝 Contributing

  1. Fork the repository.
  2. Create a feature branch (git checkout -b feature/amazing-feature).
  3. Commit your changes (git commit -m 'Add amazing feature').
  4. Push to the branch (git push origin feature/amazing-feature).
  5. Open a Pull Request.

📄 License

Distributed under the MIT License. See LICENSE for details.

About

Your Reliable Peer-Review System

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages