You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

fasttext.wasm.js

Package Overview
Dependencies
Maintainers
1
Versions
16
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

fasttext.wasm.js

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

0.0.1-next.5
Source
npmnpm
Version published
Weekly downloads
1.2K
-17.56%
Maintainers
1
Weekly downloads
 
Created
Source

fasttext.wasm.js

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

NPM version Download monthly

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

// Node
import {
  LanguageIdentificationModel,
  initializeFastTextModule,
} from 'fasttext.wasm.js'

await initializeFastTextModule()
// Use lid.176.ftz as default model
const model = new LanguageIdentificationModel()
await model.load()
const result = await model.identify('Hello, world!')
console.log(result) // 'en'
// Others
import {
  LanguageIdentificationModel,
  initializeFastTextModule,
} from 'fasttext.wasm.js/common'

// It will load fasttext.common.wasm from public root directly by default,
// You can download it from https://github.com/yunsii/fasttext.wasm.js/blob/master/src/core/fastText.common.wasm
// You can also use `locateFile` callback to custom fasttext.common.wasm full path.
await initializeFastTextModule()
const model = new LanguageIdentificationModel({
  // Specific model path under public directory,
  // You can download it from https://fasttext.cc/docs/en/language-identification.html
  modelHref: '/models/lid.176.ftz',
})
await model.load()
const result = await model.identify('Hello, world!')
console.log(result) // 'en'

Benchmark

codesandbox/language-detect-benchmark

  • 10x Faster and very more accurate than languagedetect
  • ~3x Faster and more accurate than franc

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

Keywords

fasttext

FAQs

Package last updated on 05 Jan 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts