This document provides an overview of NuPIC, an open source machine learning framework. It discusses the different levels of abstraction in NuPIC including algorithms, networks and regions, and the online prediction framework. It also describes how NuPIC supports arbitrary network topologies through its network and regions API and handles data flow through different regions in a network.