ONNX Runtimeを使い、サーバーなしでHugging Face TransformersモデルをブラウザーやJavaScriptランタイム上で実行できます。
spencermountain/compromise
品詞タグ付け、テキストパターンの照合、動詞の時制や数詞などの変換ができるJavaScript自然言語処理ライブラリです。
- スター
- 12,165
- フォーク
- 668
- 未解決の Issue
- 93
- 最終コミット
- 一昨日
これは何?
compromiseは、ブラウザとNode.jsで動作する軽量なJavaScript自然言語処理ライブラリです。生のテキストを構造化されたドキュメントに変換し、名詞、動詞、数詞、日付、人名、場所を見つけて、取り出したり書き換えたりできます。
「#Adjective of times」のような簡潔なパターン照合構文で文の一部を選択できるほか、動詞の過去形への変換、名詞の複数形化、短縮形の展開、数詞の追加といった処理に使える変換機能も備えています。結果はテキストまたはJSONとして出力できます。コアビルドはトークナイザーとタグ付け機能で構成され、トークン化のみを行う軽量な用途向けに別のエントリーポイントも用意されています。compromise-speechで音節を扱うなど、プラグインで機能を拡張できます。
英語を中心としたプロジェクトです。関連パッケージでは、フランス語、ドイツ語、イタリア語、スペイン語に対応しています。
主な機能
- 0183種類のタグの体系を使った品詞タグ付け
- 02簡潔な照合構文によるフレーズのパターンマッチング
- 03動詞の活用、名詞の複数形化、時制の変換
- 04数値、金額、分数、パーセンテージの解析と計算
- 05短縮形の展開とテキストの正規化
- 06プラグインシステムと、軽量な用途向けのトークン化専用ビルド
ユースケース
- 記事やチャットのテキストから人名、場所、日付を抽出する
- 適切な動詞の形を使った英語の文を生成または修正する
- フォームや検索でユーザー入力から数値や通貨を解析する
- ブラウザ上で軽量なテキスト分析を実行する
クイックスタート
- 1
npmからライブラリをインストールする
npm install compromise - 2
ライブラリをインポートし、文に対して簡単な例を実行する
使う前に知っておきたいこと
- 名前ほど賢くはなく、限られたルールベースの判断に依存しています。
- ライブラリ全体のサイズはminify後で約250kbあり、小さなバンドルには大きすぎます。
- 他の言語は、fr-compromise、de-compromise、it-compromise、es-compromiseなどの別プロジェクトとしてのみ提供されています。
トピック
よくある質問
- compromise とは?
- 品詞タグ付け、テキストパターンの照合、動詞の時制や数詞などの変換ができるJavaScript自然言語処理ライブラリです。 compromiseは、ブラウザとNode.jsで動作する軽量なJavaScript自然言語処理ライブラリです。生のテキストを構造化されたドキュメントに変換し、名詞、動詞、数詞、日付、人名、場所を見つけて、取り出したり書き換えたりできます。
- compromise は無料で使えますか?ライセンスは?
- compromise は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- compromise は今もメンテナンスされていますか?
- 活発にメンテナンス中。compromise の最終コミットは 2026年10月19日 です。
- compromise は何に使えますか?
- 記事やチャットのテキストから人名、場所、日付を抽出する 適切な動詞の形を使った英語の文を生成または修正する フォームや検索でユーザー入力から数値や通貨を解析する ブラウザ上で軽量なテキスト分析を実行する
- compromise のインストール方法は?
- npmからライブラリをインストールする: npm install compromise ライブラリをインポートし、文に対して簡単な例を実行する
- compromise はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/spencermountain/compromise
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
NLPや言語モデルのパイプライン向けに、Rustで実装され、PythonとNode.jsのバインディングを備えた最先端の高速トークナイザーライブラリ。
学習データなしでNERやテキスト分類などを行えるよう、大規模言語モデルを構造化されたNLPパイプラインに組み込むspaCy拡張機能。
テキスト、画像、構造化データ内のPIIを検出・匿名化する、オープンソースのPython SDKとサービス。
Microsoft製のPythonライブラリ。重要度の低いトークンを取り除き、性能をほぼ維持しながらLLMのプロンプトとKV cacheを最大20倍圧縮します。
KenLMからQwenベースのLLMまで、綴り・発音・字形・文法の誤りを修正する中国語テキスト向けPythonツールキット。