For #genuary2022 day 7, we took the #generative mission to heart and used the @OpenAI API to GPT-3 to algorithmically generate *new* drawing instructions in the style of Sol Lewitt, which we then attempted to draw. Thread on our process #creativecoding #p5js #genuary 1/
First, we grabbed the raw text of a bunch of Sol Lewitt drawing instructions from the “Solving Sol” GitHub repo (https://github.com/wholepixel/solving-sol). That landed us with 44 example instructions. 2/
Next, we fed these examples to the “completions” endpoint of the OpenAI API (https://beta.openai.com/docs/guides/completion). The completion endpoint is perfect for this task, as it’s able to take in a number of examples and generate more in the same style.
At the end of our list of sample instructions, we prompted the model for a new “## Wall Drawing #” , and left it up to the model to choose a number, year and instructions.
The model generates all sorts of instructions. Some are nonsense, or near-duplicates of existing Lewitt. But most are perfectly coherent. A few curated examples which we rendered in #p5js and Illustrator:
Wall Drawing #945 (2001). Two red squares meeting at right angles within a black square.
Wall Drawing #943 (2001). Blue dots 1/4 inch (6 mm) in diameter in two columns separated by a black 1-inch (25 mm) wide band. The dots are placed as close together as possible in order to cover the wall.
Wall Drawing #903 (1999). A wall divided horizontally and vertically into two equal parts. Top: a white square within which are white horizontal parallel lines, and a white rectangle within which are white vertical parallel lines. Bottom: a white square within which are white horizontal parallel lines and a white rectangle within which are white vertical parallel lines.
Wall Drawing #606 (1989). Ten pencils, ten colors. 10,000 pencil marks on a 40 x 40 inch (100 x 100 cm) square of black paper.
A few of the model outputs are quite funny if not very true to Lewitt. For example, the model’s “Wall Drawing #658 (1989)” calls for “Lines in three directions and two colors, in the style of Piet Mondrian.”
Others create contradictions but are almost interpretable; aside from drawing a “vertical band parallel to the horizontal axis” Wall Drawing #481 is nearly viable:
Wall Drawing #481 (1986). A vertical band parallel to the horizontal axis dividing the wall into two equal parts. Within each part, a band parallel to the vertical axis dividing the wall into two equal parts. Within each of those two parts, a band parallel to the horizontal axis dividing the wall into two equal parts. Within each of those two parts, a band parallel to the vertical axis dividing the wall into two equal parts. Within the innermost part, a band parallel to the horizontal axis.