shandu  by jolovicdev

AI research system for comprehensive knowledge synthesis

created 5 months ago
621 stars

Top 53.9% on sourcepulse

GitHubView on GitHub
1 Expert Loves This Project
Project Summary

Shandu is an AI-driven research system designed for academics, market analysts, and content creators seeking comprehensive, multi-source knowledge synthesis. It automates the research process from query clarification to report generation, leveraging advanced LLMs and iterative web exploration to produce well-cited, structured reports.

How It Works

Shandu employs a state-based workflow managed by LangGraph, enabling recursive topic exploration. It begins with a user query, breadth, and depth parameters, then generates search engine queries (SERPs). Processed results feed into "Learnings" and "Directions." If the depth parameter is not met, it generates new directions based on prior goals, new questions, and learnings, feeding back into the research process. Once complete, it generates a Markdown report. This iterative, adaptive approach allows for dynamic adjustment of search strategies based on discovered information.

Quick Start & Requirements

  • Install from PyPI: pip install shandu
  • Install from source: git clone https://github.com/jolovicdev/shandu.git && cd shandu && pip install -e .
  • Configure API settings for LLM providers.
  • Run research: shandu research "Your research query" --depth 2 --breadth 4 --output report.md
  • AI Search: shandu aisearch "Who is the current sitting president of United States?" --detailed
  • Python API: from shandu.agents import ResearchGraph; researcher = ResearchGraph(); results = researcher.research_sync(query="Your research query", depth=3, breadth=4)
  • Requires API keys for LLM providers (e.g., OpenAI).

Highlighted Details

  • Intelligent state-based workflow using LangGraph.
  • Iterative deep exploration with dynamic depth and breadth control.
  • Multi-source information synthesis from search engines, web content, and academic sources (ArXiv).
  • Enhanced web scraping with dynamic JS rendering and content extraction.
  • Smart source evaluation for credibility and relevance.
  • Comprehensive report generation with proper citation management.
  • Parallel processing architecture for efficient multi-query execution.

Maintenance & Community

The project is a personal deep dive into LangChain and LangGraph by jolovicdev. It explicitly states a need for contributors. No community links (Discord/Slack) or roadmap are provided in the README.

Licensing & Compatibility

Licensed under the MIT License. This license is permissive and generally compatible with commercial use and closed-source linking.

Limitations & Caveats

The project is presented as an idea needing contributors, suggesting it may be in early development or experimental stages. No specific limitations or known bugs are detailed, but the "idea" status implies potential instability or incomplete features.

Health Check
Last commit

1 month ago

Responsiveness

1 day

Pull Requests (30d)
0
Issues (30d)
0
Star History
38 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.