Skip to content

Add graph-based paper recommendations with PageRank#388

Open
grpinto wants to merge 2 commits into
thawn:developfrom
grpinto:feat/paper-recommendations
Open

Add graph-based paper recommendations with PageRank#388
grpinto wants to merge 2 commits into
thawn:developfrom
grpinto:feat/paper-recommendations

Conversation

@grpinto

@grpinto grpinto commented Jun 8, 2026

Copy link
Copy Markdown

Made with @raeesay

  • Added a new recommendations API endpoint to suggest papers using Personalized PageRank.
  • Integrated recommendation functionality into the web UI with toggle options for graph recommendations and explanations.
  • Enhanced paper card display to show recommendation scores and reasons.
  • Updated search functionality to support recommendations and explanations.
  • Introduced tests for recommendation logic and behavior.

- Added a new recommendations API endpoint to suggest papers using Personalized PageRank.
- Integrated recommendation functionality into the web UI with toggle options for graph recommendations and explanations.
- Enhanced paper card display to show recommendation scores and reasons.
- Updated search functionality to support recommendations and explanations.
- Introduced tests for recommendation logic and behavior.
@grpinto

grpinto commented Jun 8, 2026

Copy link
Copy Markdown
Author

Hello, I was at your workshop today and thought that this would be a cool idea to add. A recommendation paper system. I changed the code and made a PR, feel free to reject it if you think it does not suit your current goals.

@thawn

thawn commented Jun 9, 2026

Copy link
Copy Markdown
Owner

@grpinto thank you so much ❤️
I will look into it after HAICON

@thawn

thawn commented Jun 12, 2026

Copy link
Copy Markdown
Owner

@grpinto, @raeesay

Thanks again for your PR. I just had a look at the code changes and tried it out on my machine.

The feature looks super promising, however I would like to understand fully what is happening under the hood and I also have some ideas how we could integrate it with the "interesting papers" feature.

Understanding the feature

let me summarize how I understand the feature. Please correct me where I am wrong and extend where I missed things.

  1. a list of candidate papers is fetched based on the filter settings (to ensure that only papers from the currently selected conference are in the search results)
  2. a semantic search based on the user query is performed (same as before)
  3. the results from the semantic search are used as seeds to construct a graph based on authorships, shared keywords and shared sessions
  4. The graph is used to calculate a "personalized page rank" I do not understand yet, how that rank is calculated and would be super grateful for an explanation
  5. The search results are re-ranked based on the page rank and displayed
  6. Optional: the chat model is used to explain the ranking - I did not understand these explanations at all. The chat model likely needs more context about how the ranking algorithm works (just like me ;-) )

Suggestions from my side

  1. have you tested whether the personalized ranking makes the results more relevant for you?
  2. I think this feature could be super useful, if we combined it with the "interesting papers" feature. What I had in mind, would be to re-rank the semantic search results based on how well they align with the papers that are already selected in the interesting papers list - that way, we would get a truly personalized page rank

Cheers and thanks again for contributing to the project!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants