HomePublicationsProgramsContributors
Start publication
HomePublicationsProgramsContributors

Table of contents

Code

Datasets

Files

AboutDocsPrivacyCopyrightContactSupport
© Ready Tensor, Inc.
Back to publications
Jul 12, 2025●68 reads●MIT License
CertifiedCertifiedunder the Multi-Agent System module in the Mastering AI Agents program.

Lumigo: A Q&A Chatbot for Academic Document Exploration

  • Gemini
  • Google Cloud Run
  • LangChain
  • LLM
  • Multi-Agents
  • s
    @sc310542
LikeBookmark

Table of contents

Lumigo: A Modular Multi-Agent System for Transparent Academic Search and Q&A

Lumigo-2.gif

Abstract / TL;DR

Unlike generic RAG systems, Lumigo supports document-specific queries, generates follow-up questions, and provides transparent source attribution for all responses. It also features a Thesis Fallback Retrieval Module that automatically searches and incorporates open-access academic theses when internal documents are insufficient, enriching the knowledge base dynamically. Leveraging MongoDB, HuggingFace Embeddings, and Vertex AI, it delivers semantically grounded insights through a clean, interactive UI.


1. Background and Motivation

Conventional Retrieval-Augmented Generation (RAG) systems often provide broad, non-transparent answers with limited user control, restricting their usefulness in academic research workflows.

Lumigo addresses these challenges with a multi-agent architecture that divides the search and answering process into specialized agents and tools, resulting in:

  • Explicit source citation and multi-document reasoning
  • User-driven selection and refinement of reference materials
  • A modular and extensible framework supporting complex academic workflows

2. Core Multi-Agent Architecture

flowchart TD style Start fill:#f0f0f0,stroke:#333,stroke-width:1px style AgentStart fill:#f0f0f0,stroke:#333,stroke-width:1px style AgentExpand fill:#f0f0f0,stroke:#333,stroke-width:1px style AgentRetrieve fill:#f0f0f0,stroke:#333,stroke-width:1px style AgentCite fill:#f0f0f0,stroke:#333,stroke-width:1px style AgentSynthesis fill:#f0f0f0,stroke:#333,stroke-width:1px style AgentDecide fill:#f0f0f0,stroke:#333,stroke-width:1px style End fill:#f0f0f0,stroke:#333,stroke-width:1px Start(["Start"]) Start --> AgentStart["AgentStart\nLLM: mode_decide_prompt"] AgentStart -->|mode = explore| AgentExpand["AgentExpand\nLLM: expand_prompt"] AgentStart -->|mode = direct| AgentRetrieve["AgentRetrieve"] AgentExpand --> AgentRetrieve AgentRetrieve --> AgentCite["AgentCite"] AgentCite --> AgentSynthesis["AgentSynthesis"] AgentSynthesis --> AgentDecide["AgentDecide"] AgentDecide -->|continue = True| AgentExpand AgentDecide -->|continue = False| End(["End"]) %% Tools used by AgentRetrieve subgraph "Tools used by AgentRetrieve" direction TB Tool1["VectorSearchTool"] Tool2["ThesisSearchTool"] Tool3["DocumentRerankTool"] end AgentRetrieve --> Tool1 AgentRetrieve --> Tool2 AgentRetrieve --> Tool3 %% Tools used by AgentCite subgraph "Tools used by AgentCite" Tool4["AnswerGenerationTool"] end AgentCite --> Tool4 %% Tools used by AgentDecide subgraph "Tools used by AgentDecide" Tool5["DecisionTool"] end AgentDecide --> Tool5

3. Specialized Tools and Their Roles

AgentTools UsedFunctionality Description
AgentRetrieveVectorSearchToolPerforms semantic vector retrieval across document indexes, enabling precise and context-aware search results.
ThesisSearchToolSearches academic theses repositories as a fallback to enrich content when internal documents are insufficient.
DocumentRerankToolRefines document ranking based on query context to surface the most relevant results.
AgentCiteAnswerGenerationToolGenerates citation-aware, Markdown-formatted answers that clearly link back to source documents for transparency.
AgentDecideDecisionToolDetermines whether to continue query expansion or terminate based on the evolving dialogue context, enabling dynamic multi-turn interactions.

This modular design enables flexibility, easy maintenance, and independent upgrading or replacement of individual components without disrupting the overall system.


4. Supporting RAG Component

Lumigo leverages Retrieval-Augmented Generation (RAG) as an underlying technology to bridge semantic retrieval with large language model (LLM) generation, while emphasizing transparency and user control via its multi-agent orchestration.

Key integrations include:

  • HuggingFace BGE embeddings for generating rich semantic vector representations.
  • MongoDB Atlas for scalable, efficient vector indexing and search.
  • Vertex AI LLMs for document summarization, question expansion, and grounded answer generation.

This layered approach ensures that RAG functions as a supporting engine, while specialized agents handle precise task orchestration and user interaction.


5. Data Presentation and User Analytics

Lumigo includes a dedicated analytics page that provides rich data presentations of user interactions to support ongoing system insights and improvements. Features include:

  • Exploratory Data Analysis (EDA) of Queries: Visualizations summarizing search patterns, query frequencies, and temporal trends.
  • Top Searched Documents: Ranking and metrics of most frequently accessed or referenced documents within the system.
  • Word Clouds of Search Terms: Visual representation of common keywords and topics users explore, facilitating quick understanding of research focus areas.

These data presentations help monitor user behavior, guide content curation, and inform system enhancements for a better academic search experience.

SCR-20250712-peiy.png


6. Deployment and Extensibility

Lumigo supports a variety of deployment environments to fit different user needs:

  • Local setups for individual researchers or development.
  • Containerized deployment using Docker and Docker Compose for scalable, reproducible environments.
  • Cloud-based deployment supporting scalability and integration with managed AI services.

Thanks to its modular agent-tool architecture, Lumigo can easily incorporate new agents or tools to support emerging research workflows or expand capabilities.


7. Getting Started

git clone git@gitlab.com:sc310542-group/Lumigo.git cd Lumigo bash script/build-docker-image.sh # Copy and configure environment variables cp .env.example .env # Fill in required keys like MONGODB_URI, OPENAI_API_KEY, VERTEX_PROJECT_ID, etc. cd deploy docker-compose up -d # For development mode bash script/run-dev-mode.sh streamlit run app.py --server.port=7860

8. Limitations and Future Work

Comparative Analysis

Lumigo is evaluated against traditional keyword-based academic search engines (e.g., Google Scholar), generic RAG systems, multi-agent Q&A frameworks, and domain-specific retrieval tools.

It offers better transparency via explicit source attribution and multi-agent orchestration, outperforming generic RAG models with limited explainability. Its modular design provides enhanced user control over references, unlike monolithic systems. While traditional engines cover more documents, Lumigo adds value through dynamic follow-up questioning and fallback retrieval of open-access theses.

Optimized vector indexing and caching ensure competitive response times despite multi-agent complexity.

Future Work

Future work will expand this analysis with quantitative metrics on larger academic datasets to further validate Lumigo's advantages and identify areas for optimization.

Current LimitationsPlanned Improvements
Fixed chunk sizes may break contextDynamic semantic chunking to preserve context integrity.
Limited file format supportExpand support to JPG PNG format for wider ingestion capabilities, e.g. images and videos
No quantitative benchmarkingImplement benchmarking with academic datasets to validate and improve system performance.

9. Licensing and Contributions

Lumigo is MIT licensed. Issues and feature requests can be submitted via GitLab. Contributions are highly welcomed to help grow and improve the system.

Table of contents

Your publication could be next!

Join us today and publish for free

Sign Up for free!

Table of contents

Code

  • Lumigo

Code

  • Lumigo