OVERVIEW
La Re Bohent is an AI project that combines the scripts of the corresponding characters from Puccini’s La Boheme and Larson’s RENT as source material and uses Python and Natural Language Processing (NLP) to generate new texts.
The outcome of this project are two main works:
- Rolfo’s Poem of Perpetual of Loss: A Love Letter to Mi Mi Mi (see below), and
- The Twitter Bot, @DigitalLibretto
Why La Re Bohent & @DigitalLibretto?
As La Boheme and RENT are related works, my concept was to play with mixing the texts of the two well-known sources by combining and comparing scripts of the correlating characters; this would then be compiled, curated, and automatically broadcast via a Twitter bot.
As you may know, RENT (1996) was Jonathan Larson’s loose interpretation of Puccini’s opera La Boheme (1896). I wasn’t aware until very recently that La Boheme was based on a composite of characters from an earlier book by a writer named Henri Murger, called Scènes de La Vie de Bohème (semi-autobiographical tales about people he encountered in the Latin Quarter in Paris in the 1840’s.)
I liked the idea of taking a book about characters, made into an opera based on those characters, made into a Broadway musical of updated versions of that opera’s character being made into a reconstructed version featuring those characters, so I used this inspiration to develop the texts for La Re Bohent, which is the source material for the Twitter bot @DigitalLibretto. First, though, came the proof of concept, Rolfo’s Poem of Perpetual of Loss: A Love Letter to Mi Mi Mi, which can be read below:
Poem of Perpetual of Loss: A Love Letter to Mi Mi Mi
Happy Spring-tide. More the ocean, as I've got to condemn Nothing, shining without the words are your smile. I'm not alone.
For once was April. Sad, for me in the spring! One song dies, I guess. Some of glory, one song -- Saved!
We won't need to find you... Then, your eyes, the Twilight. Our time, a walk, this! How strange! Oh! what to condemn.
Your eyes have a lie. Of fancies and you... When I used to hear it. Time died, here we're dying.
We won't be frozen. While there's a candle. Another way, and it's -- Well, our goodnight.
It blew out anyway. I used to ignite that night. You heart, but you... Actual real love!
Oh! what I would tell... I loved you, and yet I must bear it. It was the flames. Find one blazing for me!
I'm not alone. Nothing, shining without the words are your smile. More the ocean, as I've got to condemn Happy Spring-tide.
and more without you, love, goodbye, love. -Rolfo
Process
Using NLP and Python, I created the material for the Twitter bot, @DigitalLibretto, featuring new, reinterpreted characters and an all-new AI-produced digital libretto for a production called La Re Bohent. (Just as in the first line of RENT, the show starts “December 24th. Nine PM. Eastern Standard Time” and is planned to restart the same day/time every year.)
If you’re unfamiliar with the stories, basically Rodolfo/Roger has been reimagined into Rolfo and Mimi/Mimi has been reimagined into Mi Mi Mi. Just as their names were recreated using Markov chains and the letters in their names, the following poem has been, as well—using their scripts as the basis for the lines in Rolfo’s poem.
From the generated texts for my Twitter bot for the parts of Rolfo and Mi Mi Mi, I created a text file with each role’s lines. I then used a Markov chain to create a series of short sentences and then, using the SimpleNeighbors library, looked for a nearest match for those in the Rolfo and Mi Mi Mi text files that I created for my Twitter bot.
To be specific, I put the just-generated sentences in from one character to look for the nearest sentences I created for my Twitter bot for the OTHER character. The idea of this was to get related responses that would serve as the next line or potentially a prompt for picking the next line.
*****None of the text or punctuation has been edited; only the order of some of the lines I selected has been changed.*****
In the end, I wound up shuffling around the outputs to get what I felt worked best for the ‘vibe’ the texts/stories/characters I’d been working with intensively for the past few of weeks.
I hope you enjoy Rolfo’s Poem of Perpetual of Loss: A Love Letter to Mi Mi Mi and please follow @DigitalLibretto on Twitter, which I have hosted in my room on a Raspberry Pi 4 (and occasionally restart when I knock the power cord loose or run too many appliances and trip a circuit breaker. Oops.)
Takeaways
From the hours (and hours) of familiarizing myself with these two popular masterpieces, I got to know them fairly well. I was really amazed at how much a new character’s material/voice adhered to what I felt I understood of the source characters’. This make sense as they literally fed the words to new characters; at the same time, knowing how this is how technologists are planning to get ‘computers to sound like humans’, it’s amazing how much of the output was pure nonsense or so vague it wasn’t helpful (or inspiring.) I think the lesson I most appreciated from this project was learning how much manipulation goes into showing off impressive AI/NLP projects, at least in its current state. This is still a very nascent technology, but holds so much potential for creating powerful interactive projects in the future!