Files
2026-07-13 12:48:55 +08:00

28 lines
758 B
JavaScript

/* eslint-disable no-console */
import corpus from 'nlp-corpus'
import fs from 'fs'
import nlp from '../../../src/three.js'
import plugin from '../src/plugin.js'
nlp.extend(plugin)
import idf from '../src/tfidf/idf.js'
import zipUp from './pack.js'
const fileSize = (pathStr) => {
const kb = fs.statSync(pathStr).size / 1024
return Math.round(kb) + 'kb'
}
// let txt = corpus.some(1000).join('\n')
const txt = corpus.all().join(`\n`)
const doc = nlp(txt).compute('root')
const counts = idf(doc, { use: 'root', min: 4 })
// collect by freq
const byFreq = zipUp(counts)
// console.log(counts)
const out = "export default " + JSON.stringify(byFreq, null, 2)
fs.writeFileSync('./src/tfidf/_model.js', out)
console.log(fileSize('./src/tfidf/_model.js'))