ShinrAISTACKITでホスティング

個人データの検出・置換・復元

ネイティブテキストAPIで検出と可逆的かつ一貫した置換を行います。

個人データの検出

POST /v1/analyze は単一の text または texts 配列を受け付けます。ネイティブのオフセットは0から始まるUnicodeコードポイント数です。 endIndex は範囲に含まれません。

ネイティブ検出のパラメータ
パラメータ意味
text / texts文字列1つ、または文字列の配列です。いずれか一方のフィールドを送信してください。
tierstandard, batch または realtime
modelshinrai-latest または shinrai-v1.3。処理区分の別名には -batch または -realtime.
threshold信頼度の閾値は0~1、既定値は0,7です。
merge_persons隣接する人物検出を統合します。既定値はtrueです。

GET /v1/models はキーで利用できるモデルとAPI処理区分を一覧表示します。 OpenAPI は機械可読なネイティブリファレンスです。

セマンティック暗号化とは?

ShinrAIでは、文脈を保つ可逆的な置換をセマンティック暗号化と呼びます。これは仮名化の一種で、機密値を有用な代替値に変え、アプリケーションが対応表を使って元の値を復元できます。

対応表を機密情報として保護し、AIへのプロンプトに含めないでください。自然な置換は、すべての単語が暗号学的に暗号化されたことや、テキストが自動的に匿名化されたことを意味しません。

言語とデータカテゴリ · モデルの変更履歴 · ShinrAIを比較

個人データを置換し、対応表を保持

POST /v1/redact は変換済みテキストを返します。選択できるモードは、 replace (一貫した自然な代替値)、 mask (文字のマスク)、または label (エンティティラベル。例: [PERSON].

curl https://api.shinrai.innovius.io/v1/redact \
  -H "Authorization: Bearer $SHINRAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Contact Emma at emma@example.com","mode":"replace"}'
出力例(シミュレーション)

上のコマンドに対応する、シミュレーションによるJSON応答の抜粋です。実際の検出結果、置換値、残高は異なる場合があります。

{
  "mode": "replace",
  "tier": "standard",
  "text": "Contact Nora at nora@example.net",
  "mapping": {
    "Emma": "Nora",
    "emma@example.com": "nora@example.net"
  },
  "usage": {
    "records": 1,
    "weighted_records": 1.0,
    "tier": "standard",
    "balance_after": 9998.0
  }
}

復元が必要な場合は、返された mapping をアプリケーションで安全に保存してください。 known_replacements を送信すると、既存の代替値を呼び出し間で再利用できます。 reserved_replacements は生成してはならない値を除外します。 mask_char はマスクを制御します。既定値: *.

代表的な文書で検出結果を検証してください。仮名化したテキストや復元用の対応表も機微なデータである可能性があり、変換によって匿名化が保証されるわけではありません。

バッチ全体で置換を一貫させる

使用 POST /v1/redact/batch 複数のレコードが同じワークフローに属する場合に使用します。ShinrAIはリクエスト内で1つの置換マップを維持し、次で渡されたマッピングを再利用できます known_replacements.

{"texts":["Emma owns the case.","Email Emma at emma@example.com"],"mode":"replace","include_mapping":true}

返されたマッピングには元の値が含まれます。機密性の高いアプリケーションデータとして保存し、モデルのプロンプトには含めないでください。