Repolode
segment-any-text

segment-any-text/wtpsplit

85言語に対応した事前学習済みSaTおよびWtPモデルを使い、テキストを文やその他の意味単位に分割するPythonツールキット。

スター
1,378
フォーク
84
未解決の Issue
2
最終コミット
昨日

これは何?

wtpsplitはテキストを文に分割し、改行位置の予測を使って段落に分割することもできます。85言語に対応するSaT(Segment any Text)モデルに加え、再現性のために以前のWtPモデルも提供します。モデルはHugging Faceから名前を指定して読み込め、シンプルなsplit呼び出しで、1つのテキストから文のリストを取得するか、複数のテキストを処理するイテレーターを取得できます。

通常の文分割だけでなく、モデルが予測した境界確率に対してViterbi探索または貪欲探索を行い、セグメントの最小長と最大長を指定できます。必要に応じて、Gaussian分布や対数正規分布などの長さ事前分布を使って分割を調整できます。特定の言語、ドメイン、文体に合わせた事前学習済みLoRAアダプターも利用でき、正しく分割された少量の文から独自のアダプターを学習することもできます。

推論は、GPUやTPU、TorchInductorによるコンパイルに対応したPyTorch、またはCUDA/CPUプロバイダーを使うONNX Runtimeで実行できます。プロジェクトはPythonで実装され、MITライセンスで公開されています。

主な機能

  • 01事前学習済みSaTモデルを使った、85言語の文分割。
  • 02min_lengthおよびmax_lengthオプションによる、長さ制約付きの分割。
  • 03改行確率の予測に基づく、任意の段落分割。
  • 04特定の言語、ドメイン、文体に対応するLoRAアダプター。
  • 05GPUまたはTPU上のPyTorch、TorchInductorによるコンパイル、またはONNX Runtimeを使った推論。

ユースケース

  • 埋め込みやインデックス化の前に、生のドキュメントを文に分割する。
  • 信頼できる句読点がない文字起こしや字幕を前処理する。
  • NLPの学習データを準備するため、多言語コーパスを分割する。
  • 後続の言語モデルパイプラインで扱えるよう、サイズ上限内のチャンクを作成する。

クイックスタート

  1. 1

    pipでパッケージをインストールする

    pip install wtpsplit
  2. 2

    SaTをインポートして、事前学習済みモデルを読み込む

    from wtpsplit import SaT
  3. 3

    テキストを文に分割する

    sat.split("This is a test This is another test.")

使う前に知っておきたいこと

  • 大規模モデルを効率よく実行するには、GPUがあると大幅に高速化できます。READMEでも任意の選択肢として推奨されています。
  • ONNXやAITuneなどの一部の高度な機能を使うには、別途インストールと追加のセットアップが必要です。

収録されている特集

トピック

よくある質問

wtpsplit とは?
85言語に対応した事前学習済みSaTおよびWtPモデルを使い、テキストを文やその他の意味単位に分割するPythonツールキット。 wtpsplitはテキストを文に分割し、改行位置の予測を使って段落に分割することもできます。85言語に対応するSaT(Segment any Text)モデルに加え、再現性のために以前のWtPモデルも提供します。モデルはHugging Faceから名前を指定して読み込め、シンプルなsplit呼び出しで、1つのテキストから文のリストを取得するか、複数のテキストを処理するイテレーターを取得できます。
wtpsplit は無料で使えますか?ライセンスは?
wtpsplit は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
wtpsplit は今もメンテナンスされていますか?
活発にメンテナンス中。wtpsplit の最終コミットは 2026年11月5日 です。
wtpsplit は何に使えますか?
埋め込みやインデックス化の前に、生のドキュメントを文に分割する。 信頼できる句読点がない文字起こしや字幕を前処理する。 NLPの学習データを準備するため、多言語コーパスを分割する。 後続の言語モデルパイプラインで扱えるよう、サイズ上限内のチャンクを作成する。
wtpsplit のインストール方法は?
pipでパッケージをインストールする: pip install wtpsplit SaTをインポートして、事前学習済みモデルを読み込む: from wtpsplit import SaT テキストを文に分割する: sat.split("This is a test This is another test.")
wtpsplit はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/segment-any-text/wtpsplit

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト