Matheel Documentation
Matheel compares source code through a Python API, CLI, and Gradio app. Start with a lightweight lexical baseline, add embeddings or code-aware metrics when needed, then evaluate the configuration on labeled data.
Getting Started
- Install and run a first comparison with the base package and no model downloads.
- Use the Gradio app locally or in the hosted demo.
- Choose similarity metrics for whole files, partial matches, structural comparisons, or retrieval.
Compare Code
| Task | Guide |
|---|---|
| Use edit distance, LCS, fuzzy matching, or token fingerprints | Lexical metrics |
| Select dense, static, or multi-vector embeddings | Embeddings and routing |
| Compare syntax, dataflow, or transformer token alignments | Code-aware metrics |
| Remove comments or normalize identifiers | Preprocessing |
| Understand what each scorer sees | Tokenization and limits |
| Split long files before embedding | Chunking |
| Inspect truncation and compare chunk aggregation | Long-file input coverage |
| Compare several configurations on one collection | Comparison suites |
Evaluate and Inspect Results
| Task | Guide |
|---|---|
| Load pair/retrieval data and measure quality | Datasets and evaluation |
| Bound expensive retrieval and audit candidate recall | Exact scoring and scalable retrieval |
| Interpret score ranges and select thresholds | Scoring and calibration |
| Measure controlled formatting, renaming and content changes | Robustness diagnostics |
| Run a small auditable experiment | Reproducible benchmark |
| Freeze comparable plagiarism evaluations | Versioned benchmark protocols |
| Inspect the declared public plagiarism benchmark | Plagiarism benchmark results |
| Rank methods and track exported runs | Leaderboards and run registry |
| Explore dataset maps and matched code regions | Visualization and pair explanations |
| Inspect errors, disagreements and grouped uncertainty | Result analysis |
| Reproduce results and prepare a benchmark contribution | Workflow recipes |
Extend and Contribute
- Local plagiarism detectors: optional JPlag and Dolos corpus adapters.
- Custom algorithms: prototype a scorer without changing Matheel internals.
- Contribute algorithms or datasets: add tested package support.
- Development: install contributor tools, run tests, build docs, and check packages.
Examples and Demos
Use the examples catalog to find runnable scripts and the notebook catalog for Colab workflows. The hosted Gradio demo provides an interactive starting point.