Sosed: a tool for finding similar software projects
Egor Bogomolov, Yaroslav Golubev, Artyom Lobanov, Vladimir Kovalenko,, Timofey Bryksin

TL;DR
Sosed is a tool that leverages fastText embeddings and clustering to find semantically similar software projects across 200 languages, aiding developers in project discovery and analysis.
Contribution
The paper introduces Sosed, a novel multi-language project similarity tool using embedding clustering and distribution comparison for effective project retrieval.
Findings
Successfully clusters sub-tokens into meaningful topics.
Effectively identifies similar projects based on cluster distribution.
Provides interpretable output with labeled sub-token clusters.
Abstract
In this paper, we present Sosed, a tool for discovering similar software projects. We use fastText to compute the embeddings of subtokens into a dense space for 120,000 GitHub repositories in 200 languages. Then, we cluster embeddings to identify groups of semantically similar sub-tokens that reflect topics in source code. We use a dataset of 9 million GitHub projects as a reference search base. To identify similar projects, we compare the distributions of clusters among their sub-tokens. The tool receives an arbitrary project as input, extracts sub-tokens in 16 most popular programming languages, computes cluster distribution, and finds projects with the closest distribution in the search base. We labeled subtoken clusters with short descriptions to enable Sosed to produce interpretable output. Sosed is available at https://github.com/JetBrains-Research/sosed/. The tool demo is…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Topic Modeling · Web Data Mining and Analysis
