Browse free open source Python Algorithms and projects below. Use the toggles on the left to filter open source Python Algorithms by OS, license, language, programming language, and project status.

  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • Train ML Models With SQL You Already Know Icon
    Train ML Models With SQL You Already Know

    BigQuery automates data prep, analysis, and predictions with built-in AI assistance.

    Build and deploy ML models using familiar SQL. Automate data prep with built-in Gemini. Query 1 TB and store 10 GB free monthly.
    Try Free
  • 1
    Clipper

    Clipper

    Polygon and line clipping and offsetting library (C++, C#, Delphi)

    This library is now obsolete and no longer being maintained. It has been superceded by my Clipper2 library - https://github.com/AngusJohnson/Clipper2.
    Leader badge
    Downloads: 6,489 This Week
    Last Update:
    See Project
  • 2
    Real-ESRGAN

    Real-ESRGAN

    Real-ESRGAN aims at developing Practical Algorithms

    Real-ESRGAN is a highly popular open-source project that provides practical algorithms for general image and video restoration using deep learning-based super-resolution techniques. It extends the original Enhanced Super-Resolution Generative Adversarial Network (ESRGAN) approach by training on synthetic degradations to make results more robust on real-world images, effectively enhancing resolution, reducing noise/artifacts, and reconstructing fine detail in low-quality imagery. The repository includes inference and training scripts, a model zoo with different pretrained models (including general and anime-oriented variants), and support for batch and arbitrary scaling, making it adaptable for diverse enhancement tasks. It emphasizes usability with utilities that handle alpha channels, gray/16-bit images, and tiled inference for large inputs, and can be run via Python scripts or portable executables.
    Downloads: 210 This Week
    Last Update:
    See Project
  • 3
    GFPGAN

    GFPGAN

    GFPGAN aims at developing Practical Algorithms

    GFPGAN aims at developing Practical Algorithms for Real-world Face Restoration. Colab Demo for GFPGAN; (Another Colab Demo for the original paper model) Online demo: Huggingface (return only the cropped face) Online demo: Replicate.ai (may need to sign in, return the whole image). Online demo: Baseten.co (backed by GPU, returns the whole image). We provide a clean version of GFPGAN, which can run without CUDA extensions. So that it can run in Windows or on CPU mode. GFPGAN aims at developing a Practical Algorithm for Real-world Face Restoration. It leverages rich and diverse priors encapsulated in a pretrained face GAN (e.g., StyleGAN2) for blind face restoration. Add V1.3 model, which produces more natural restoration results, and better results on very low-quality / high-quality inputs.
    Downloads: 68 This Week
    Last Update:
    See Project
  • 4
    ImageAI

    ImageAI

    A python library built to empower developers

    ImageAI is an easy-to-use Computer Vision Python library that empowers developers to easily integrate state-of-the-art Artificial Intelligence features into their new and existing applications and systems. It is used by thousands of developers, students, researchers, tutors and experts in corporate organizations around the world. You will find features supported, links to official documentation as well as articles on ImageAI. ImageAI is widely used around the world by professionals, students, research groups and businesses. ImageAI provides API to recognize 1000 different objects in a picture using pre-trained models that were trained on the ImageNet-1000 dataset. The model implementations provided are SqueezeNet, ResNet, InceptionV3 and DenseNet. ImageAI provides API to detect, locate and identify 80 most common objects in everyday life in a picture using pre-trained models that were trained on the COCO Dataset.
    Downloads: 36 This Week
    Last Update:
    See Project
  • Gemini 3 and 200+ AI Models on One Platform Icon
    Gemini 3 and 200+ AI Models on One Platform

    Access Google's best plus Claude, Llama, and Gemma. Fine-tune and deploy from one console.

    Build generative AI apps with Vertex AI. Switch between models without switching platforms.
    Start Free
  • 5
    Detectron2

    Detectron2

    Next-generation platform for object detection and segmentation

    Detectron2 is Facebook AI Research's next generation software system that implements state-of-the-art object detection algorithms. It is a ground-up rewrite of the previous version, Detectron, and it originates from maskrcnn-benchmark. It is powered by the PyTorch deep learning framework. Includes more features such as panoptic segmentation, Densepose, Cascade R-CNN, rotated bounding boxes, PointRend, DeepLab, etc. Can be used as a library to support different projects on top of it. We'll open source more research projects in this way. It trains much faster. Models can be exported to TorchScript format or Caffe2 format for deployment. With a new, more modular design, Detectron2 is flexible and extensible, and able to provide fast training on single or multiple GPU servers. Detectron2 includes high-quality implementations of state-of-the-art object detection.
    Downloads: 12 This Week
    Last Update:
    See Project
  • 6
    Python Outlier Detection

    Python Outlier Detection

    A Python toolbox for scalable outlier detection

    PyOD is a comprehensive and scalable Python toolkit for detecting outlying objects in multivariate data. This exciting yet challenging field is commonly referred as outlier detection or anomaly detection. PyOD includes more than 30 detection algorithms, from classical LOF (SIGMOD 2000) to the latest COPOD (ICDM 2020) and SUOD (MLSys 2021). Since 2017, PyOD [AZNL19] has been successfully used in numerous academic researches and commercial products [AZHC+21, AZNHL19]. PyOD has multiple neural network-based models, e.g., AutoEncoders, which are implemented in both PyTorch and Tensorflow. PyOD contains multiple models that also exist in scikit-learn. It is possible to train and predict with a large number of detection models in PyOD by leveraging SUOD framework. A benchmark is supplied for select algorithms to provide an overview of the implemented models. In total, 17 benchmark datasets are used for comparison, which can be downloaded at ODDS.
    Downloads: 12 This Week
    Last Update:
    See Project
  • 7
    YAPF

    YAPF

    A formatter for Python files

    YAPF is a Python code formatter that automatically rewrites source to match a chosen style, using a clang-format–inspired algorithm to search for the “best” layout under your rules. Instead of relying on a fixed set of heuristics, it explores formatting decisions and chooses the lowest-cost result, aiming to produce code a human would write when following a style guide. You can run it as a command-line tool or call it as a library via FormatCode / FormatFile, making it easy to embed in editors, CI, and custom tooling. Styles are highly configurable: start from presets like pep8, google, yapf, or facebook, then override dozens of options in .style.yapf, setup.cfg, or pyproject.toml. It supports recursive directory formatting, line-range formatting, and diff-only output so you can check or fix just the lines you touched.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 8
    FuzzyWuzzy

    FuzzyWuzzy

    Fuzzy string matching in Python

    We’ve made it our mission to pull in event tickets from every corner of the internet, showing you them all on the same screen so you can compare them and get to your game/concert/show as quickly as possible. Of course, a big problem with most corners of the internet is labeling. One of our most consistently frustrating issues is trying to figure out whether two ticket listings are for the same real-life event (that is, without enlisting the help of our army of interns). To pick an example completely at random, Cirque du Soleil has a show running in New York called “Zarkana”. When we scour the web to find tickets for sale, mostly those tickets are identified by a title, date, time, and venue. We’ve built up a library of “fuzzy” string matching routines to help us along. And good news! We’re open sourcing it. The library is called “Fuzzywuzzy”, the code is pure python, and it depends only on the (excellent) difflib python library.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 9
    Gym

    Gym

    Toolkit for developing and comparing reinforcement learning algorithms

    Gym by OpenAI is a toolkit for developing and comparing reinforcement learning algorithms. It supports teaching agents, everything from walking to playing games like Pong or Pinball. Open source interface to reinforce learning tasks. The gym library provides an easy-to-use suite of reinforcement learning tasks. Gym provides the environment, you provide the algorithm. You can write your agent using your existing numerical computation library, such as TensorFlow or Theano. It makes no assumptions about the structure of your agent, and is compatible with any numerical computation library, such as TensorFlow or Theano. The gym library is a collection of test problems — environments — that you can use to work out your reinforcement learning algorithms. These environments have a shared interface, allowing you to write general algorithms.
    Downloads: 5 This Week
    Last Update:
    See Project
  • AI-powered service management for IT and enterprise teams Icon
    AI-powered service management for IT and enterprise teams

    Enterprise-grade ITSM, for every business

    Give your IT, operations, and business teams the ability to deliver exceptional services—without the complexity. Maximize operational efficiency with refreshingly simple, AI-powered Freshservice.
    Try it Free
  • 10
    Pythonic Data Structures and Algorithms

    Pythonic Data Structures and Algorithms

    Minimal examples of data structures and algorithms in Python

    The Pythonic Data Structures and Algorithms repository by keon is a hands-on collection of implementations of classical data structures and algorithms written in Python. It offers working, often well-commented code for many standard algorithmic problems — from sorting/searching to graph algorithms, dynamic programming, data structures, and more — making it a valuable resource for learning and reference. For students preparing for technical interviews, self-learners brushing up on fundamentals, or developers wanting to understand algorithm internals, this repository provides ready-to-run examples, and can serve as a sandbox to experiment, benchmark, or adapt code. Because it’s in pure Python, it’s easy to read and modify, making it accessible even to those with modest programming experience. The repo helps bridge the gap between theoretical algorithm descriptions and real-world code, giving concrete, working implementations that one can study, debug, or extend.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 11
    Elementary Algorithms

    Elementary Algorithms

    Book of elementary algorithms and data structures

    This book introduces elementary algorithms and data structure. It includes side-by-side comparison of purely functional realization and their imperative counterpart. From 2020/12, I started re-writing this book. The PDF can be downloaded for preview (EN, 中文). The 1st edition in Chinese (中文) was published in 2017. I recently switched my focus to the Mathematics of programming, the new book is also available in (github). To build the book in PDF format from the sources, you need the following software pre-installed, TeXLive, The book is built with XeLaTeX, a Unicode friendly version of TeX. You need the GNU make tool, in Debian/Ubuntu like Linux, it can be installed through the apt-get command.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 12
    JavaBlock
    Free Java Flowchart simulator / interpreter
    Leader badge
    Downloads: 31 This Week
    Last Update:
    See Project
  • 13
    DomainBed

    DomainBed

    DomainBed is a suite to test domain generalization algorithms

    DomainBed is a PyTorch-based research suite created by Facebook Research for benchmarking and evaluating domain generalization algorithms. It provides a unified framework for comparing methods that aim to train models capable of performing well across unseen domains, as introduced in the paper In Search of Lost Domain Generalization. The library includes a wide range of well-known domain generalization algorithms, from classical baselines such as Empirical Risk Minimization (ERM) and Invariant Risk Minimization (IRM) to more advanced techniques like Domain Adversarial Neural Networks (DANN), Adaptive Risk Minimization (ARM), and Invariance Principle Meets Information Bottleneck (IB-ERM/IB-IRM). DomainBed also integrates multiple standard datasets—including RotatedMNIST, PACS, VLCS, Office-Home, DomainNet, and subsets from WILDS—allowing consistent experimentation across image classification tasks.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 14
    Rank-BM25

    Rank-BM25

    A Collection of BM25 Algorithms in Python

    A collection of algorithms for querying a set of documents and returning the ones most relevant to the query. The most common use case for these algorithms is, as you might have guessed, to create search engines.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 15
    X's Recommendation Algorithm

    X's Recommendation Algorithm

    Source code for the X Recommendation Algorithm

    The Algorithm is Twitter’s open source release of the core ranking system that powers the platform’s home timeline. It provides transparency into how tweets are selected, prioritized, and surfaced to users, reflecting Twitter’s move toward openness in recommendation algorithms. The repository contains the recommendation pipeline, which incorporates signals such as engagement, relevance, and content features, and demonstrates how they combine to form ranked outputs. Written primarily in Scala, it shows the architecture of large-scale recommendation systems, including candidate sourcing, ranking, and heuristics. While certain components (such as safety layers, spam detection, or private data) are excluded, the release provides valuable insights into the design of real-world machine learning–driven ranking systems. The project is intended as a reference for researchers, developers, and the public to study, experiment with, and better understand the mechanisms behind social media content.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 16
    Evolving Objects

    Evolving Objects

    This project have been merged within Paradiseo.

    See the new project page: https://nojhan.github.io/paradiseo/ (Archived project page: http://eodev.sourceforge.net/)
    Downloads: 4 This Week
    Last Update:
    See Project
  • 17
    Modular toolkit for Data Processing MDP
    The Modular toolkit for Data Processing (MDP) is a Python data processing framework. From the user's perspective, MDP is a collection of supervised and unsupervised learning algorithms and other data processing units that can be combined into data processing sequences and more complex feed-forward network architectures. From the scientific developer's perspective, MDP is a modular framework, which can easily be expanded. The implementation of new algorithms is easy and intuitive. The new implemented units are then automatically integrated with the rest of the library. The base of available algorithms is steadily increasing and includes signal processing methods (Principal Component Analysis, Independent Component Analysis, Slow Feature Analysis), manifold learning methods ([Hessian] Locally Linear Embedding), several classifiers, probabilistic methods (Factor Analysis, RBM), data pre-processing methods, and many others.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 18
    CloudI: A Cloud at the lowest level
    CloudI is an open-source private cloud computing framework for efficient, secure, and internal data processing. CloudI provides scaling for previously unscalable source code with efficient fault-tolerant execution of ATS, C/C++, Erlang/Elixir, Go, Haskell, Java, JavaScript/node.js, OCaml, Perl, PHP, Python, Ruby, or Rust services. The bare essentials for efficient fault-tolerant processing on a cloud!
    Downloads: 7 This Week
    Last Update:
    See Project
  • 19
    Digraph3

    Digraph3

    A collection of python3 modules for Algorithmic Decision Theory

    This collection of Python3 modules provides a large range of implemented decision aiding algorithms useful in the field of outranking digraphs based Multiple Criteria Decision Aid (MCDA), especially best choice, linear ranking and absolute or relative rating algorithms with multiple incommensurable criteria. Technical documentation and tutorials are available under the following link: https://digraph3.readthedocs.io/en/latest/ The tutorials introduce the main objects like digraphs, outranking digraphs and performance tableaux. There is also a tutorial provided on undirected graphs. Some tutorials are problem oriented and show how to compute the winner of an election, how to build a best choice recommendation, or how to linearly rank or rate with multiple incommensurable performance criteria. Other tutorials concern more specifically operational aspects of computing maximal independent sets (MISs) and kernels in graphs and digraphs.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 20
    Open Metaheuristic (oMetah) is a library aimed at the conception and the rigourous testing of metaheuristics (i.e. genetic algorithms, simulated annealing, ...). The code design is separated in components : algorithms, problems and a test report generator
    Downloads: 3 This Week
    Last Update:
    See Project
  • 21
    A univariate and multivariate analysis UI. This project is no longer under development. Please use as you wish.
    Leader badge
    Downloads: 3 This Week
    Last Update:
    See Project
  • 22

    Simple Python Fixed-Point Module

    Pure-python binary fixed-point arithmetic library

    This Python module provides basic facilities for mathematics on fixed-point numbers. The number of fractional binary digits is tunable, allowing near-arbitrary precision arithmetic. Arithmetic & functions such as sqrt, exp, log, sin & cos are available. For the latest releases please visit https://github.com/rwpenney/spfpm
    Downloads: 3 This Week
    Last Update:
    See Project
  • 23
    Sorting-Visualizer

    Sorting-Visualizer

    A GUI sorting visualizer desktop application

    A GUI sorting visualizer desktop application that helps to visualize various sorting algorithms interactively. Visualizer the sorting algorithms like Bubble sort, Insertion sort, Selection sort, Gnome sort, Shaker sort and Odd even sort. Change the bar color and background by customizing. Increase or decrease speed of animation to visualize the sorting process. Download now!
    Downloads: 3 This Week
    Last Update:
    See Project
  • 24
    Sudoku Maker is a generator for Sudoku number puzzles. It uses a genetic algorithm internally, so it can serve as an introduction to genetic algorithms. The generated Sudokus are usually very hard to solve -- good for getting rid of a Sudoku addiction.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 25

    PyVision Computer Vision Toolkit

    A Python computer vision library

    PyVision is a object-oriented Computer Vision Toolkit for researchers that contains vision and machine learning algorithms and algorithm analysis and easily interfaces with scipy/numpy, PIL, opencv and other computer and machine learning libraries.
    Downloads: 1 This Week
    Last Update:
    See Project
MongoDB Logo MongoDB