A ranked list of awesome machine learning Python libraries. Updated weekly.
This curated list contains 910 awesome open-source projects with a total of 3.6M stars grouped into 34 categories. All projects are ranked by a project-quality score, which is calculated based on various metrics automatically collected from GitHub and different package managers. If you like to add or update projects, feel free to open an issue, submit a pull request, or directly edit the projects.yaml. Contributions are very welcome!
Discover other best-of lists or create your own.
Subscribe to our newsletter for updates and trending projects.
General-purpose machine learning and deep learning frameworks.
Apache-2

GitHub ( 4.3K 88K 240K 37K - 6% open 02.02.2023):
git clone https://github.com/tensorflow/tensorflow
PyPi ( 15M / month 14K 18.11.2022):
pip install tensorflow
Conda ( 4M 08.01.2023):
conda install -c conda-forge tensorflow
Docker Hub ( 71M 2.1K 02.02.2023):
docker pull tensorflow/tensorflow
BSD-3

BSD-3
Apache-2

Apache-2

Apache-2
GitHub ( 160 2K 450 1.8K - 2% open 02.02.2023):
git clone https://github.com/jina-ai/jina
PyPi ( 57K / month 2 06.07.2022):
pip install jina
Conda ( 36K 16.08.2022):
conda install -c conda-forge jina-core
Docker Hub ( 1.2M 7 02.02.2023):
docker pull jinaai/jina
BSD-3
MIT
Apache-2

Apache-2

Apache-2
Apache-2
Apache-2
GitHub ( 64 810 1.5K 670 - 8% open 30.05.2022):
git clone https://github.com/XiaoMi/mace
Apache-2
Apache-2
BSL-1.0
GPL-3.0

BSD-3
MIT

AGPL-3.0
MIT
BSD-3
Apache-2
MIT

MIT
General-purpose and task-specific data visualization libraries.
Python-2.0
MIT


BSD-3
Apache-2

GitHub ( 76 570 7 610 - 16% open 02.02.2023):
git clone https://github.com/finos/perspective
PyPi ( 4.1K / month 9 06.06.2022):
pip install perspective-python
Conda ( 250K 19.01.2023):
conda install -c conda-forge perspective
npm ( 1.3K / month 1 20.01.2023):
npm install @finos/perspective-jupyterlab
Apache-2

Apache-2


MIT
MIT

MIT
MIT
LGPL-3.0
MIT

MIT-0

BSD-3

MIT
MIT

MIT
Apache-2

BSD-3
MIT
Apache-2
MIT
MIT

Apache-2
Libraries for processing, cleaning, manipulating, and analyzing text data as well as libraries for NLP tasks such as language detection, fuzzy matching, classification, seq2seq learning, conversational AI, keyword extraction, and translation.
Apache-2


Apache-2

Apache-2
Apache-2
Apache-2

BSD-3
Apache-2

MIT
spacy
MIT
Apache-2
Unlicense
MIT
MIT
GitHub ( 46 730 310 - 16% open 05.12.2022):
git clone https://github.com/Ciphey/Ciphey
PyPi ( 18K / month 06.06.2021):
pip install ciphey
Docker Hub ( 17K 9 17.12.2022):
docker pull remnux/ciphey
MIT
Apache-2
GitHub ( 30 170 380 - 9% open 13.01.2023):
git clone https://github.com/qdrant/qdrant
MIT

Apache-2
Apache-2
Apache-2
huggingface
Apache-2
MIT


MIT
MIT
GitHub ( 12 1K 360 - 1% open 03.01.2023):
git clone https://github.com/thunlp/OpenNRE
BSD-3
MIT
GPL-2.0
MIT
BSD-3
MIT
GPL-3.0
GPL-3.0
MIT

Apache-2
Apache-2

BSD-3

Apache-2

MIT
BSD-1-Clause
BSD-3
Apache-2

MIT

MIT
Apache-2

BSD-3
GPL-3.0
MIT
Apache-2
spacy
MIT
MIT
Apache-2
MIT

MIT
MIT
MIT
MIT
spacy
MIT

Apache-2
MIT

Libraries for image & video processing, manipulation, and augmentation as well as libraries for computer vision tasks such as facial recognition, object detection, and classification.
BSD-2
BSD-3

Apache-2

Apache-2

MIT

Apache-2

MIT

MIT
Apache-2

MIT

MIT

BSD-3
Apache-2

Apache-2
MIT

Apache-2

Apache-2

MIT

Apache-2
Apache-2

GitHub ( 25 1.9K 490 - 42% open 07.03.2022):
git clone https://github.com/facebookresearch/detr
Apache-2

Apache-2

GitHub ( 58 240 170 - 65% open 01.02.2023):
git clone https://github.com/google-research/scenic
MIT
Zlib
MIT
Unlicensed

MIT
BSD-3

MIT

PIL
MIT

Apache-2

BSD-3

MIT
MIT
MIT
MIT
huggingface
BSD-3

Libraries for graph processing, clustering, embedding, and machine learning tasks.
MIT

Apache-2
BSD-3

Apache-2

BSD-3

MIT

MIT

Apache-2

MIT
GitHub ( 11 920 360 - 2% open 03.11.2022):
git clone https://github.com/thunlp/OpenKE
MIT

GitHub ( 9 910 22 64 - 60% open 21.06.2022):
git clone https://github.com/shenweichen/GraphEmbedding
MIT

GitHub ( 11 480 100 - 4% open 02.11.2022):
git clone https://github.com/thunlp/OpenNE
GPL-2.0
Apache-2

LGPL-3.0
GPL-3.0
GPL-3.0
Apache-2

GPL-3.0
MIT
MIT
Apache-2
BSD-3

Apache-2

MIT

Apache-2
Libraries for audio analysis, manipulation, transformation, and extraction, as well as speech recognition and music generation tasks.
BSD-2

BSD-3
Apache-2

BSD-3
Apache-2
MIT
MPL-2.0

GPL-3.0
AGPL-3.0
BSD-3
AGPL-3.0
MPL-2.0
MIT
MIT
ISC
MIT

Libraries to load, process, analyze, and write geographic data as well as libraries for spatial analysis, map visualization, and geocoding.
Apache-2
GitHub ( 85 980 7.1K 520 - 5% open 19.01.2023):
git clone https://github.com/Esri/arcgis-python-api
PyPi ( 69K / month 28 02.06.2022):
pip install arcgis
Docker Hub ( 7.7K 40 17.06.2022):
docker pull esridocker/arcgis-api-python-notebook
MIT

MIT
GPL-3.0
GPL-3.0
BSD-3
BSD-2
AGPL-3.0
BSD-3

MIT

MIT
Libraries for algorithmic stock/crypto trading, risk analytics, backtesting, technical analysis, and other tasks on financial data.
MIT
Apache-2
BSD-3
MIT
GitHub ( 28 1.2K 260 - 22% open 09.08.2022):
git clone https://github.com/CryptoSignal/crypto-signal
Docker Hub ( 140K 8 03.09.2020):
docker pull shadowreaver/crypto-signal
Apache-2

Apache-2
Apache-2
Apache-2
GPL-3.0
NCSA
Apache-2
Apache-2
Apache-2
Apache-2
AGPL-3.0
LGPL-3.0
MIT
GPL-3.0
GPL-3.0
Libraries for forecasting, anomaly detection, feature extraction, and machine learning on time-series and sequential data.
MIT

Apache-2
GitHub ( 75 580 180 850 - 21% open 26.01.2023):
git clone https://github.com/unit8co/darts
PyPi ( 11K / month 3 22.06.2022):
pip install u8darts
Conda ( 21K 12.01.2023):
conda install -c conda-forge u8darts-all
Docker Hub ( 370 12.01.2023):
docker pull unit8/darts
MIT
Apache-2
Apache-2
Apache-2
BSD-3
Apache-2
Apache-2
BSD-3
MPL-2.0
MIT
Apache-2
MIT
Apache-2
Libraries for processing and analyzing medical data such as MRIs, EEGs, genomic data, and other medical imaging formats.
BSD-3

Apache-2

GitHub ( 3 290 130 - 33% open 04.04.2022):
git clone https://github.com/MIC-DKFZ/medicaldetectiontoolkit
Apache-2

GPL-3.0
Apache-2

Apache-2
Apache-2
Apache-2

MIT
MIT
Libraries for processing tabular and structured data.
MIT

MIT

MIT
BSD-3
Libraries for optical character recognition (OCR) and text extraction from images or videos.
Apache-2
Apache-2

GitHub ( 5 63 13 - 15% open 24.08.2022):
git clone https://github.com/aashrafh/Mozart
MIT

MIT
General-purpose data containers & structures as well as utilities & extensions for pandas.
best-of-python - Data Containers ( 2.8K) - Collection of data-container, dataframe, and pandas-..
Libraries for loading, collecting, and extracting data from a variety of data sources and formats.
best-of-python - Data Extraction ( 2.8K) - Collection of data-loading and -extraction libraries.
Libraries for web scraping, crawling, downloading, and mining as well as libraries.
best-of-web-python - Web Scraping ( 1.8K) - Collection of web-scraping and crawling libraries.
Libraries for data batch- and stream-processing, workflow automation, job scheduling, and other data pipeline tasks.
best-of-python - Data Pipelines ( 2.8K) - Libraries for data batch- and stream-processing,..
Libraries that provide capabilities to distribute and parallelize machine learning tasks across large-scale compute infrastructure.
BSD-3
MIT

GitHub ( 160 1K 690 1.3K - 46% open 02.02.2023):
git clone https://github.com/microsoft/DeepSpeed
PyPi ( 370K / month 12 25.05.2022):
pip install deepspeed
Docker Hub ( 15K 3 02.09.2022):
docker pull deepspeed/deepspeed
Apache-2
GitHub ( 180 1.1K 42 1.8K - 38% open 02.02.2023):
git clone https://github.com/intel-analytics/BigDL
PyPi ( 4.1K / month 1 07.07.2022):
pip install bigdl
Maven ( 4 20.04.2021):
<dependency>
<groupId>com.intel.analytics.bigdl</groupId>
<artifactId>bigdl-SPARK_2.4</artifactId>
<version>[VERSION]</version>
</dependency>
Apache-2
GitHub ( 88 730 160 380 - 38% open 02.02.2023):
git clone https://github.com/hpcaitech/colossalai
Apache-2


Apache-2

Apache-2
GitHub ( 79 880 2 100 - 36% open 01.06.2022):
git clone https://github.com/apache/singa
Conda ( 600 09.08.2021):
conda install -c nusdbsystem singa
Docker Hub ( 2.7K 4 31.05.2022):
docker pull apache/singa
Apache-2
GitHub ( 21 460 260 - 38% open 10.02.2022):
git clone https://github.com/bytedance/byteps
PyPi ( 34 / month 02.08.2021):
pip install byteps
Docker Hub ( 1.3K 03.03.2020):
docker pull bytepsimage/tensorflow
Apache-2
Apache-2

GitHub ( 23 720 190 - 19% open 12.01.2023):
git clone https://github.com/kingoflolz/mesh-transformer-jax
MIT

GitHub ( 6 16 3 18 - 33% open 12.12.2022):
git clone https://github.com/facebookresearch/moolib
LGPL-3.0
Unlicensed

Apache-2


Apache-2


Apache-2

Apache-2
MIT
Apache-2

Apache-2
Apache-2

Libraries for hyperparameter optimization, automl and neural architecture search.
BSD-3
Apache-2

MIT
BSD-3

Apache-2


GitHub ( 100 690 900 - 20% open 02.02.2023):
git clone https://github.com/autogluon/autogluon
PyPi ( 32K / month 5 07.07.2022):
pip install autogluon
Docker Hub ( 2.7K 11 17.12.2022):
docker pull autogluon/autogluon
MIT
MIT

MIT
BSD-3
Apache-2
Apache-2
MIT
Apache-2
GitHub ( 1 360 62 - 75% open 09.02.2022):
git clone https://github.com/google/model_search
BSD-3
LGPL-3.0

BSD-3
BSD-3
BSD-1-Clause
Apache-2

MIT
BSD-1-Clause
MIT
BSD-3
GPL-3.0

MIT

GPL-3.0
MIT
Apache-2
MIT

Apache-2
MIT
MIT
Apache-2
GPL-3.0
MIT
BSD-3
Apache-2
Libraries for building and evaluating reinforcement learning & agent-based systems.
MIT
Apache-2

MIT
Apache-2

MIT
MIT

Apache-2

MIT
Unlicensed
MIT
Custom

Libraries for building and evaluating recommendation systems.
MIT
Apache-2

Apache-2

BSD-3
MIT
Apache-2

MIT
BSD-3
MIT

MIT

BSD-3

Apache-2
Libraries for encrypted and privacy-preserving machine learning using methods like federated learning & differential privacy.
Apache-2

Apache-2

Apache-2
Libraries to organize, track, and visualize machine learning experiments.
Apache-2

MIT
Apache-2


MIT
MIT
Apache-2
GitHub ( 67 540 650 400 720 - 46% open 02.02.2023):
git clone https://github.com/allegroai/clearml
PyPi ( 220K / month 8 04.07.2022):
pip install clearml
Docker Hub ( 30K 05.10.2020):
docker pull allegroai/trains
Apache-2
Apache-2
MIT

Apache-2
BSD-1-Clause

MIT
MIT
Apache-2

MIT
MIT



MIT
Apache-2

MIT
Apache-2
MIT
Apache-2
BSD-2
Apache-2



Libraries to serialize models to files, convert between a variety of model formats, and optimize models for deployment.
BSD-3
Apache-2
Apache-2

GitHub ( 150 670 2.4K 1.1K - 17% open 31.01.2023):
git clone https://github.com/pytorch/serve
PyPi ( 20K / month 9 13.05.2022):
pip install torchserve
Conda ( 62K 12.12.2022):
conda install -c pytorch torchserve
Docker Hub ( 1.1M 16 12.12.2022):
docker pull pytorch/torchserve
MIT
BSD-3

MIT
Apache-2
BSD-3
MIT
BSD-3

Apache-2
Unlicensed

Libraries to visualize, explain, debug, evaluate, and interpret machine learning models.
MIT

Apache-2


MIT



Apache-2
MIT
Apache-2

BSD-2

Apache-2
MIT

MIT

Apache-2
MIT
BSD-2
BSD-3

AGPL-3.0
MIT

Apache-2

MIT
GPL-3.0
MIT

Apache-2
BSD-3

MIT

UPL-1.0
MIT
LGPL-3.0
BSD-3

Apache-2


Apache-2

MIT
MIT

MIT

Apache-2
MIT


MIT
Libraries for Approximate Nearest Neighbor Search and Vector Indexing/Similarity Search.
ANN Benchmarks ( 3.2K) - Benchmarks of approximate nearest neighbor libraries in Python.
Apache-2
GitHub ( 230 1.9K 28K 7K - 4% open 02.02.2023):
git clone https://github.com/milvus-io/milvus
PyPi ( 240K / month 17 02.04.2022):
pip install pymilvus
Docker Hub ( 2.7M 23 02.02.2023):
docker pull milvusdb/milvus
BSD-2
Libraries providing capabilities for probabilistic programming/reasoning, bayesian inference, gaussian processes, or statistics.
Apache-2

MIT
GPL-3.0
Apache-2

ISC
MIT
MIT

Apache-2

MIT

Libraries for testing the robustness of machine learning models against attacks with adversarial/malicious examples.
MIT

MIT
MIT
Libraries that require and make use of CUDA/GPU or other accelerator hardware capabilities to optimize machine learning tasks.
MIT
GitHub ( 320 650 55K 1.4K 1.9K - 24% open 02.02.2023):
git clone https://github.com/cupy/cupy
PyPi ( 16K / month 160 30.06.2022):
pip install cupy
Conda ( 2.3M 20.01.2023):
conda install -c conda-forge cupy
Docker Hub ( 56K 8 19.01.2023):
docker pull cupy/cupy
Apache-2
GitHub ( 81 540 1.3K - 17% open 02.02.2023):
git clone https://github.com/NVIDIA/DALI
BSD-3
Apache-2
Apache-2
GitHub ( 42 100 140 - 11% open 01.02.2023):
git clone https://github.com/rapidsai/cusignal
MIT
Apache-2
BSD-3
BSD-3
MIT

Apache-2

Libraries that extend TensorFlow with additional capabilities.
Apache-2

Apache-2

Apache-2

Apache-2

Apache-2

MIT

Apache-2

Apache-2

Apache-2

Apache-2

Apache-2

MIT

MIT

Libraries that extend Jax with additional capabilities.
Libraries that extend scikit-learn with additional capabilities.
MIT

BSD-3

Apache-2

BSD-2

MIT

MIT

BSD-3

MIT

GPL-3.0

Apache-2

MIT

BSD-3

BSD-1-Clause

BSD-3

MIT

BSD-3

Libraries that extend Pytorch with additional capabilities.
Apache-2

MIT

Apache-2

MIT

MIT

MIT

GitHub ( 77 880 8 150 - 14% open 02.02.2023):
git clone https://github.com/geohot/tinygrad
MIT

MIT

MIT

MIT

BSD-3

Apache-2

model.summary()
.. MIT

Apache-2

Apache-2

MIT

MIT

Apache-2

Apache-2

LGPL-3.0

Apache-2

MIT

MIT
CC BY-NC-SA 4.0

MIT

MIT

MIT

Apache-2

Libraries for connecting to, operating, and querying databases.
best-of-python - DB Clients ( 2.8K) - Collection of database clients for python.
Apache-2
huggingface
Apache-2
MIT
MIT

Apache-2
BSD-3
Apache-2
GitHub ( 33 320 340 - 24% open 20.07.2022):
git clone https://github.com/airbnb/streamalert
Apache-2

MIT
MIT
GitHub ( 3 170 16 - 81% open 30.06.2022):
git clone https://github.com/jrieke/traingenerator
AGPL-3.0
BSD-3
BSD-3
MIT

CC-BY-3.0
MIT
AGPL-3.0
MIT
MIT
MIT
MIT
MIT

BSD-3


MIT
BSD-3
MIT
MIT
Contributions are encouraged and always welcome! If you like to add or update projects, choose one of the following ways:
If you like to contribute to or share suggestions regarding the project metadata collection or markdown generation, please refer to the best-of-generator repository. If you like to create your own best-of list, we recommend to follow this guide.
For more information on how to add or update projects, please read the contribution guidelines. By participating in this project, you agree to abide by its Code of Conduct.