PII-Fi™ API Documentation
PII-Fi は日本語テキストから個人情報(PII: Personally Identifiable Information)を高精度で検出し、 5種類の非識別化方式で安全に処理するエンタープライズグレードのクラウドAPIサービスです。
人名(漢字・カタカナ・ローマ字の多表記対応)、電話番号、メールアドレス、住所、マイナンバーなど59種のPIIタイプを高精度で検出。 独自の4層アプローチと7種の文脈解析パイプラインで検出漏れを最小化。
用途に応じて replace、mask、full_mask、
hash、fake の5種類から最適な非識別化方式を選択可能。
fake 方式では自然なダミーデータに置換し、後から元のPIIに復元可能。
同一人物の漢字・カタカナ・ローマ字表記は一貫したダミー名に置換。LLMワークフローに最適。
1,000+ req/s のスループット、1-15ms のレイテンシを実現。 バッチ処理にも対応し、大量のテキストを効率的に処理。
Quick Example
以下はPII-Fi APIの基本的な使用例です。
# デモ環境(本番環境では専用エンドポイントを提供)
curl -X POST https://api.pii-fi.com/api/detect \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"text": "田中太郎(090-1234-5678)のメールはtanaka@example.comです。",
"deidentification_type": "replace"
}'
import requests
# デモ環境(本番環境では専用エンドポイントを提供)
response = requests.post(
"https://api.pii-fi.com/api/detect",
headers={
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_KEY"
},
json={
"text": "田中太郎(090-1234-5678)のメールはtanaka@example.comです。",
"deidentification_type": "replace"
}
)
result = response.json()
print(result["deidentified_text"])
# 出力: <人名>(<電話番号>)のメールは<メールアドレス>です。
// デモ環境(本番環境では専用エンドポイントを提供)
const response = await fetch("https://api.pii-fi.com/api/detect", {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_KEY"
},
body: JSON.stringify({
text: "田中太郎(090-1234-5678)のメールはtanaka@example.comです。",
deidentification_type: "replace"
})
});
const result = await response.json();
console.log(result.deidentified_text);
// 出力: <人名>(<電話番号>)のメールは<メールアドレス>です。
Response
{
"deidentified_text": "<人名>(<電話番号>)のメールは<メールアドレス>です。",
"entities": [
{
"entity_type": "JPII_PERSON_NAME",
"original_text": "田中太郎",
"start": 0,
"end": 4,
"confidence_score": 0.95
},
{
"entity_type": "JPII_PHONE_NUMBER",
"original_text": "090-1234-5678",
"start": 5,
"end": 18,
"confidence_score": 0.98
},
{
"entity_type": "JPII_EMAIL_ADDRESS",
"original_text": "tanaka@example.com",
"start": 24,
"end": 42,
"confidence_score": 0.99
}
]
}
Next Steps
Supported Entity Types
PII-Fi は 12カテゴリ・59種 のエンティティタイプを検出できます。以下は代表的なタイプです。
ルールベース検出
日本人名・外国人名を検出(漢字・カタカナ・ローマ字の多表記対応)
携帯電話・固定電話を検出
メールアドレスを検出
日本の住所を検出
会社名、団体名、部署名を検出
カード番号を検出
文脈解析パイプライン(7ドメイン・48カテゴリ)
年収、月収、給与など金融PII
AWS Key、OpenAI APIキー等の認証情報
評価グレード、業績評価等の人事労務情報
社内チケット番号、プロジェクトコード等の社内識別子
買収金額、合併条件等の経営戦略情報
契約条項、契約番号等の法務情報
Key Features
5種類の非識別化方式
| 方式 | 説明 | 例 | 可逆 |
|---|---|---|---|
replace |
タグ形式で置換 | 田中太郎 → <人名> |
- |
mask |
部分マスク | 090-1234-5678 → 090-****-5678 |
- |
full_mask |
完全マスク | 田中太郎 → **** |
- |
hash |
ハッシュ値 | 田中太郎 → JPII_PERSON_NAME_a1b2c3 |
✓ |
fake |
ダミーデータ | 田中太郎 → 山田花子 |
✓ |
カスタム検出器
正規表現パターンを登録して、独自のPIIタイプ(社員番号、顧客ID、注文番号など)を検出できます。
{
"id": "custom.employee_id",
"name": "社員番号認識器",
"entity_type": "JPII_EMPLOYEE_ID",
"patterns": [
{"name": "emp", "regex": "EMP-\\d{6}", "score": 0.9}
]
}
辞書マッチング
会社名、製品名、禁止ワードなど、固有名詞を辞書ベースで高速検出。 10万語でも1〜5msの検出速度を実現。