background animation of a pianoroll
magenta logo

Make Music and Art
Using Machine Learning

Get Started Studio Demos Blog Research Talks Community

What is Magenta?

An open source research project exploring the role of machine learning as a tool in the creative process.

Python

Magenta is distributed as an open source Python library, powered by TensorFlow. This library includes utilities for manipulating source data (primarily music and images), using this data to train machine learning models, and finally generating new content from these models.

JavaScript

Magenta.js is an open source JavaScript API for using the pre-trained Magenta models in the browser. It is built with TensorFlow.js, which allows for fast, GPU-accelerated inference. If you're interested in seeing how Magenta models have been used in existing applications or want to build your own, this is probably the place to start!

Featured projects

Magenta Studio (beta)
Magenta Studio is a collection of music plugins built on Magenta’s open source tools and models.
Learn more.
Onsets and Frames
Transcribing piano with a neural network.
Learn more.
MusicVAE
Creating palettes for blending and exploring musical loops and scores.
Learn more.
NSynth
Making music using new sounds generated with machine learning.
Learn more.

What's new?

Encoding Musical Style with Transformer Autoencoders
We introduce the Transformer autoencoder, allowing control over both the global and local structure of a generated music sample. Read the blog post.
DDSP: Differentiable Digital Signal Processing
Fusing interpretable digital signal processing with end-to-end learning. Read the blog post.
DrumBot: your real-time ML drummer
Play real-time music with a Machine Learning drummer that drums based on your melody. Read the blog post.
SVG VAE: Generating Scalable Vector Graphics Typography
Code, Colab notebook and data open-sourced for ML-assisted SVG generation of fonts. Read the blog post.