Contributing guide#

Thank you for your interest in contributing to LMCache! We welcome and accept all kinds of contributions, no matter how small or large. There are several ways you can contribute to the project:

  • Identify and report any issues or bugs.

  • Request or add support for a new model.

  • Suggest or implement new features.

  • Improve documentation or contribute a how-to guide.

If you’d like to support our community further, then answering queries, offering PR reviews, and assisting others are also impactful ways to contribute and take LMCache further.

Finally, you can support us by raising awareness about LMCache. Feel free to share our blog posts, check out our handle on X at LMCache and see the latest of what we are up to. If using LMCache helped your projects or product in any way, you can simply offer your appreciation by starring our repository!

Installation#

For different types of installation methods, please check our installation guide at our installation-guide.

License#

See the LICENSE file for details.

Running Tests#

To run tests (existing + newly added), use the following:

pip install -r requirements-dev.txt

# linting and formatting
bash format.sh

# Unit tests (run in root directory)
pytest

Contribution Guidelines#

Issues#

If you want to report a bug or have a request for a new feature, you can file a new issue.

Before you file a new issue, please check if a similar issue has already been filed: check existing issues.

If you discover a security vulnerability, please follow the instructions in: SECURITY.md.

Pull Requests and Adding Changes#

Please check the PR checklist in the PR template on how to create a new PR for contributing.

Writing Docstrings#

For all new code added, please write docstrings in the format shown here: sphinx-doc.

Thank You#

Thank you for your contribution to LMCache and making it a better, accessible tool for all.