That's usually bad enough. Then try to specify size, and specify things you want to place inside the cylinder relative to the specified size.
(e.g. try to approximate an O'Neill cylinder)
I love generative AI models, but they're really bad at that, and this one is no exception, but the speed makes playing around with prompt variations to try to see if I get somewhere a lot easier (I'm not getting anywhere...)
Careful how much you say that. I'm sure there's more than a few AI engineers willing to use some 3d graphics program to add a hundred thousand views of the inside of randomly generated shapes to the training set.
That's okay. People will come up with new edge cases and keep hallucinating reasons why AI training is unethical, until the results would be up to their quality standards.
I have a favourite test for LLMs that is also still surprisingly not passed by many:
You walk up to a glass door. It has 'push' written on it in mirror writing. What should you do and why.
Very few can get it right, even fewer can get it right and explain the right reason. They’ll start going on about how mirror writing is secret writing and push written backwards is code for pull, rather than just that it’s a message for the person on the other side.
Since the word "push" is written in mirror writing, it's intended to be read from the other side of the door. Therefore, the intended action for someone on your side of the door is the opposite of "push," which is "pull."'
GPT-4 got it right first try for me, with a slightly modified prompt:
> Here's a simple logic puzzle: You walk up to a glass door. It has 'push' written on it in mirror writing. What should you do and why?
> ChatGPT said:
> If the word "push" is written in mirror writing on the glass door, it means the writing is reversed as if reflected in a mirror. When viewed correctly from the other side of the door, it would read "push" properly.
> This implies that you are meant to pull the door from your side, because the proper "push" instruction is for someone on the other side of the door. Mirror writing is typically used to convey instructions to the opposite side of a glass surface.
Since the word "push" is written in mirror writing, that means it's intended to be read from the other side of the door. In other words, if you were on the other side of the door, the text would appear normally and say "push".
Given this, I should... pull the door open!
The reasoning is that the sign is instructing people on the other side of the door to push it open, which implies that from my side, I need to pull it open.
*Gemini Flash:
The word "push" is written in reverse, which means it is meant to be read in a mirror. Therefore, you should pull the door open.
The mirror writing is a visual cue indicating the opposite action of what the word suggests.
So gets it, but wrong reasoning.
*Gemini Flash 2:
You should pull the door.
The mirror writing is a clue. If the word "push" is written backward as if reflected in a mirror, it means the door is designed to be pulled. The reflection indicates that the intended action is the opposite of what the word appears to say at first glance.
Again, right answer, wrong reasons.
*Gemini Advance:
You should push the door to open it. Here's why:
Mirror Writing: The word "push" being in reverse mirror writing is a deliberate design choice. It's meant to be read correctly from the opposite side of the door (where someone would be exiting).
Standard Practice: Most glass doors are designed to swing outward for safety reasons (in case of emergencies where people need to evacuate quickly).
Therefore, even though the writing might seem confusing at first, it's actually a helpful indicator that you need to push the door to enter.
Honestly, if you’ve accurately reproduced your prompt, I had trouble interpreting it initially too. “written on it in mirror writing” is quite ambiguous. Are the letters reflective, but on my side of the door? Is there a mirror with handwriting in it somehow? Oh… does it mean “push is written on the other side of the glass, facing away, so that the writing appears backwards, or mirrored”?
DALL-E gave me a much better picture than I expected. When googling "inside of a cylinder" I barely got anything and I had a hard time even imagining a picture in my head ("if I would stand inside a cylinder looking into the wall, how would it look like as a flat 2D image?").
Yeah, the inside of a cylinder google results explain a lot in terms of lacking training data. If you google "O'Neill cylinder" you'll get what I was actually after originally, and the generators do badly there too, even though there are more examples (but still way too few).
I think these kind of unusual requests will eventually need synthetic data, or possibly some way to give the model an "inner eye" by letting it build a 3d model of described scenes and "look at it", as there are lot of things like this that you can construct a mental idea of if you just work through it in your mind or draw it, but that most people won't have many conscious memories off unless you try to describe it in terms of something else.
E.g. for the cylinder example, you get better results if you ask for a tunnel - which often can be "almost" a cylinder. But trying to then nudge it toward an O'Neill cylinder, and it fails to grasp the scale or that there isn't a single "down", and starts putting openings.
I wasn't able to get many decent results after playing with the demo for some time. I guess my question is...what exactly is this for? I was able to get substantially better results about 2 years ago running SD 2 locally on a gaming laptop. Sure, the images took 30 seconds or so each, but the quality was better than I could get in the demo. Not sure what the point of instantly generating a ton of bad quality images is.
The models seem to have gotten to a point where even something I can run locally will give decent results in a reasonable time. What is currently "the best" (both from an output quality and ease of installation perspective) setup to just play with local a) image generation, b) image editing?
For runtime, I use ComfyUi [0] which is node based and therefore a bit hard to learn. But you can just look at the examples on their github. Foocus [1] also seems to be popular and a bit more conventional perhaps, though I didn't try it.
For models, Flux [2] is pretty good and quite straightforward to use. (In general, you will have a runtime and then you have to get the model weights seperately). Which Flux variant depends on your graphics card, the Flux.1 schnell should work for most decently modern ones. (And the website, civitai.com is a repository for models and other associated tools.)
EasyDiffusion is almost completely download and run, i'm too lazy to setup comfyui, I just want to do model downloads -> run easy diffusion -> input my prompts into the web UI -> start cooking my poor graphics card
The devil's in the details as always. A "cartoon of a cat eating an icecream on a unicycle" doesn't bring back any of the 6-pawed mutant cats riding a unicycle, etc. Still, impressive speed.
It was called LCM/Turbo in SD and it generated absolute crap most of the times, just like this one. Which is likely yet another “ground-breaking” finetune of SD.