A year or so ago I was trying to get llms to make pixel art by asking them to create a 2d array of color codes. I'm no prompt guru but they all failed at anything beyond a basic shape. I tried at many resolutions from 16x16, 32x32, 64x64, and maybe a little larger but basically only then quit small ones were even recognizeable.
There’s a related benchmark along these lines that uses an LLM with a discrete “instructive graphic language” to get models to generate Minecraft voxel structures with varying degrees of success.
As I looked through the images I was unimpressed entirely, at first. But, then I started thinking, these look a little... "childish" to me.
Childish as in... A newish artist who is drawing a concept rather than light / forms (Which is something artists typically do as they understand drawing more and more).
The rose in the vase specifically - some models understood that there was supposed to be shading, reflections, the concept of refraction - others just drew "blue = glass" and "green = stem" and "red = rose".
Really odd to look at, considering if I saw any of these drawings from a human kid, I would say "good job buddy" and put it on the fridge. I'm expecting these to get better as models improve, and perhaps the artistic progression will be there along with it...
I call this "symbol drawing". Beginning artists do this. They think "This is a head, a head is round. This is where eyes go, eyes are shaped like this", and the whole thing ends up being a collage of symbols vs a representation of the space and experience of viewing a face. When I used to be OK at drawing, it was because I forced myself to use touch instead of sight to compose images. So weird to explain, but I'd feel the 3d to get the lighting and such better.
A lot of art that someone smarter than me told me to appreciate seems to follow the pattern of hitting the space and/or experience while minimizing the use of symbols. Impressionistic paintings esp avoid symbols IMHO, while bizzaro picassos abuse symbols outright and still hit the experience they are going for.
Really odd to look at, considering if I saw any of these drawings from a human kid, I would say "good job buddy" and put it on the fridge.
The Grok ones in particular gave me that thought. Most of them really look like what a kid would do when given the same tools, while the other models' output have distinctly more "AI-ness" to them (for lack of a better term.)
I took the same prompts to Gemini and was stunned by the results. The are completely different from the images shown in the article (and genuinely good art pieces that were generated).
What's interesting is that the way in which they're childish is actually extremely human. In fact, one of the ways that you're often taught to draw more realistically is to stop thinking of the concepts as icons you're drawing the outlines of, and instead sort of blur your eyes and see things as they are: hues and values. In other words, become a camera or a printer that has no idea what it's capturing or printing other than a grid of values. That is how you achieve realism.
The fact that it has clearly iconified these concepts in its mind and is tracing the outlines of the things it thinks/expects to go where is very human.
Yes, but Parrots don't mimic the stages of learning speech development like children do. They just memorize a phrase.
These SOTA LLMs aren't trying to mimic existing children's drawings, but interestingly they're following somewhat similar progression that human children do as they develop.
LLMs come complete they don't train on the fly based on interaction with the world. LLMs are wikipedia if they stopped allowing edits and all of the previous edits are training.
A specific model develops as it passes through training.
AI labs change the architecture between models to allow them to surpass the previous models' best scores.
It's also going to keep being a hard sell to say "stop anthropomorphizing LLMs" when the models anthropomorphise themselves.
But besides that: Yeah, sure, they're not human, they're a cargo-cult mimicry of by and of minds that popped out of evolution doing gradient decent on intergenerational survivability. So what? Still interesting when the result of such cargo-culting incidentally echoes what our natural-selection-not-engineered moist electrochemistry happens to do.
GPT 5.6 Sol had the best two drawings (rose and starry nights) but even more impressive was how efficient it was RE cost/time/tokens vs Fable (3.4M vs 14.6M / $7.74 vs $161!). OpenAI has quietly innovated around inference - this is will be a growing differentiator even against open models.
I do think they are going to stretch their lead in value if Anthropic doesn't wake up and stop YOLOing tokens. Kimi is an amazing achievement, but it has the same (or worse) kitchen sink approach as Fable.
At work, even if Fable is technically better I much prefer Sol because it is so much faster and concise.
For me personally, there is no point in using more reasoning than medium or sometimes high. It just gets so much slower and expensive, meaning that i have to wait longer to evaluate the results and provide feedback or continue to the next task.
The Grok ones are amusing, almost comically bad. However, whenever I've tried to pass an image creation request to any of the Opus models, it's been far worse, like first week of using Microsoft Paint bad (while ChatGPT would create social media quality images using the same prompts)
Opus doesn't have access to an image model, while ChatGPT does (it's not multi-modal, but it can prompt OpenAI's image model). So Opus by default is forced to write code to generate images, or generate SVG's as text. That's putting it in a worse situation than the linked article, where all the models were given rudimentary tools.
Give Opus access to an image model, and it will use that to create images just fine just like ChatGPT.
Seriously, what's going on there ? Why is it so different from others? Is it just behind technologically/training wise or it's using something fundamentally different?
It performs much better than composer2.5 (while being as fast). It's not Opus, but I think it's not that far off. Definitely better than sonnet for what I've been doing.
On the other hand, I think they probably heavily adapted the training data so that it really is extremely focused on code. I just recently ran my personal "poetry benchmark" on it (where I give it ~850 poems I've written over my life and ask it to comment the corpus as a whole), and it's whack. It tries to write in portuguese (most of the poems are portuguese) and code-switches constantly and mixes up words to the point of making what it writes almost unreadable (e.g. it writes stuff like "You can't QoS that that look for beast poems", in portuguese, all messed up). The quality of the analysis is also quite bad (I'd say it's definitely behind Sonnet).
So I really think they either threw away data that wasn't tied to coding so that they could fine-tune it to that, or somehow they've got such an unbalanced dataset that coding ends up dominating either way. To me, its disastrous performance in this drawing "competition" fits this narrative.
Some of my poetry has clear IT jargon, but it's a very small portion of it (<1%). Some of my teenage poetry revolved a lot around the idea of wanting to become science, knowledge, and machine, and be rid of feeling altogether (to become an idea that has no body, or to be come the mathematical equations that define the world), with some very amateur odes written glorifying science and machine (a clear pastiche of Álvaro de Campos with a modern twist). But, again, this is not the majority of the work, far from it.
For some reason, OpenAI models, Gemini (and apparently Grok too), love to latch onto this and obsess over this idea that it's "programming poetry" or "poetry for the IT crowd". Often OpenAI and Gemini try to write the "equations of my poetry" (granted, I do write about a cyclical relationship between thinking, feeling and writing a lot, and I do have ONE poem which ends with a Q.E.D.).
I'm giving this context to say that it is very bizarre. It's as if they latch onto it and act as if it's a core or highly distinguished part of the poetry, when it really isn't. Anthropic models, on the other hand, absolutely do not do this, and have never done it.
I really don't understand why this happens. Maybe it's because it has a lot of portuguese, I don't know. And even though the "QoS" is clearly the wrong token being generated, I have had situations where gemini spoke of some phase of my poetry as the "Q&A part" (really, no joke...)
In any case, it's why it's my personal benchmark after all :D
might also be U shaped memory issue did you try changing the order of your poems to see if it focusses on different ones? maybe it just happened to have those old ones in points it memory was focused at. (ofc its not good but would be an alternative idea to it focussing on IT things/code to produce such results)
Did Elon tell some poor engineer to give grok a prompt injection for drawing,"make it look like one of my childhood drawings!" Just like the Tesla truck?
I must admit, I have a natural tendency to overlook C&Bs, but solid catch -- it's there. Perhaps that explains the Mona Lisa redaction; Grok probably put more effort into that one.
The most interesting result for me is that they apparently prompted the models to optimize for SSIM, but many of the models trend worse over time. I suppose because viewing the canvas always comes after drawing, and they didn't give "revert to previous" capability as part of the toolkit.
Which in turn kinda jives with my experience of using these models for code: to some extent they only seem to have a concept of "forward", which invariably leads to "write more code to fix previous problems created", rather than taking a step back and removing broken things entirely.
Perhaps there was something in the prompt or settings preventing this, but I'm surprised (and slightly disappointed) that none of the models approached this the way I would: download an image of the Mona Lisa, run all of the drawing functions many times to construct a forward model of the drawing implements, and attempt to solve some kind of explicit inverse problem through either ML or a classical algorithm to minimize some difference metric. Were they just restricted from running code or are the models unindustrious without a very specific prompt?
Weird choice of SSIM/RMSE. By feeding these back into the model, the agent is actively degrading its artistic output. This is only valid for the target reference I think?
Alternatively, I think much better results could be had by computing the cosine similarly using DINOv2 ONNX (@xenova/transformers).
My guess is that the results are greatly limited by relying on the current metrics.
Even better, attach toModelOutput directly to drawTool so it returns the rendered canvas image immediately upon drawing.
Where do these models even have this data to learn from. There must be massive computer use datasets? I have a hard time believing it’s emergent if it’s able to do something this good.
- the best image related stuff I've seen is where the harness is constantly cropping and looking closer at things (likely helps a lot for computer vision in general)
- also it would be interesting because the harness could almost have its own "palette" as if it could play with blank squares and different strokes over lapping or blending before applying to the main canvas
If it is, it's a horrible ad. My main takeaway is that all of them were god awful at image generation and Fable was 20x more expensive and still awful.
Claude was clearly 'pushing back' on the coziness of the cabin. But I think it did best with the cat. Grok, I fear, is making a case for euthanasia. It's suffering and I think it would be cruel to let it continue. Someone pull the plug. .
He mentions they used quite different methods to get to the end-result. I'd love to know how much changing the prompt impacts things: like telling claude to only draw and blend, similar to sol, etc.
There's likely not training data for this and Claude seemed to spend a lot of time blending the background.
Not useless. LLMs are the most general purpose computer algorithms ever created. They are getting smarter and cheaper at a geometric rate. What is a bad idea today could have useful applications tomorrow.
Citation needed - my company is paying more than ever for code generation. I have no reason to believe (given anecdotes) that anyone finds themselves in the opposite situation.
You’re paying more in total because the overall cost has gone down. This is normal economics when something useful gets cheaper. If you were to use original GPT-4 to do as much, you’d be paying an order of magnitude more.
I get a lot more use (read: cheaper per interaction) and much better quality results from the $20 that I spend on this stuff every month than I did several years ago.
(And several years before that, it was all essentially unobtanium.)
First of all, this is a marketing piece, made for engagement.
Second, in production, you would adjust your approach to the model's strengths and weaknesses. For example, if you found that a model does not respond to the tools you are offering, then you would find a way to make it more responsive. Also, we know that different models handle prompts and system prompts differently. So comparing several models from different providers against exactly the same prompt is quite a naive way of exploring the capabilities of those models or comparing them to each other. You may have just happened to “speak the language“ of one model better than that of another. Why would that be the model’s fault and not yours?
Third, none of these results mean anything if you do not run each process on each model several times to check for consistency. Your model might just have gotten lucky. This point is even more true when you're talking about a progressive task where one step builds on the previous one. The model might just have painted itself into a corner.
https://github.com/Ammaar-Alam/minebench
I think using this skill, Claude drew it better than the examples given. https://claude.ai/share/bc0867dc-034f-4865-bb71-acb83bfa36a1
Childish as in... A newish artist who is drawing a concept rather than light / forms (Which is something artists typically do as they understand drawing more and more).
The rose in the vase specifically - some models understood that there was supposed to be shading, reflections, the concept of refraction - others just drew "blue = glass" and "green = stem" and "red = rose".
Really odd to look at, considering if I saw any of these drawings from a human kid, I would say "good job buddy" and put it on the fridge. I'm expecting these to get better as models improve, and perhaps the artistic progression will be there along with it...
A lot of art that someone smarter than me told me to appreciate seems to follow the pattern of hitting the space and/or experience while minimizing the use of symbols. Impressionistic paintings esp avoid symbols IMHO, while bizzaro picassos abuse symbols outright and still hit the experience they are going for.
The Grok ones in particular gave me that thought. Most of them really look like what a kid would do when given the same tools, while the other models' output have distinctly more "AI-ness" to them (for lack of a better term.)
The fact that it has clearly iconified these concepts in its mind and is tracing the outlines of the things it thinks/expects to go where is very human.
How do we know the difference?
These SOTA LLMs aren't trying to mimic existing children's drawings, but interestingly they're following somewhat similar progression that human children do as they develop.
AI labs are improving the ML techniques used to build better models; it’s a big difference.
A specific model develops as it passes through training.
AI labs change the architecture between models to allow them to surpass the previous models' best scores.
It's also going to keep being a hard sell to say "stop anthropomorphizing LLMs" when the models anthropomorphise themselves.
But besides that: Yeah, sure, they're not human, they're a cargo-cult mimicry of by and of minds that popped out of evolution doing gradient decent on intergenerational survivability. So what? Still interesting when the result of such cargo-culting incidentally echoes what our natural-selection-not-engineered moist electrochemistry happens to do.
reminds me of those jokes?
what is difference between a parot and a human? silence rly? u cant tell the difference between a parot and a human? :')
At work, even if Fable is technically better I much prefer Sol because it is so much faster and concise.
Give Opus access to an image model, and it will use that to create images just fine just like ChatGPT.
Seriously, what's going on there ? Why is it so different from others? Is it just behind technologically/training wise or it's using something fundamentally different?
It performs much better than composer2.5 (while being as fast). It's not Opus, but I think it's not that far off. Definitely better than sonnet for what I've been doing.
On the other hand, I think they probably heavily adapted the training data so that it really is extremely focused on code. I just recently ran my personal "poetry benchmark" on it (where I give it ~850 poems I've written over my life and ask it to comment the corpus as a whole), and it's whack. It tries to write in portuguese (most of the poems are portuguese) and code-switches constantly and mixes up words to the point of making what it writes almost unreadable (e.g. it writes stuff like "You can't QoS that that look for beast poems", in portuguese, all messed up). The quality of the analysis is also quite bad (I'd say it's definitely behind Sonnet).
So I really think they either threw away data that wasn't tied to coding so that they could fine-tune it to that, or somehow they've got such an unbalanced dataset that coding ends up dominating either way. To me, its disastrous performance in this drawing "competition" fits this narrative.
For some reason, OpenAI models, Gemini (and apparently Grok too), love to latch onto this and obsess over this idea that it's "programming poetry" or "poetry for the IT crowd". Often OpenAI and Gemini try to write the "equations of my poetry" (granted, I do write about a cyclical relationship between thinking, feeling and writing a lot, and I do have ONE poem which ends with a Q.E.D.).
I'm giving this context to say that it is very bizarre. It's as if they latch onto it and act as if it's a core or highly distinguished part of the poetry, when it really isn't. Anthropic models, on the other hand, absolutely do not do this, and have never done it.
I really don't understand why this happens. Maybe it's because it has a lot of portuguese, I don't know. And even though the "QoS" is clearly the wrong token being generated, I have had situations where gemini spoke of some phase of my poetry as the "Q&A part" (really, no joke...)
In any case, it's why it's my personal benchmark after all :D
Edit: I just don't see the point of redacting the Mona Lisa
HN, the only environment in the world where people will scientifically falsify a joke.
Which in turn kinda jives with my experience of using these models for code: to some extent they only seem to have a concept of "forward", which invariably leads to "write more code to fix previous problems created", rather than taking a step back and removing broken things entirely.
The rectangular smudge tool is a weird tool in the first place, but it's cute to see the models try to use it.
I made a lower effort but similar scaffold for LLMs to do iterative drawing in Nov 2024, with Sonnet 3.5 as the artist: https://paritybits.me/llm-drawing-with-eyes-open/
Quite a difference.
Alternatively, I think much better results could be had by computing the cosine similarly using DINOv2 ONNX (@xenova/transformers).
My guess is that the results are greatly limited by relying on the current metrics.
Even better, attach toModelOutput directly to drawTool so it returns the rendered canvas image immediately upon drawing.
https://www.tryai.dev/?error=server_error&error_code=unexpec...
- the best image related stuff I've seen is where the harness is constantly cropping and looking closer at things (likely helps a lot for computer vision in general) - also it would be interesting because the harness could almost have its own "palette" as if it could play with blank squares and different strokes over lapping or blending before applying to the main canvas
There's likely not training data for this and Claude seemed to spend a lot of time blending the background.
Citation needed - my company is paying more than ever for code generation. I have no reason to believe (given anecdotes) that anyone finds themselves in the opposite situation.
I get a lot more use (read: cheaper per interaction) and much better quality results from the $20 that I spend on this stuff every month than I did several years ago.
(And several years before that, it was all essentially unobtanium.)
First of all, this is a marketing piece, made for engagement.
Second, in production, you would adjust your approach to the model's strengths and weaknesses. For example, if you found that a model does not respond to the tools you are offering, then you would find a way to make it more responsive. Also, we know that different models handle prompts and system prompts differently. So comparing several models from different providers against exactly the same prompt is quite a naive way of exploring the capabilities of those models or comparing them to each other. You may have just happened to “speak the language“ of one model better than that of another. Why would that be the model’s fault and not yours?
Third, none of these results mean anything if you do not run each process on each model several times to check for consistency. Your model might just have gotten lucky. This point is even more true when you're talking about a progressive task where one step builds on the previous one. The model might just have painted itself into a corner.