Thank you for your interest in AIOS! Here's a guide to help you contribute to this project.
At first, you need to fork this copy and create your own version of repo.
pip install -r requirements.txt
We strongly recommend installing pre-commit to ensure proper formatting during development
Create a new branch for developing your creative features
git checkout -b your-feature
You can develop new features and then you need to make sure everything works as expected. Run our provided tests and make sure the existing ones go well. Your new tests are encouraged.
Add your test code into the tests/
directory if any, then run test via pytest
pytest -v tests/
============================================================================================================================= test session starts ==============================================================================================================================
platform darwin -- Python 3.11.9, pytest-8.1.1, pluggy-1.5.0 -- ""
cachedir: .pytest_cache
rootdir: ""
plugins: anyio-4.3.0
collected 7 items
tests/test_llms.py::test_closed_llm PASSED [ 14%]
tests/test_llms.py::test_open_llm PASSED [ 28%]
tests/test_lru_k_replacer.py::test_update_access_history PASSED [ 42%]
tests/test_lru_k_replacer.py::test_evict PASSED [ 57%]
tests/test_lru_k_replacer.py::test_set_evictable PASSED [ 71%]
tests/test_lru_k_replacer.py::test_invalid_block_id PASSED [ 85%]
tests/test_memory.py::test_mem_alloc PASSED
Please ensure your code is formatted correctly using pre-commit
We strongly recommend your git commit follows the format below
git commit -m <type>: <subject>
feat |
Add new features |
fix |
Fix bugs |
docs |
Modify documents like README, CONTRIBUTE |
style |
Modify code format like space and comma without changing code logic |
refactor |
Refactor code structure without adding new features or fixing new bugs |
perf |
Improve performance or user experience |
test |
Test features, including unit test and integration test |
chore |
Change the build procedure or add dependencies |
revert |
Revert to the previous version |