mirror of
https://github.com/ReVanced/revanced-bots.git
synced 2026-01-11 13:56:15 +00:00
53 lines
1.7 KiB
JavaScript
53 lines
1.7 KiB
JavaScript
import FastText from 'fasttext.js';
|
|
import { join } from 'node:path';
|
|
|
|
export default async function trainAI() {
|
|
const ft = new FastText({
|
|
train: {
|
|
// number of concurrent threads
|
|
thread: 8,
|
|
// verbosity level [2]
|
|
verbose: 4,
|
|
// number of negatives sampled [5]
|
|
neg: 7,
|
|
// loss function {ns, hs, softmax} [ns]
|
|
loss: 'ns',
|
|
// learning rate [0.05]
|
|
lr: 1,
|
|
// change the rate of updates for the learning rate [100]
|
|
lrUpdateRate: 1000,
|
|
// max length of word ngram [1]
|
|
wordNgrams: 5,
|
|
// minimal number of word occurences
|
|
minCount: 1,
|
|
// minimal number of word occurences
|
|
minCountLabel: 1,
|
|
// size of word vectors [100]
|
|
dim: 100,
|
|
// size of the context window [5]
|
|
ws: 5,
|
|
// number of epochs [5]
|
|
epoch: 20,
|
|
// number of buckets [2000000]
|
|
bucket: 2000000,
|
|
// min length of char ngram [3]
|
|
minn: process.env.TRAIN_MINN || 3,
|
|
// max length of char ngram [6]
|
|
maxn: process.env.TRAIN_MAXN || 6,
|
|
// sampling threshold [0.0001]
|
|
t: 0.0001,
|
|
// load pre trained word vectors from unsupervised model
|
|
pretrainedVectors: ''
|
|
},
|
|
serializeTo: join(global.__dirname, global.config.fasttext.loadModel).replace('.bin', ''),
|
|
trainFile: join(global.__dirname, global.config.fasttext.trainFile),
|
|
});
|
|
|
|
global.ft.unload();
|
|
|
|
await ft.train()
|
|
|
|
global.ft.load();
|
|
|
|
return;
|
|
} |