Desert Ant Labs

Redact.

PII マスキング提供中

入力したそばから個人データを取り除くオンデバイスのマスキング。27 言語に対応し、サーバーやログに届く前に処理します。

デモ

個人データは、外に出る前に消す。

サポートの応対記録は、保持が認められていない氏名、住所、カード番号だらけです。Redact は、テキストが送信されるより前に、ブラウザやスマートフォンの中でそれらをマスクします。保存されるのは、顧客名のあった場所に [GIVEN_NAME_1] が入ったテキストです。

Redact は値を元に戻すこともできます。プロンプトを外部モデルに送る前にマスクし、回答の中で本物の氏名や番号を復元します。プレースホルダーの対応表を残せば結果は仮名化、対応表を削除すればマスク済みのコピーは匿名化になります。

Microsoft Presidio、AWS Comprehend、Google Cloud DLP も同じ領域をカバーしますが、いずれもテキストを自社サーバーに置きたがります。Redact は 23M パラメータで 27 言語にわたり個人データの 88.8% を捕捉するため、同じマスキングがブラウザのタブでも、スマートフォンでも、Node のバックエンドでも動きます。

カード番号、IBAN、国民 ID、VAT 番号は、実際のチェックサム、つまり Luhn、ISO-13616、そして国ごとの規則で検証されます。無作為な 16 桁の文字列がカード番号としてマスクされることはありません。

個人データの 88.8% を捕捉。

テキスト中の個人データの 88.8% を捕捉し、それ以外にはほとんど手を付けません。ブラウザのタブで動くほど小さなモデルによるものです。これより再現率が高い唯一のシステム GLiNER-PII は 2.3GB です。

88.8
捕捉した個人データ
リーク防止の再現率、すべてのシステムで同一の評価環境
99.6
適合率
マスクした対象のうち実際に個人データだった割合
12MB
オンデバイス
Apple。Android と Web では 25MB
27
言語
EU の公用語すべて、加えてノルウェー語とアイスランド語

どのシステムも同じ評価ハーネスで同じ行を、それぞれ独自の動作点で採点しています。比べているのはモデルそのものであって、周辺の作りではありません。再現率は完全にマスクされた個人データの割合で、WikiANN、MultiNERD、形式的に妥当な構造化セットでマクロ平均しています。適合率は、マスクした範囲のうち実際に個人データだった割合です。Redact のサイズは Apple ビルドのもので、Android と Web のビルドは 25MB です。

システム再現率適合率サイズパラメータ数
Redact88.899.612MB23M
GLiNER-PII91.190.42.3GB570M
Rampart61.497.214.7MB18.5M
OpenAI privacy filter60.293.53GB1.5B

AWS Comprehend はチームが比較するもう一つの選択肢ですが、その PII API は英語しか受け付けず、ほかの言語コードはすべて拒否されるため、この表には含めていません。同じ英語の行では総合で上回り(英語の総合で 91.6 対 86.5)、氏名では上、構造化データでは下(91.9 対 95.0)で、適合率は同じです。Comprehend はクラウドで動作し、呼び出しごとに課金され、これら 27 言語のうち 1 つだけをカバーします。以上はすべて、外部の WikiANN と MultiNERD、加えて形式的に妥当な構造化 PII セットでの社内評価です。全言語一覧とラベル別の内訳はモデルカードに掲載しています。

送信前に Web フォームを掃除する.

安全な LLM とのやり取り

プロンプトが外部モデルに送られる前に個人データをマスクし、回答の中で元の値に戻します。[GIVEN_NAME_1][EMAIL_1] のような一意の番号付きプレースホルダーがやり取りでの欠落を防ぐため、ユーザーが読むのはいつもどおりの返答です。

取り込み時に除去、DLP の請求なしで

届いたそばから、応対記録、ログ、アップロードを Node 上の Redact に通します。ドキュメントごとに課金するクラウドの DLP サービスと違い、呼び出しごとの料金はなく、データが自社のインフラから出ることもありません。

スマートフォンのサポートとチャット

会話が同期される前に、氏名、メールアドレス、カード番号、IBAN をスマートフォン上で取り除きます。生の個人データが自社のサーバーにも、ログ基盤のベンダーのサーバーにも届きません。

27 言語でマスキング

単一のモデルが 27 言語をラテン・ギリシャ・キリル文字にわたってカバーします。EU の公用語すべてに加え、ノルウェー語とアイスランド語にも対応するため、アテネで記入されたフォームとヘルシンキで記入されたフォームが同じコードパスを通ります。

インスピレーション

Redact で作るためのアイデア。プロンプトをコーディングエージェントにコピーして始めましょう。

Redact

Write an MCP tool that strips personal data before it reaches any other tool.

Redact

Scrub personal data out of any text before it hits an LLM.

Redact

Redact PII from logs on the device before they're stored.

Redact

Run PII redaction in a Lambda so data never leaves your infrastructure.

Redact

Scrub a support form before it submits.

VozRedact

Transcribe interviews and auto-redact names before you share them.

TongueRedact

Detect the language, then redact PII in that language.

Redact

De-identify a dataset before fine-tuning or sharing it.

18 件すべてのアイデアを見る

モデルができること

  • 20 の検出カテゴリー。氏名、番地、市区町村、郵便番号、メールアドレス、電話番号、クレジットカード、銀行口座と IBAN、銀行ルーティング番号、IP アドレス、URL、パスポート、運転免許証、納税者番号、社会保障番号、公的身分証。
  • 決定論的な検証レイヤー:Luhn によるカード番号チェック、ISO-13616 の IBAN、EU 24 か国すべてのチェックサム付き国民 ID、EU 27 か国すべての VAT 形式、IMEI、国別の運転免許証番号。
  • LLM とのやり取り向けの、一意の番号付きプレースホルダーによる可逆的なマスキング。
  • カテゴリー別のフィルタリングと、各検出結果を正確な文字範囲付きで確認。
  • 会社名は独立したカテゴリとして検出され、既定ではそのまま残ります。会社は自然人ではないからです。必要なら指定すれば、ほかと同じようにマスクされます。

はじめに

pii マスキング を、数行のコードで iOS or macOS, Android or web アプリに追加。 Redact のドキュメント.

iOS, macOS
インストール
// Swift Package Manager
.package(url: "https://github.com/Desert-Ant-Labs/desert-ant-core", from: "3.1.0")
// target dependency
.product(name: "Redact", package: "desert-ant-core")
使用例 - Swift
import Redact

let redact = Redact()
let r = try await redact.redaction(of: text)
// r.redactedText: "Email [GIVEN_NAME_1] at [EMAIL_1]"
プロンプトで作る
Add Redact from Desert Ant Labs to this Swift project (iOS, macOS).

What it does: Redact:iOS、Android、Web 向けのオンデバイス PII マスキング.

SDK:

Swift (iOS, macOS)
Repo: https://github.com/Desert-Ant-Labs/desert-ant-core#readme
// Swift Package Manager
.package(url: "https://github.com/Desert-Ant-Labs/desert-ant-core", from: "3.1.0")
// target dependency
.product(name: "Redact", package: "desert-ant-core")

Reference:
- Model page: https://desertant.com/models/redact/
- Full catalog and other models: https://desertant.com/llms.txt

Add the SDK, then follow its README for the exact API and current version. Do not invent API names or method signatures; confirm them against the README.
Android
インストール
// build.gradle.kts (Maven Central)
implementation("ai.desertant:redact:3.1.0")
使用例 - Kotlin
import ai.desertant.redact.Redact

Redact(context).use { redact ->
    val r = redact.redaction(text)
    // r.redactedText: "Email [GIVEN_NAME_1] at [EMAIL_1]"
}
プロンプトで作る
Add Redact from Desert Ant Labs to this Kotlin project (Android).

What it does: Redact:iOS、Android、Web 向けのオンデバイス PII マスキング.

SDK:

Kotlin (Android)
Repo: https://github.com/Desert-Ant-Labs/desert-ant-core#readme
// build.gradle.kts (Maven Central)
implementation("ai.desertant:redact:3.1.0")

Reference:
- Model page: https://desertant.com/models/redact/
- Full catalog and other models: https://desertant.com/llms.txt

Add the SDK, then follow its README for the exact API and current version. Do not invent API names or method signatures; confirm them against the README.
Web, Node.js
インストール
npm i @desert-ant-labs/redact @litertjs/core
使用例 - TypeScript
import { Redact } from "@desert-ant-labs/redact";

const redact = await Redact.load();
const r = await redact.redaction(text);
// r.redactedText: "Email [GIVEN_NAME_1] at [EMAIL_1]"
プロンプトで作る
Add Redact from Desert Ant Labs to this JavaScript / TypeScript project (Web, Node.js).

What it does: Redact:iOS、Android、Web 向けのオンデバイス PII マスキング.

SDK:

JavaScript / TypeScript (Web, Node.js)
Repo: https://github.com/Desert-Ant-Labs/desert-ant-core#readme
npm i @desert-ant-labs/redact @litertjs/core

Reference:
- Model page: https://desertant.com/models/redact/
- Full catalog and other models: https://desertant.com/llms.txt

Add the SDK, then follow its README for the exact API and current version. Do not invent API names or method signatures; confirm them against the README.

仕様

言語
27 言語:EU の公用語すべて、加えてノルウェー語とアイスランド語(全一覧はモデルカードに掲載)
オンデバイスサイズ
12MB Core ML(Apple、4-bit)、25MB LiteRT(Android、Web、int8)
モデル
6 層の BIOES トークン分類器、Multilingual-MiniLM 系、23M パラメータ
プライバシー
完全にオンデバイスで動作。テキストがどこかへ送られることはありません。

Redact はテキスト中の個人データの約 90% を捕捉するため、およそ 10 件に 1 件は通り抜けます。Redact は文書が綺麗になったという保証ではなく、データが端末を離れる前に大半を取り除く層と考えてください。信頼できるのは構造化フィールドです。カード番号、IBAN、VAT 番号、国民 ID は実際のチェックサムを通過する必要があるからです。取りこぼしが多いのは書式の珍しい自由記述の氏名や住所で、逆に普通の単語をまれにマスクすることがあり、多くはすべて大文字のテキストです。

FAQ

Redact とは?

入力したそばから個人データを取り除くオンデバイスのマスキング。27 言語に対応し、サーバーやログに届く前に処理します。

Redact はオンデバイスで動作しますか?

はい。Redact はデバイス上で動作し、サーバーへの通信は発生しません。データはユーザーの手元に残ります。

Redact はどのプラットフォームに対応していますか?

Redact は Swift, Kotlin, JavaScript / TypeScript 向けのネイティブなオンデバイス SDK として提供されます。

Redact の料金はいくらですか?

すべてのモデルは、SDK ごとに月間アクティブデバイス 100k 台まで無料です。各ユーザーがモデルを実行する回数に制限はありません。 カスタムライセンスについては、お問い合わせください

Redact の精度や速度はどれくらいですか?

テキスト中の個人データの 88.8% を捕捉し、それ以外にはほとんど手を付けません。ブラウザのタブで動くほど小さなモデルによるものです。これより再現率が高い唯一のシステム GLiNER-PII は 2.3GB です。

リソース