Last year I did a fun little experiment where I asked a few different generative models to generate images based on the classic Twelve Days of Christmas song. For those unfamiliar, the song is about a series of gifts given over twelve days:
partridge in a pear tree
two turtle doves
three French hens
four calling birds
five golden rings
six geese a-laying
seven swans a-swimming
eight maids a-milking
nine ladies dancing
ten lords a-leaping
eleven pipers piping
twelve drummers drumming
To be clear, this was done for fun, nothing more. Also, the prompts were literally just the lyrics, nothing more (with some exceptions, see the details below). In a 'real world' example if you wanted to generate images for the song, your prompt would be (should be) far more descriptive. As an example of why this is important, many of the Bing results look like Easter-related pictures, I'm guessing due to the bird input. Since this is for fun, I just went with it.
Before getting into results, some details:
- Initially, I did not alter the text in any way, except to sometimes swap out the numerical word ("nine") with a digit (9). Pretty much every service I used had trouble with showing X items of something. I decided to not fight it and just go with it. Honestly, I was a bit surprised this continued to be an issue in 2024
- Nearly every service blocked eight maids a-milking. I'm not really sure why. Eventually, I found that this prompt generally worked "eight young women working with cows on a dairy farm".
- In general, I picked the best image out of the options I got, but obviously, that was my personal opinion.
This year I tested with Bing, Firefly, Leonardo, and Meta. For each of the results, you can click through for the original, larger version.
Bing
Bing made some absolutely beautiful results. As I mentioned above, none very "Christmas-y", but that's expected due to the brevity of the prompts. Day four, in particular, was funny as heck.
Firefly
This is where I'd usually say that I work for Adobe and the results may be biased, but hey, that's not a problem anymore!
Leonardo
This was the first time I used Leonardo, and while it was pretty cool, it also automatically took my prompts and rewrote them in a much more verbose manner. What's weird is - I can't see a way to disable that. I'm probably missing it in the UI, and I appreciate the thought, but if it's not something you can control, I'm not sure I'd use it. I'm pretty sure it's an option I just can't find, but keep in mind if you decide to give it a spin.
Meta
And last but not least... Meta. They get a prize for their drum-human-mashup result at the end.