ajndkr / boilerplate-x

🧩 Generate your project boilerplate code auto-magically
MIT License
44 stars 6 forks source link

Binary files have text descriptions instead of the file contents #8

Closed Taytay closed 1 year ago

Taytay commented 1 year ago

This makes "sense", but was initially surprising. :)

Here's the repo it made for me: https://github.com/Taytay/boilerplate-x-vscode-extension

From this prompt: "VSCode extension that adds a single command to restart and run all cells in a Jupyter notebook. Should include github actions to build the extension, create a release that include the built vsix file, and publish the extension."

The png file looks like this text file: https://github.com/Taytay/boilerplate-x-vscode-extension/blob/main/images/icon.png This file contains the icon image for the VSCode extension. The icon should be a recognizable image that represents the functionality of the extension. The recommended size for the icon is 128x128 pixels. The icon should be saved in PNG format to ensure compatibility with all platforms

Of course we "know" that this should be an AI-generated png file, right? ;)

ajndkr commented 1 year ago

I was curious what it will do in cases of binary files. Interesting output!

For now, I think I will consider this as a limitation of chatGPT. We could plug in a text2image API in cases of png/jpeg files. I will open a feature request for it but I need to think about this little more.

ajndkr commented 1 year ago

@Taytay looking at your repo, this is the most surprising output 🤯 https://github.com/Taytay/boilerplate-x-vscode-extension/blob/main/images/icon.svg

Taytay commented 1 year ago

Totally a limit of GPT as it stands! For binary files, I think you could have some sort of meta-instruction, or meta-file. Like icon.png.meta-instruct or something? In fact, perhaps you could seed all of the files this way. For the text files, the LLM would "follow" the instructions in the file to get the content... For images, it could use Midjourney, etc. For music or sound, you could use another. Or it could be left as an exercise for the reader. For instance, I could "almost" put that text prompt as it stands into MidJourney. If there was a bit more detail there, it would totally work.

(And please don't take me too seriously - I realize this is just for fun)

ajndkr commented 1 year ago

That definitely sounds like a good idea to me. 😄

i will do some experiments on chatgpt towards this.

ajndkr commented 1 year ago

@Taytay FYI, boilerplate-x offers an out-of-the-box github integration to create repos for you. You need to pass the --create-github-repo flag to enable it. I will do a better job at docs in the future.

Taytay commented 1 year ago

Oh nice! I hadn't gotten a chance to play with that yet!

The other benefit of this is that it might make it easier to parallelize...First, you generate the meta-instructions, then you just chew through all of those files in parallel. But hmmm - perhaps the context would be needed. I was just playing with something similar to boilerplate-x using this prompt: https://twitter.com/SteveMoraco/status/1641902178452271105

I thought you might like it as well.

Lastly, there's someone working on a thing where you chat with your repo, and it has the ability to write diffs for you: https://useadrenaline.com/app

Lots of related ideas of having the computer write the repo for you...

ajndkr commented 1 year ago

definitely! I like the parallelisation idea. definitely going to be the next thing I tackle.