Collective Knowledge (CK) in a community project to develop open-source tools, platforms and automation recipes that can help researchers and engineers automate their repetitive, tedious and time-consuming tasks to build, run, benchmark and optimize AI, ML and other applications and systems across diverse and continuously changing models, data, software and hardware.
CK consists of several ongoing sub-projects:
-
Collective Mind framework (CM) - a very light-weight Python-based framework with minimal dependencies to help users implement, share and reuse cross-platform automation recipes to build, benchmark and optimize applications on any platform with any software and hardware. CM attempts to extends the
cmake
concept with reusable automation recipes and workflows written in plain Python or native OS scripts, accessible via a human readable interface with simple tags, and shareable in public and private repositories in a decentralized way. Furthermore, in comparison with cmake, these automation recipes can not only detect missing code but also download artifacts (models, data sets), preprocess them, build missing dependencies, install them and run the final code on diverse platforms in a unified and automated way. You can learn more about the CM concept from this white paper and the ACM REP'23 keynote.-
CM4MLOPS - a collection of portable, extensible and technology-agnostic automation recipes with a human-friendly interface (aka CM scripts) to unify and automate all the manual steps required to compose, run, benchmark and optimize complex ML/AI applications on diverse platforms with any software and hardware: see online cKnowledge catalog, online MLCommons catalog and source code.
-
CM4ABTF - a unified CM interface and automation recipes to run automotive benchmark across different models, data sets, software and hardware from different vendors.
-
-
Collective Knowledge Playground - an external platform being developed by cKnowledge to list CM scripts similar to PYPI, aggregate AI/ML Systems benchmarking results in a reproducible format with CM workflows, and organize public optimization challenges and reproducibility initiatives to find the most performance and cost-effective AI/ML Systems.
-
GUI to run modular benchmarks - such benchmarks are composed from CM scripts and can run via a unified CM interface.
-
MLCommons docs to run MLPerf inference benchmarks from command line via CM
-
We are preparing new projects based on user feedback:
- The next generation of CM (prototyping stage)
- The crowd-testing infrastructure for CM4MLOps and CM4MLPerf (brainstorming stage)
- Copyright (c) 2021-2024 MLCommons
- Copyright (c) 2014-2021 cTuning foundation
MLCommons is updating the CM documentation based on user feedback - please check stay tuned for more details.
If you found CM useful, please cite this article: [ ArXiv ], [ BibTex ].
You can learn more about the motivation behind these projects from the following articles and presentations:
- "Enabling more efficient and cost-effective AI/ML systems with Collective Mind, virtualized MLOps, MLPerf, Collective Knowledge Playground and reproducible optimization tournaments": [ ArXiv ]
- ACM REP'23 keynote about the MLCommons CM automation framework: [ slides ]
- ACM TechTalk'21 about automating research projects: [ YouTube ] [ slides ]
Collective Knowledge (CK) and Collective Mind (CM) were created by Grigori Fursin, sponsored by cKnowledge.org and cTuning.org, and donated to MLCommons to benefit everyone. Since then, this open-source technology (CM, CM4MLOps, CM4MLPerf, CM4ABTF, CM4Research, etc) is being developed as a community effort thanks to all our volunteers, collaborators and contributors!