2026年10月21日測定・promptShield 1.4.1・Presidio 2.2.364
Microsoft PresidioとpromptShieldの比較
8言語の新しい文書48件で再測定しました。文書内の個人情報には、すべて単語単位でラベルを付けています。両ツールに同じ抽出テキストを読ませ、保護すべき単語がそれぞれいくつ読める状態で残ったかを数えています。文書、ラベル、採点スクリプト、すべての生の結果を公開しているので、ご自身で確認できます。
名称について:PresidioはMicrosoftで開発され、その後Data Privacy Stackという組織のもとで、コミュニティが運営する独立したプロジェクトになりました。ライセンスは引き続きMITで、移行はMicrosoftも支援しています。タイトルに「Microsoft Presidio」と記しているのは、その名前で検索する方が多いためです。 プロジェクトの移行に関するお知らせを見る
要点
Presidio 2.2.364(初期設定、spaCyの大型モデル)
1,327
読める状態で残った保護すべき単語(全4,489語中)・検出率70%
promptShield 1.4.1
92
読める状態で残った保護すべき単語(全4,489語中)・検出率98%
個人情報ではない箇所を誤って検出することも、promptShieldのほうが少なく済みました。取り除く必要のある誤検出は、1文書あたりpromptShieldが1.9件、Presidioが9.8件です。保護すべき単語をひとつも残さなかった文書は、48件中、promptShieldが24件、Presidioが0件でした。多くのクイックスタートで導入されるspaCyの小型モデルを使うと、Presidioでは1,583語が読める状態で残りました。
リリースごとに見る、promptShieldの検出の変化
このページの初版では、promptShield 1.0.14を測定しました。今回は、そのバージョンから現在までの7件のリリースを、同じ文書で測定しています。各リリースは、それぞれのソースコードから起動し、そのリリース自身の「検出」ボタンで実行しました。ポーランド語は1.4.0で追加されたため、グラフではすべてのリリースが対応する7言語を集計しています。
数値を表示
| リリース | 日付 | 検出率 | 読める状態で残った単語 | 1文書あたりの誤検出 | 読める単語が残らなかった文書 |
|---|---|---|---|---|---|
| promptShield 1.0.14 | 2026年6月16日 | 74.3% | 999 | 4.5 | 0 / 42 |
| promptShield 1.1.3 | 2026年8月6日 | 74.3% | 999 | 4.5 | 0 / 42 |
| promptShield 1.2.0 | 2026年8月22日 | 74.6% | 987 | 4.5 | 0 / 42 |
| promptShield 1.2.5 | 2026年9月28日 | 76.5% | 915 | 4.5 | 0 / 42 |
| promptShield 1.3.4 | 2026年10月5日 | 98.1% | 73 | 2.0 | 22 / 42 |
| promptShield 1.3.8 | 2026年10月15日 | 98.1% | 73 | 2.0 | 22 / 42 |
| promptShield 1.4.1 | 2026年10月21日 | 98.1% | 73 | 2.0 | 22 / 42 |
| Presidio 2.2.364 | – | 71.4% | 1,120 | 10.3 | 0 / 42 |
9月までのpromptShieldは、検出できた量がPresidioとほぼ同じで、誤検出はより少ない状態でした。1.0.14では保護すべき単語の74%を検出し、誤検出は1文書あたり4.5件でした。その後の大きな伸びは、9月30日から10月2日にかけて4回にわたって行った検出の改善によるものです。改善のたびに、エンジンが一度も見たことのない文書で採点しました。対象はID番号、住所、電話番号、大文字で書かれた氏名で、同時に誤検出も減らしています。それ以降、7言語の結果は安定しており、改善の中心はポーランド語に移りました。ポーランド語の文書では、promptShield 1.4.1が保護すべき単語の97%を、Presidioが64%を検出しています。
機能比較
| 機能 | promptShield | Presidio |
|---|---|---|
多言語対応の正規表現による検出(60種類以上) Presidio:初期設定では英語が中心 | ◦ | |
多言語の固有名詞検出モデル(Davlan) Presidio:Hugging Faceのカスタム検出器が必要 | ◦ | |
文脈で個人情報を判断するLLM(オプション) | ||
米国NPI・ABA・DEAのチェックサム検証 Presidio:NPIとMBIは搭載、ABA・DEAは一部のみ | ◦ | |
オーストラリアTFN・ABN・ACN・Medicareのチェックサム検証 | ||
ブラジルCPF・CNPJのチェックサム検証 | ||
スイスAHVのチェックサム検証 | ||
メキシコCLABEのチェックサム検証 | ||
オランダBSN・RSINのチェックサム検証 | ||
フランスNIR(社会保障番号)の検証 | ||
管轄に関する定型文のフィルター 「X法に従う」のXは検出対象外 | ||
同一ページ内のPERSONの統合 「Pierre Dubois」を残し、単独の「Pierre」は除外 | ||
一般的な部署名(ORG)のフィルター | ||
役職名(PERSON)のフィルター | ||
確認画面を備えた完成済みのデスクトップアプリ | ||
元に戻せるコード化(コード化・デコード) Presidio:別の匿名化レイヤーで対応 | ◦ | |
完全オフラインでの処理(クラウドに依存しない) | ||
APIによるカスタム検出器 | ||
独自の連携に使えるPythonライブラリ | ||
Azure AI Languageとの連携 |
✓:標準で搭載、◦:カスタム設定で利用可能、✗:なし
Presidio(初期設定)が出力し、promptShieldが抑える誤検出の種類
契約書のフッターにあるURL
プライバシーポリシーへのリンク、サポートページのURL、一般的な法務窓口の連絡先などです。契約書1件あたり約8〜10件検出されますが、確認する人が黒塗りしたい個人情報はほとんど含まれません。
UrlRecognizer管轄に関する記述に単独で出てくる国名・都市名
「本契約はフランス法に従う」「本店所在地はパリ」「ドイツで設立された会社」などです。フランスの財務諸表1件で、PresidioはLOCATIONを73件出力しますが、ほぼすべてが文書の定型的な記述です。
filter_jurisdiction_boilerplate + filter_standalone_countryPERSONの断片
同じ氏名が「Pierre」「Dubois」「Pierre Dubois」の3つに分かれて検出されます。イタリア語の契約書1件で、PresidioはPERSONを26件出力しました。その内訳は、同じ氏名の繰り返しと、名・姓・フルネームに分かれた断片です。
filter_span_coalescenceORGとして検出される一般的な部署名
「Marketing」「Vorstand」「Direction Générale」「Board of Directors」「Comitato di Direzione」などです。確認する人が黒塗りしたい組織名ではありません。
filter_generic_org(90語の除外リスト×7言語)PERSONとして検出される役職名
行頭で大文字になった「CEO」「Directeur」「Geschäftsführer」などが、固有名詞の検出モデルによってPERSONと誤って判定されることがあります。
filter_role_titlesPresidioを選ぶべき場合
次のような場合は、Presidioが適しています。
- Pythonで独自のDLPパイプラインを構築しており、ライブラリとして組み込み、細かく制御したい場合。
- クラウドサービス(Azure AI Language、AWS Comprehend)を、個人情報検出の共通インターフェースでまとめて扱う必要がある場合。
- 自社固有の情報の種類に合わせて、独自の検出器を細かく調整したい場合。
- 1件ごとの文書ではなくテキストストリームを処理するため、サービスとして組み込めるライブラリが必要な場合。
PresidioはMITライセンスのオープンソースで、promptShieldは商用製品です。用途に合うほうをお選びください。
promptShieldを選ぶべき場合
- デスクトップで、PDF・DOCX・XLSXの文書を1件ずつ匿名化する場合。
- 国ごとのチェックサム検証(TFN、CPF、NPI、IBANなど)を、自社で実装せずにすぐ使いたい場合。
- 組み込み用のライブラリではなく、確認、黒塗り、コード化、ダウンロードまでそろった完成済みの画面で作業したい場合。
- 顧客がコンプライアンス上の理由で、文書をクラウドサービスに送れない場合。
ご自身で再現する
このページの数値は、すべて公開リポジトリのファイルから算出しています。リポジトリには、48件の文書とそのラベル、各ツールの生の出力、採点スクリプトが含まれています。確認できない実行結果に基づく数値は、ひとつもありません。
git clone https://github.com/promptshield-Inc/pii-detection-benchmarks
cd pii-detection-benchmarks
pip install -r requirements.txt
python presidio_run.py lg
python score.py1つ目のコマンドで、公開テキストに対してPresidioを再実行します。2つ目のコマンドで、フォルダー内のすべての結果をラベルと照合して採点します。どちらも、promptShieldをインストールしなくても実行できます。
よくある質問
Microsoft Presidioは今もMicrosoftのプロジェクトですか?
いいえ。PresidioはMicrosoftで始まり、コミュニティによる独立した運営への移行を完了しています。現在はData Privacy Stackという組織のもとで、コントリビューターとボランティアが保守しており、営利企業が所有・運営しているわけではありません。移行はMicrosoftも支援しました。ライセンスは引き続きMITで、コードベースも同じです。そのため、このベンチマークの結果は、リポジトリの管理者が誰であっても変わりません。microsoft.github.ioにある古いドキュメントへのリンクは、使えなくなる場合があります。現在のドキュメントはpresidio.dataprivacystack.orgにあります。
Microsoft Presidioは無料ですか?
はい。PresidioはMITライセンスで公開されており、利用量にかかわらず料金はかかりません。かかるのは費用ではなく、開発の工数です。Presidioが提供するのは検出の基本機能で、完成したワークフローではありません。実際に運用するには、通常、文書の解析、確認用の画面、保存期間の方針に合わせた保管の仕組みを周りに構築する必要があります。ライセンスを購入するより安く済むかどうかは、そうした仕組みをすでにどれだけお持ちかによります。
Microsoft Presidioを使うには、開発の知識が必要ですか?
実際には必要です。Presidioは、コードや自社でホストするサービスから操作するPythonライブラリです。デスクトップアプリやエンドユーザー向けの画面は提供されていません。これは機能の不足ではなく、設計上の判断です。Presidioは、ほかの誰かが組み立てるパイプラインに組み込まれることを前提としています。文書を扱うのがエンジニアではなく、弁護士、アナリスト、コンプライアンス担当者であれば、そうした担当者が使えるように、画面などの仕組みを別に構築する必要があります。
Microsoft PresidioはDLPツールですか?
単体ではDLPツールとはいえません。Presidioは、渡された内容に含まれる個人情報を検出し、匿名化します。これはDLP(情報漏えい対策)を構成する要素のひとつです。一方で、その周辺の仕組みは備えていません。ポリシーエンジン、エンドポイントやネットワークでの制御、アラート、監査証跡はありません。多くのチームが、自社で構築するDLPシステムの検出部分としてPresidioを使っています。しかし、完成したDLP製品として考えると、Presidioはそれにはあたりません。
Microsoft Presidioの主な競合は何ですか?
どの部分を置き換えるかによります。検出ライブラリとして見ると、最も近い比較対象はクラウドの個人情報検出サービス(Azure AI Language、Google Cloud DLP、AWS Comprehend)です。ただし、Presidioはこれらと競合するのではなく、これらを呼び出して使えます。実際に文書を黒塗りする手段として見ると、比較対象はpromptShield、Adobe Acrobat、クラウドの黒塗りサービスなどの完成したツールになります。この場合は、ライセンス費用と、自社で開発する場合の工数を比べることになります。
promptShieldはPresidioのようにオープンソースですか?
いいえ。PresidioはMITライセンスのオープンソースライブラリで、promptShieldは商用製品です。これは明確な違いなので、はっきりお伝えします。一方、このページの信頼性に関わる部分は公開しています。ベンチマークの実行環境、テスト用の文書、生の結果ファイルはすべて公開済みです。スクリプトのうちPresidio側は、promptShieldをインストールしなくても単独で実行できます。数値をそのまま信じていただく必要はありません。
promptShieldは内部でPresidioを使っていますか?
いいえ。検出エンジンは独自に開発したものです。これはPresidioの品質を評価した結果ではなく、設計上の判断です。promptShieldは、ネットワークにまったく接続されていない可能性もあるデバイス上で、1件ごとの文書を処理します。一方、Presidioは、サーバーのパイプラインでテキストストリームを処理するライブラリとして設計されています。開発の大部分を占めるのは、確認する人が不要と判断する検出結果を見分ける部分です。この部分は、当社で開発する必要がありました。
両方を組み合わせて使えますか?
はい。役割が異なるため、問題なく組み合わせられます。Presidioは、自社システム内で大量の内容を検査する用途に向いています。ライブラリをパイプラインに組み込めるためです。promptShieldは、人が検出結果を確認し、責任を持って外に出す必要がある、比較的少数の文書に向いています。パイプラインでは自動処理で幅広くカバーし、重要な文書は人が確認して慎重に扱う、という使い分けになります。
注意事項
- 初期設定のみで測定。 Presidioは、組み込みの検出器と、言語ごとに1つのspaCyモデルで実行しました。カスタムの検出器もスコアのしきい値も使っていません。ポーランド語については、PresidioがspaCyのポーランド語の固有名詞を読み取るために必要なラベルの対応付けを、1つだけ追加しました。これがないと、Presidioはポーランド語の氏名をまったく検出できません。カスタムの検出器とTransformerモデルで調整した構成であれば、この結果を上回るはずです。
- 架空の文書を使用。 48件の文書は、実際の文書に似せて作成したものです。内容は契約書、請求書、銀行取引明細書、医療機関の文書、人事通知、法務関係の書簡で、いずれもデジタルで作成された乱れのないPDFです。スキャン、OCRの誤り、複雑なレイアウトは、ここでは測定していません。
- ラベルの作成者。 文書とラベルは、公開済みのラベル付け仕様に従って、AIエージェントが1言語ずつ作成しました。エージェントはpromptShieldの検出コードにアクセスできません。すべてのラベルは、スクリプトを使って抽出テキストと照合しています。人間のアノテーターによる確認は行っていません。ラベルは公開しています。誤りを見つけた場合はお知らせください。訂正内容を公開します。
- 過去のリリースを現在の環境で実行。 以前の各リリースは、同じコンピューター上で、それぞれのソースコードと現在のモデルファイルを使って実行しました。当時のアプリが読み込めなかったエンジン(アプリに含まれないPyTorchが必要なもの)は、今回も使用していません。そのため、各リリースは、ユーザーが実際に使えたエンジンで実行されています。リリース1.2.8は、同じ理由で除外しました。このリリースでは、ビルドの問題により、インストールされたアプリが新しいエンジンを読み込めませんでした。ソースコードから実行すると、ユーザーが実際に得た結果を上回ってしまいます。
比較
オフラインで使える個人情報マスキングツール12選(2026年)
文書をクラウドに送らずに個人情報をマスキングできる12製品を、当社製品を含めて同じ基準で採点しました。他社製品についての記載には、出典を付けています。
比較を見る役に立った場合は、拍手でお知らせください。