Presidio可逆匿名化器#

class langchain_experimental.data_anonymizer.presidio.PresidioReversibleAnonymizer(analyzed_fields: List[str] | None = None, operators: Dict[str, OperatorConfig] | None = None, languages_config: Dict | None = None, add_default_faker_operators: bool = True, faker_seed: int | None = None)[source]#

使用Microsoft Presidio的可逆匿名器。

Parameters:
  • analyzed_fields (Optional[List[str]]) – 要检测并匿名化的字段列表。 默认为 Microsoft Presidio 支持的所有实体。

  • operators (可选[Dict[str, OperatorConfig]]) – 用于匿名化的操作符。 操作符允许对检测到的PII进行自定义匿名化。 了解更多: https://microsoft.github.io/presidio/tutorial/10_simple_anonymization/

  • languages_config (可选[字典]) – NLP引擎的配置。 当未指定语言时,列表中的第一种语言将用作self.anonymize(…)中的主要语言。 了解更多: https://microsoft.github.io/presidio/analyzer/customizing_nlp_models/

  • faker_seed (Optional[int]) – 用于初始化faker的种子。 默认为None,在这种情况下,faker将随机生成种子并提供随机值。

  • add_default_faker_operators (bool)

属性

anonymizer_mapping

返回匿名化映射 这只是去匿名化映射的反向版本。

deanonymizer_mapping

返回去匿名化映射

方法

__init__([analyzed_fields, operators, ...])

add_operators(operators)

向匿名化器添加操作符

add_recognizer(recognizer)

向分析器添加一个识别器

anonymize(text[, language, allow_list])

匿名化文本。

deanonymize(text_to_deanonymize[, ...])

去匿名化文本

load_deanonymizer_mapping(file_path)

从JSON或YAML文件加载去匿名化映射。

reset_deanonymizer_mapping()

重置去匿名化映射

save_deanonymizer_mapping(file_path)

将去匿名化映射保存到JSON或YAML文件中。

__init__(analyzed_fields: List[str] | None = None, operators: Dict[str, OperatorConfig] | None = None, languages_config: Dict | None = None, add_default_faker_operators: bool = True, faker_seed: int | None = None)[来源]#
Parameters:
  • analyzed_fields (Optional[List[str]]) – 要检测并匿名化的字段列表。 默认为 Microsoft Presidio 支持的所有实体。

  • operators (可选[Dict[str, OperatorConfig]]) – 用于匿名化的操作符。 操作符允许对检测到的PII进行自定义匿名化。 了解更多: https://microsoft.github.io/presidio/tutorial/10_simple_anonymization/

  • languages_config (可选[字典]) – NLP引擎的配置。 当未指定语言时,列表中的第一种语言将用作self.anonymize(…)中的主要语言。 了解更多: https://microsoft.github.io/presidio/analyzer/customizing_nlp_models/

  • faker_seed (可选[整数]) – 用于初始化faker的种子。 默认为None,在这种情况下,faker将随机播种并提供随机值。

  • add_default_faker_operators (bool)

add_operators(operators: Dict[str, OperatorConfig]) None#

向匿名化器添加操作符

Parameters:

operators (Dict[str, OperatorConfig]) – 要添加到匿名化器的操作符。

Return type:

add_recognizer(recognizer: EntityRecognizer) None#

向分析器添加一个识别器

Parameters:

recognizer (EntityRecognizer) – 要添加到分析器的识别器。

Return type:

anonymize(text: str, language: str | None = None, allow_list: List[str] | None = None) str#

匿名化文本。

Parameters:
  • 文本 (str)

  • 语言 (str | )

  • allow_list (列表[字符串] | )

Return type:

字符串

deanonymize(text_to_deanonymize: str, deanonymizer_matching_strategy: ~typing.Callable[[str, ~typing.Dict[str, ~typing.Dict[str, str]]], str] = <function exact_matching_strategy>) str#

去匿名化文本

Parameters:
  • text_to_deanonymize (str)

  • deanonymizer_matching_strategy (Callable[[str, Dict[str, Dict[str, str]]], str])

Return type:

字符串

load_deanonymizer_mapping(file_path: Path | str) None[source]#

从JSON或YAML文件加载去匿名化映射。

Parameters:

file_path (Path | str) – 从中加载映射的文件路径。

Return type:

示例: .. code-block:: python

anonymizer.load_deanonymizer_mapping(file_path=”path/mapping.json”)

reset_deanonymizer_mapping() None[source]#

重置去匿名化映射

Return type:

save_deanonymizer_mapping(file_path: Path | str) None[source]#

将去匿名化映射保存到JSON或YAML文件。

Parameters:

file_path (Path | str) – 保存映射的文件路径。

Return type:

示例: .. code-block:: python

anonymizer.save_deanonymizer_mapping(file_path=”path/mapping.json”)

使用 PresidioReversibleAnonymizer 的示例