Inspiration
Paper after paper on AI safety, and we still couldn't tell what had actually been demonstrated and what was only a hypothesis. Finding an unanswered research question was even harder. We wanted to build something that could connect findings across papers, show the evidence behind them, and help us identify what might still be missing. That's how Research Graph started.
What it does
Research Graph turns research papers into an interactive knowledge graph. For our demo, we used 30 papers on AI scheming, alignment faking, and sandbagging, producing 1,630 nodes and 2,327 relationships. Users can search for topics, explore connections, click claims to inspect their source quotations and page numbers, and compare two papers side by side. Our Connection Reveal feature visually traces relationships between papers, showing how they connect through shared concepts and existing graph evidence. We also built a rule-based gap engine that identifies six types of potential research gaps. For example, it can highlight behaviors without a represented detection method or claims without an identified test in our dataset. These are possible research opportunities, not proof that nobody has studied them.
How we built it
Frontend: React, TypeScript, and Vite, with Cytoscape.js for interactive graph visualization. Data Pipeline: Extracts research entities, relationships, and evidence from scientific papers. Claims retain their source quotations, page numbers, and extraction-assigned observed or hypothesized labels. Gap engine: Uses six categories of graph-based rules to identify missing or weakly represented relationships. Grounding check:Uses Python and PyMuPDF to match extracted quotations against the original PDFs without additional AI calls. Citation matching: Identifies references between papers using bibliographic information and arXiv identifiers.
Challenges we ran into
Too many nodes: With 1,630 nodes, displaying everything at once made the graph difficult to understand. AI extraction errors: Similar concepts were sometimes split into separate entities, while unrelated concepts were occasionally grouped together. These errors could create misleading research gaps. Making evidence traceable: Connecting a claim to its original source quotation and page was more difficult than expected, especially with inconsistent PDF formatting. Distinguishing gaps from missing data: A missing relationship in our graph doesn't necessarily mean the research hasn't been done. We had to make those limitations clear.
Accomplishments that we're proud of
One of our biggest accomplishments was building a working research exploration platform that connects scientific findings while keeping their supporting evidence accessible. We built a system where claims can be traced back to their original quotations and page numbers, making it easier for researchers to inspect the evidence behind extracted relationships. We also developed an automated grounding pipeline that matched 1,148 out of 1,152 extracted quotations exactly against their original PDFs and flagged the remaining cases for review.
Our research gap engine generated 60 candidate gaps. We also performed AI-assisted review to identify candidates that appeared addressed, partially addressed, or potentially unsupported. These results are labeled as automated assessments rather than human-confirmed discoveries.
We also built interactive features like paper comparison, citation exploration, and Connection Reveal to help researchers understand relationships between studies visually. What we're especially proud of is that the core graph exploration, comparison, and grounding-based features work without requiring live AI requests.
What we learned
While building Research Graph, we learned that finding connections between research papers is only part of the challenge. What matters just as much is being able to trace those connections back to their original sources. We realized that even simple graph-based rules can help identify meaningful research gaps without relying entirely on AI-generated conclusions. At the same time, we learned that missing relationships don't always mean something hasn't been researched, and finding a matching quotation doesn't necessarily prove a claim is correct. These challenges taught us the importance of verifying our results, acknowledging limitations, and making the system transparent so researchers can evaluate the findings themselves.
What's next for ResearchGraph
Moving forward, we want to make Research Graph more flexible by allowing researchers to upload their own papers and build knowledge graphs across different research fields. We also plan to improve how the system identifies duplicate concepts, connects citations between papers, and allows researchers to review and validate potential research gaps directly within the application. Eventually, we hope to integrate newly published research automatically and track whether previously identified gaps have been addressed. Our overall goal is to make research exploration easier by helping researchers understand how studies connect, examine the evidence behind them, and discover new directions for future research.
Built With
- css3
- cytoscape.js
- eact
- fastapi
- git
- html5
- javascript
- knowledge-graph
- llm
- natural-language-processing
- networkx
- node.js
- oxlint
- pymupdf
- python
- sha-256
- tsx
- typescript
- vite