quickwit-oss/whichlang

A blazingly fast and lightweight language detection library for Rust

解決する課題

Whichlang は、与えられたテキスト文字列の言語を検出するための高性能で軽量なソリューションを提供します。ログやトレースデータ処理の高スループット要件を満たすために開発されました。標準的な言語検出ライブラリは遅すぎるか、精度が不十分でした。

仕組み

このライブラリは多クラスロジスティック回帰モデルを使用します。入力テキストから 2、3、4 文字の n-gram とコードポイント分析を使用して特徴を抽出します。これらの特徴はハッシュトリックを使用して 4096 次元空間に投影されます。結果として得られるモデルは速度に最適化されており、100 MB/s を超えるスループットを達成します。

対象読者

検索エンジン、ログプロセッサ、リアルタイム分析パイプラインなどのデータ集約型アプリケーションに高速で信頼性の高い言語識別を統合する必要がある Rust 開発者向けに設計されています。

ハイライト

  • 非常に高速:既存の代替品よりも大幅に速い 100 MB/s 以上のスループットを達成。
  • 高精度:16 のサポート言語で平均約 97% の精度を提供。
  • ゼロ依存:パフォーマンスが重要な環境に適した軽量実装。
  • アラビア語、北京語、英語、フランス語、ドイツ語、ヒンディー語、イタリア語、日本語、韓国語、ポルトガル語、ロシア語、スペイン語、スウェーデン語、トルコ語、ベトナム語を含む 16 言語をサポート。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト