Corit.ai is an interactive-text-transformer-based professor, trained on the oral histories of the visual artist and professor Corita Kent. Corita was developped for the semester project « Libérer les énérgies créatrices » (p.30) at the École supérieure d'art d'Aix-en-Provence.
The project is best run on a Chrome browser, due to the use of the Web Audio API.
The project relies heavily on research into using GPT-2 in a design context, as developped in collaboration with Jürg Lehni, Nicolas Baldran, and the students of the Media Design Master, HEAD — Genève for our project Thinking Machines. For more information on the Thinking Machines project, see the conference "Thinking Machines" by Anthony Masure and Alexia Mathieu.
The original Node server code and configuration files were written by Jürg Lehni for the Thinking Machines project.
See the package.json file for node/npm requirements:
> cd Corita
> npm install
To start the Node server:
> cd Corita
> npm run dev
Or,
> cd Corita
> npm run start
To run GPT-2, you will need to build the corita model (cf. gpt/models/corita) as the current required file model-2149.data-00000-of-00001 is too large for current github restrictions on filesize. To train your own gpt-2 model cf.
- Beginner’s Guide to Retrain GPT-2 (117M) to Generate Custom Text Content by Ng Wai Foong
- GPT-2 Neural Network Poetry by Gwern Branwen.
To train with GPT-2, you will need to install Python and TensorFlow. This project currently uses python 3.7.6 and Tensorflow 1.13.1.
To train the current configuration:
> cd gpt2
> python src/encode.py text/corita.txt text/corita.npz
> python src/train.py --dataset text/corita.npz
Use ^c to interrupt the training, and continue with:
> python src/train.py --dataset text/corita.npz
To test the current training state:
> src/interactive_conditional_samples.py --model_name corita --top_k 40 --temperature 0.8 --length 64
When you are done training, copy the following files:
gpt2/checkpoint/run1/checkpoint
gpt2/checkpoint/run1/model-####.data-00000-of-00001
gpt2/checkpoint/run1/model-####.index
gpt2/checkpoint/run1/model-####.meta
...into the folder:
> gpt2/models/corita/
The project currently contains a skeleton Twee project, configured with SugarCube syntax. This project has not yet been hooked in with gpt-2. This Twee <> GPT-2 connection is currently in development for the Pang Pang Club in Aix-en-Provence.
The project uses the following technologies: