Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in README
  • Academic publication links
    Links to: arxiv.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.9%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Basic Info
  • Host: GitHub
  • Owner: madara88645
  • License: mit
  • Language: Python
  • Default Branch: main
  • Size: 146 KB
Statistics
  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created 7 months ago · Last pushed 7 months ago
Metadata Files
Readme License Citation

README.md

PaperHunterAgent - QuantumResearchChain

A sophisticated multi-agent system designed to hunt, analyze, and map quantum science research papers. The system consists of three specialized agents that work together to provide comprehensive research insights.

🤖 Agents Overview

1. PaperHunterAgent

Goal: Find the most relevant and NEW quantum-science papers every day.

Features: - Searches arXiv categories: quant-ph, hep-th, cond-mat, cs.QC - Queries Semantic Scholar API for citation analysis - Filters papers by keywords, language, and length - Returns JSON formatted results with relevance scores

2. SummarizerAgent

Mission: Create concise but information-dense summaries of quantum science papers.

Features: - PDF text extraction and processing (from URL or local file) - LaTeX equation identification - Technical term glossary generation - Structured Markdown output format - Critical assessment and contribution analysis

3. ConceptMapAgent

Objective: Transform summaries into machine-readable concept graphs.

Features: - Entity extraction from research summaries - Relationship mapping between concepts - Mermaid diagram generation - Quantum physics domain knowledge integration

🚀 Quick Start

Prerequisites

bash pip install -r requirements.txt cp .env.example .env # add your Semantic Scholar API key

Basic Usage

```python from src.paperhunteragent import PaperHunterAgent from src.summarizeragent import SummarizerAgent from src.conceptmap_agent import ConceptMapAgent

Define your research interests

keywords = ["quantum error correction", "surface code", "logical qubit"]

Initialize agents

hunter = PaperHunterAgent(user_keywords=keywords) summarizer = SummarizerAgent() mapper = ConceptMapAgent()

Hunt for papers

papersjson = hunter.huntpapers(maxpapers=10) papers = json.loads(papersjson)

Summarize a paper

if papers: summary = summarizer.createsummary(papers[0]) conceptmap = mapper.createconceptmap(summary) print(concept_map) ```

Run Demo

```bash python main.py

Run in Docker

docker build -t paperhunter . docker run --rm -it --env-file .env paperhunter ```

📋 Output Formats

PaperHunterAgent Output (JSON)

json [ { "title": "Quantum Error Correction with Surface Codes", "authors": ["Last, F.", "Another, A."], "arxiv_id": "2401.00001", "doi": "10.1000/example or null", "published": "2024-01-15", "url_pdf": "https://arxiv.org/pdf/2401.00001.pdf", "abstract": "Abstract text...", "relevance_score": 85 } ]

SummarizerAgent Output (Markdown)

```markdown

Paper Title

| Field | Value | |-------|-------| | Authors | Author1, Author2 | | Published | 2024-01-15 | | Primary Topic | Quantum Error Correction | | Key Equations | Eq. 1: H = ..., Eq. 2: |ψ⟩ = ... |

TL;DR (≤ 120 words)

Concise summary of the paper...

Main Contributions

• First contribution • Second contribution

Critical Assessment

Why it matters: Explanation... Potential weaknesses: Limitations...

Glossary

| Term | Definition | |------|------------| | Qubit | Quantum bit | ```

ConceptMapAgent Output (Mermaid)

mermaid graph TD quantum_error_correction[Quantum Error Correction] -->|uses| surface_code[Surface Code] surface_code -->|depends_on| syndrome_measurement[Syndrome Measurement] logical_qubit[Logical Qubit] -->|depends_on| physical_qubit[Physical Qubit]

🔧 Configuration

Search Parameters

  • arXiv Categories: quant-ph, hep-th, cond-mat, cs.QC
  • Time Windows: Last 24h (expandable to ±7 days if <3 papers found)
  • Paper Limits: 10 papers maximum output
  • Language Filter: English only
  • Length Filter: ≥6 pages (estimated)

Filtering Rules

  • Excludes duplicates by arXiv ID or DOI
  • Must match at least one user-defined keyword
  • Automatic relevance scoring (0-100)

🛠️ Advanced Usage

Custom Keywords

```python

Define domain-specific keywords

custom_keywords = [ "quantum machine learning", "variational quantum eigensolvers", "quantum approximate optimization", "quantum neural networks" ]

hunter = PaperHunterAgent(userkeywords=customkeywords) ```

Batch Processing

```python

Process multiple papers

papers = json.loads(hunter.huntpapers(maxpapers=10))

summaries = [] concept_maps = []

for paper in papers: summary = summarizer.createsummary(paper) if "⚠️ Unable to parse PDF" not in summary: summaries.append(summary) conceptmaps.append(mapper.createconceptmap(summary)) ```

📊 API Integrations

arXiv API

  • Direct Python library integration
  • Real-time paper discovery
  • Metadata extraction

Semantic Scholar API

  • Citation network analysis
  • Cross-reference discovery
  • Enhanced paper relationships

🔍 Logging and Monitoring

The system includes comprehensive logging: python import logging logging.basicConfig(level=logging.INFO)

Logs are saved to quantum_research.log and include: - Search progress and results - PDF processing status - Error handling and recovery - Performance metrics

🚦 Error Handling

Common Issues and Solutions

  1. PDF Parsing Failures

    • Fallback from pdfplumber to PyPDF2
    • Graceful degradation with "⚠️ Unable to parse PDF" message
  2. API Rate Limits

    • Built-in retry mechanisms
    • Respectful request spacing
  3. Network Timeouts

    • 30-second PDF download timeout
    • Connection error recovery

📈 Performance Considerations

  • Batch Size: Recommended max 10 papers per hunt
  • PDF Processing: Can be slow for large documents
  • Memory Usage: PDF content temporarily stored in memory
  • Network: Requires stable internet for API calls

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Add tests for new functionality
  4. Follow the existing code style
  5. Submit a pull request

📑 Citation

If you use this project in your research, please cite it using the information provided in CITATION.cff.

📝 License

This project is open source. Please check the license file for details.

🔗 Related Resources

📞 Support

For issues, questions, or contributions, please open an issue in the repository.


Happy Quantum Research Hunting! 🔬⚛️

Owner

  • Login: madara88645
  • Kind: user

Citation (CITATION.cff)

cff-version: 1.2.0
title: "PaperHunterAgent"
message: "If you use this software, please cite it as below."
authors:
  - family-names: Doe
    given-names: Jane
    affiliation: Example University
    orcid: "0000-0000-0000-0000"
date-released: 2024-01-01

GitHub Events

Total
  • Push event: 16
  • Pull request review comment event: 4
  • Pull request review event: 10
  • Pull request event: 10
  • Create event: 7
Last Year
  • Push event: 16
  • Pull request review comment event: 4
  • Pull request review event: 10
  • Pull request event: 10
  • Create event: 7

Dependencies

.github/workflows/ci.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
Dockerfile docker
  • python 3.12-slim build
pyproject.toml pypi
requirements.txt pypi
  • PyPDF2 >=3.0.1
  • arxiv >=2.1.0
  • beautifulsoup4 >=4.12.2
  • lxml >=4.9.3
  • pdfplumber >=0.10.0
  • python-dateutil >=2.8.2
  • python-dotenv >=1.0.1
  • requests >=2.31.0