fasttext.wasm.js
Node and Browser env supported WebAssembly version of fastText: Library for efficient text classification and representation learning.

WebAssembly version of fastText with compressed lid.176.ftz
model (~900KB) and a typescript wrapper. This project focuses on cross-platform, zero-dependency and out-of-the-box.
Features
- Written in TypeScript
- Node, Browser and Browser extension support
- Language identification integrated
Usage
import {
LanguageIdentificationModel,
initializeFastTextModule,
} from 'fasttext.wasm.js'
await initializeFastTextModule()
const model = new LanguageIdentificationModel()
await model.load()
const result = await model.identify('Hello, world!')
console.log(result)
import {
LanguageIdentificationModel,
initializeFastTextModule,
} from 'fasttext.wasm.js/common'
await initializeFastTextModule()
const model = new LanguageIdentificationModel({
modelHref: '/models/lid.176.ftz',
})
await model.load()
const result = await model.identify('Hello, world!')
console.log(result)
Benchmark
codesandbox/language-detect-benchmark
Related
Credits
References
Build & Publish
Requirements
Pay attention, add source ./emsdk_env.sh
to shell profile to auto load emsdk env, and export EMSDK_QUIET=1
can be used to suppress these messages.
npm run build
npx changeset
npx changeset version
git commit
npx changeset publish
git push --follow-tags
changeset
prerelease doc
License
MIT License © 2023 Yuns