Skip to content

Ways to Contribute

XLM welcomes contributions of all kinds: code, documentation, bug reports, feature ideas, and helping others in Discussions.

Start with the Contributing hub for environment setup, testing, and pull request workflow. Then follow the guide that matches what you want to do:

Contribution type When to use it Guide
Add a maintained model Ship a new model family inside this repo under xlm-models/ Adding a model
Add an external model Develop and publish a model in a separate repo External models
Add a task or dataset Preprocess function + dataset YAMLs in src/xlm/ Adding a task or dataset
Run your model on your task External task + model wiring via Hydra YAML Running your model on your task
Core framework development Change training infra in src/xlm/ (harness, datamodule, metrics, CLI) Core development
Docs, bugs, and issues Fix docs, report bugs, or propose features without code changes Docs and issues

Before you start

  1. Search existing Issues — someone may already be working on it.
  2. Open an issue for non-trivial work (use the matching issue template when available).
  3. Set up your environment — follow Install from source in the Contributing hub. For what each requirements file contains, see Dependencies.

Good first issues

Looking for a small starter task? See Good first issue.

Pull requests

Push your branch to your fork and open a PR against main. Use the pull request template and link related issues.