paperhunteragent
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
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
Metadata Files
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
PDF Parsing Failures
- Fallback from pdfplumber to PyPDF2
- Graceful degradation with "⚠️ Unable to parse PDF" message
API Rate Limits
- Built-in retry mechanisms
- Respectful request spacing
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
- Fork the repository
- Create a feature branch
- Add tests for new functionality
- Follow the existing code style
- 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
- Repositories: 1
- Profile: https://github.com/madara88645
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
- actions/checkout v3 composite
- actions/setup-python v4 composite
- python 3.12-slim build
- 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