| どちらのモデルもオープンウェイトで、どちらもローカルのCPUワークステーションで動作し、どちらもテキスト中のPIIを検出します。私が調べて分かったことを簡単にまとめます。 GLiNER large-v2.1は約300Mパラメータ、ゼロショットで、推論時にエンティティタイプをそのままプレーンテキストの文字列として渡します。 openai/privacy-filterは合計1.5Bですが、疎なMoEのおかげでフォワードパスあたりにアクティブなのは50Mだけです。 実際のCPUでの速度は、openai/privacy-filterが約2.8サンプル/秒、GLiNER largeは約1.1サンプル/秒でした。 評価は、 落とし穴:openai/privacy-filterはGPTスタイルのBPEトークン化を使っており、ほとんどのトークンの先頭にスペースが付くようになります。そこで、トークンのオフセットを文字スパンにデコードし直すと、すべてが1文字分ずれます。厳密な完全一致でスコアすると、openai/privacy-filterは見た目がひどくなります。一方、境界のオーバーラップ(文字の重なりがあればOK、かつラベルが正しい)でスコアすると、実際には全体で勝ちます。 英語のマクロF1:
openai/privacy-filterのstrict-to-boundaryのギャップ0.34は、すべてトークナイザのオフセットの問題であり、実際の取りこぼしではありません。 カテゴリ別に見ると、boundaryスコアではopenai/privacy-filterがPERSON、EMAIL、PHONE、DATEで勝ちます。GLiNERはADDRESSで勝ちます。EMAILは実質的に解けています(英語0.987、多言語1.000)。 GLiNERでは閾値のチューニングが重要です。デフォルトの0.5はF1を取りこぼしています。このデータセットでは0.7が最良で、デフォルトより約8ポイントF1が良くなりました。 とにかくリコールを最優先にしたい(例:取りこぼしが許されない秘匿処理/レダクションが必要な場合)ならGLiNER。精度を重視し、かつCPUでのスループットを速くしたいならopenai/privacy-filter。openai/privacy-filterが同梱している8つ以外のカスタムエンティティタイプが必要なら、GLiNERのゼロショットインターフェースが唯一の選択肢です。 知っておくと少し面倒な点が1つあります。openai/privacy-filterは 完全な数値、多言語の内訳、閾値のスイープ、そして下のコメント欄にあるすべてのコード 開示:私はNeo AI Engineerに取り組んでおり、評価パイプラインはNeoが単一のプロンプトから構築して実行しました。公開前に手法を確認し、結果を検証しました。数値と発見はそれ自体で成り立っています。 [リンク] [コメント] |
OpenAIのプライバシーフィルターとGLiNERを600件のPIIサンプルで比較
Reddit r/LocalLLaMA / 2026/5/1
💬 オピニオンSignals & Early TrendsTools & Practical UsageModels & Research
要点
- この投稿では、オープンウェイトのPII検出モデルであるOpenAIのprivacy-filter(スパースMoEでフォワード時の有効パラメータは約50M)とGLiNER large-v2.1(約300M)を、ローカルCPU上で比較し、privacy-filterの方が処理が速い(約2.8サンプル/秒 vs GLiNERは約1.1)ことを示しています。
- ai4privacy/pii-masking-400kの600サンプル評価(英語400+多言語200、PIIカテゴリ6種)では、strictスコアでprivacy-filterが大きく不利に見えた主因が、GPTスタイルBPEによるトークンオフセットのズレによるものであり、境界の重なりを考慮する評価にするとprivacy-filterの総合成績は逆転する、と報告しています。
- カテゴリ別では、privacy-filterがPERSON、EMAIL、PHONE、DATEで強く、GLiNERがADDRESSで優位という傾向があり、EMAIL検出はGLiNERで非常に高精度(英語・多言語ともに高いF1)になっています。
- GLiNERはしきい値チューニングの影響が大きく、このデータセットではデフォルト0.5だとF1が伸びず、0.7が最良でデフォルト比で約+8F1改善したとされています。
- 実運用上の選び分けとして、取りこぼしが許されない用途(秘匿・マスキングなど)ではGLiNER、Precision重視かつCPUでのスループットを優先する場合はprivacy-filter、さらにOpenAI側の8種類を超える独自のエンティティ種別が必要ならGLiNERのゼロショット機構が唯一の選択肢、という整理がされています;またprivacy-filterはtrust_remote_code=Trueと、まだ安定版に入っていないTransformersのdevブランチが必要です。




