ManthanAI is a lightweight research assistant designed to simplify web research using state-of-the-art AI models like LLaMA (structured output) and Google Gemini (research report generation). Built on the LangGraph framework, it provides real-time streaming updates, allowing you to watch your research unfold live.
Inspired by GPT Researcher, ManthanAI focuses on generating search queries, gathering and summarizing web data, and providing real-time, streaming updates as the research progresses.
Here’s a look at the research flow:
- Safety Check: Ensures input topic safety before proceeding.
- Generate Queries: Generates search queries based on the topic.
- Conduct Research: For each query,:
- Search Web: Gathers relevant data from the web.
- Generate Research Summary: Compiles findings into a concise summaries.
- Write Report: Final research report is prepared.
- Backend: FastAPI backend manages research workflows and streaming.
- Frontend: Next.js and shadcn/ui offers a clean and interactive experience.
- AI-Powered Research: Uses LangGraph with LLaMA 70B and Google Gemini for web research.
- Safety First: Implemented content safety checks to ensure safe research topics.
- Real-Time Progress: Follow research updates and outcomes as they happen through the streaming API.
- Asynchronous Design: Handles multiple research tasks concurrently using asyncio for better performance.
- User Feedback: Allows users to upvote or downvote research results, stored with LangSmith.
- Clone the Repository:
git clone https://github.com/git-vish/manthan.git
cd manthan
-
Set Up Virtual Environment & Install Dependencies:
- pip:
cd backend python -m venv .venv source .venv/bin/activate pip install -r requirements.txt
- uv:
pip install uv cd backend uv sync --frozen source .venv/bin/activate
- pip:
-
Set Up Environment Variables:
Copy.env.example
to.env
and fill in the required fields.
cp .env.example .env
- Run the Backend:
uvicorn src.api:app --reload
- Install Frontend Dependencies:
cd ../frontend
npm install
- Set Up Environment Variables:
Copy.env.local.example
to.env.local
and configure API details:
cp .env.local.example .env.local
- Run the Frontend:
npm run dev
This project is licensed under the MIT License. Check the LICENSE file for more details.
Your feedback and contributions are welcome! Please feel free to open an issue or submit a pull request.