Skip to main content

Generate lyrics with TensorFlow and the Genius API

Project description


Generate intriguing lyrics with TensorFlow and an internet connection.

tflyrics is a Python package that allows you to easily select lyrics of specific artists from, and train a deep neural network to generate text that sounds similar to those lyrics. This work was inspired from The Unreasonable Effectiveness of Recurrent Neural Networks and Text generation with an RNN.


from tflyrics import Poet, LyricsGenerator

artists = ['Bob Dylan', 'Tim Buckley', 'The Beatles']
gen = LyricsGenerator(artists, per_artist=5)
ds = gen.as_dataset(batch_size=16)

p = Poet()
p.train_on(ds, n_epochs=10)
poem = p.generate(start_string='Hey ', n_gen_chars=1000)

Quick paraphrase: a LyricsGenerator object makes it easy for you to create a data pipeline that feeds from the Genius API directly into a recurrent neural network; a Poet object is a wrapper around a recurrent neural network.

Note that the Genius API requires you to have an access token. Without that, tflyrics won't be able to get lyrics for you. You can get an access token for free at Once you have it you can either pass it under the token argument of a LyricsGenerator constructor, or store it as en environment variable (with export GENIUS_ACCESS_TOKEN='<your token here>'). tflyrics will detect this environment variable automatically, if it exists.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tflyrics-0.2.1.tar.gz (10.1 kB view hashes)

Uploaded source

Built Distribution

tflyrics-0.2.1-py3-none-any.whl (11.3 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page