CoolFace
Modelpublic

bug-localization/BLAZE

sourceHugging Facemitupdated 1y agoView on Hugging Face
0likes20downloads
Model Card

๐Ÿ”ฅ BLAZE: Cross-Language and Cross-Project Bug Localization

BLAZE is a transformer-based bug localization model that works across languages and software projects. It enhances source-bug alignment using dynamic chunking and hard example learning, enabling precise bug localization in unseen codebases and programming languages.

![Paper](https://doi.org/10.1109/TSE.2025.3579574) ![Dataset](https://zenodo.org/records/15122980)


โœจ Highlights

  • โ€”๐Ÿ“Œ Cross-project & cross-language bug localization with no re-training
  • โ€”๐Ÿ“ Dynamic Chunking handles long files within LLM context windows
  • โ€”๐Ÿง  Hard Example Learning improves generalization and ranking accuracy
  • โ€”๐ŸŒ Supports Java, Python, C++, JavaScript, and Go
  • โ€”๐Ÿ“Š Outperforms both cross-project and embedding-based baselines

๐Ÿ“‚ Dataset: BeetleBox

BeetleBox is the largest curated dataset for bug localization:

  • โ€”23,782 real-world bugs
  • โ€”29 repositories
  • โ€”5 programming languages
  • โ€”Cleaned and de-duplicated to remove overlaps with training data

๐Ÿ“ฅ Available on Zenodo ๐Ÿ“š Also listed on Hugging Face Datasets: bug-localization/BeetleBox


๐Ÿš€ Demo & Usage

All code, usage instructions, model files, and scripts are available via:

๐Ÿ‘‰ [BLAZE Repository & Demo (Zenodo)](https://zenodo.org/records/15122980)


๐Ÿ“ Citation

Please cite the following paper if you use BLAZE or BeetleBox in your work:

bibtex
@article{Chakraborty2025,
  title = {BLAZE: Cross-Language and Cross-Project Bug Localization via Dynamic Chunking and Hard Example Learning},
  ISSN = {2326-3881},
  url = {http://dx.doi.org/10.1109/TSE.2025.3579574},
  DOI = {10.1109/TSE.2025.3579574},
  journal = {IEEE Transactions on Software Engineering},
  publisher = {Institute of Electrical and Electronics Engineers (IEEE)},
  author = {Chakraborty, Partha and Alfadel, Mahmoud and Nagappan, Meiyappan},
  year = {2025},
  pages = {1--14}
}