xxxxxxxxxx
43
// A2Z F24
// Daniel Shiffman
// https://github.com/Programming-from-A-to-Z/A2Z-F24
// This is based on Allison Parrish's RWET examples
// https://github.com/aparrish/rwet-examples
let data;
// Markov Generator object
let markov;
// Output element
let output;
function preload() {
// Load pre-trained Markov model from JSON file
data = loadJSON("markov.json");
}
function setup() {
// Initialize Markov Generator with N-gram length 4, max output length 100
markov = new MarkovGenerator(4, 100);
// Load N-grams and beginnings into the Markov generator
markov.ngrams = data.ngrams;
markov.beginnings = data.beginnings;
// Create a button for generating text
let button = createButton("generate");
button.mousePressed(generate);
noCanvas();
}
function generate() {
// Set temperature for text generation
let temperature = 1;
// Generate text from the Markov model
let result = markov.generate(temperature);
// Replace line breaks with HTML line breaks
result = result.replace("\n", "<br/><br/>");
createP(result);
}