/** * Skip-gram with negative sampling (word2vec SGNS) in pure TypeScript. * * Training is kept PURE — no subword features mixed into the gradient — so the * in-vocabulary word vectors stay semantic (deploy↔배포) rather than drifting * orthographic. Subword coverage for rare / unseen words is added afterwards as * a derived centroid layer (see buildSubwordCentroids), which leaves these * trained vectors untouched. Deterministic given `opts.seed`. Input is * pre-tokenized sentences (use the same tokenizer as memory search). */ import type { TrainedEmbeddings, Word2VecOptions } from "./types.js"; export declare const DEFAULT_W2V: Word2VecOptions; export type TrainProgress = (epoch: number, epochs: number) => void; export declare function trainWord2Vec(sentences: string[][], options?: Partial, onProgress?: TrainProgress): TrainedEmbeddings;