LLM-敏感信息打码(MaxCompute)

该组件主要用于大语言模型(LLM)的文本数据预处理工作,可以将敏感信息打码,例如将邮箱地址字符替换成[EMAIL],手机/电话号码替换成[TELEPHONE][MOBILEPHONE],身份证号码替换成[IDNUM]

使用限制

仅支持MaxCompute计算引擎。

算法简介

敏感信息包括以下匹配项:

  • 手机号码:匹配以下正则表达式的字符串将被替换成[MOBILEPHONE]

    • r'(?<!\d)(1(3[0-9]|4[579]|5[0-3,5-9]|6[6]|7[0135678]|8[0-9]|9[89])\d{8})(?!\d)'

    • r'(?<!\d)(1[\d]{2}-\d{4}-\d{4}\D|\D1\d{10}\D|\D1[\d]{2} \d{4} \d{4})(?!\d)'

    • r'(?<!\d)(1[3-9]\d{9})(?!\d)'

  • 座机号码:匹配以下正则表达式的字符串将被替换成[TELEPHONE]

    • r'(?<!\d)(\(?0\d{2,3}[-\s)]?\d{7,8})(?!\d)'

  • 邮箱:匹配以下正则表达式的字符串将被替换成[EMAIL]

    • r'[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+'

  • 身份证:匹配以下正则表达式的字符串将被替换为[IDNUM]

    • r'(?<!\d)([1-6]\d{5}[12]\d{3}(0[1-9]|1[12])(0[1-9]|1[0-9]|2[0-9]|3[01])\d{3}(\d|X|x))(?!\d)'

    • r'(?<!\d)([1-9]\d{5}[12]\d{3}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])\d{3}[0-9xX])(?!\d)'

例如邮箱打码:

  • 处理前:

    image

  • 处理后:

    image

可视化配置参数

您可以在Designer中,通过可视化的方式配置组件参数。

页签

参数

是否必选

描述

默认值

字段设置

选择目标处理列

选择要处理的列,支持选择多个列。

设置输出表生命周期

正整数,单位为天。默认28天,28天后该组件产生的临时表被回收。

28

执行调优

每个实例的cpu数目

设定map task每个instanceCPU数目,取值范围为[50,800]。

100

每个实例的memory大小,单位M

设定map task每个instancememory大小,单位为MB,取值范围为[256,12288]。

1024

每个实例处理的数据大小,单位M

设定map task每个instance的最大处理数据量,用户可以通过控制该变量,实现对map端输入的控制。单位为MB,取值范围为[1,Integer.MAX_VALUE]。

256

相关文档

关于Designer组件更详细的内容介绍,请参见Designer概述