Make It Better
Surprising results happen when you repeatidely ask the LLM to “make it better” (see blog post).
In this sample, we use the makeItBetter
function from the genaiscript/runtime
to acheive exaclty that: asking the LLM to make it better for a few rounds.
Code Explanation
Let’s walk through the script line by line:
import { makeItBetter } from "genaiscript/runtime"
This line imports the makeItBetter
function from the GenAIScript runtime. This function is used to improve code by repeating a set of instructions multiple times.
def("CODE", env.files)
This line defines a constant named “CODE” that represents the files in the environment. It essentially sets up the context for the code that needs improvement.
$`Analyze and improve the code.`
This line is a prompt for the AI model. It instructs the system to analyze and enhance the code. The $
is used to denote that this is a special instruction, not a regular code command.
makeItBetter({ repeat: 2 })
This line calls the makeItBetter
function with an option to repeat the improvement process twice. It registers a chat participant
that injects messages in the chat conversation loop.
The makeItBetter
rouhgly looks like this. It registers a callback function that gets called
on every chat turn.
export function makeItBetter(options?: { repeat: ... }) { let round = 0 defChatParticipant((cctx) => { if (round++ < repeat) { cctx.console.log(`make it better (round ${round})`) cctx.$`make it better` } })}