LoraTrainer.frink

Download or view LoraTrainer.frink in plain text format


/** This creates a dataset for training an LLM on Frink code and examples. */

class LoraTrainer
{
   var outfile = undef
   var sampleDelimiter = "<samp>"
   var writer

   new[outfile] :=
   {
      this.outfile = outfile
      writer = new Writer[outfile]
   }

   /** Process a directory of .frink or .fsp files. */
   processFrink[dir] :=
   {
      for f = files[dir]
      {
 filename = f.getName[]
 if filename =~ %r/\.(frink|fsp)$/
 {
            println[filename + "\t" + f.length[]]

    writer.println[sampleDelimiter + "\n// $filename"]
    for line = lines[f]
               writer.println[line]
 }
      }
   }

   close[] :=
   {
      writer.close[]
   }
}

t = new LoraTrainer["/home/eliasen/builds/frinktrain.txt"]

t.processFrink["."]
t.processFrink["fsp"]
t.close[]


Download or view LoraTrainer.frink in plain text format


This is a program written in the programming language Frink.
For more information, view the Frink Documentation or see More Sample Frink Programs.

Alan Eliasen was born 20293 days, 4 hours, 46 minutes ago.