#!/usr/bin/env python3 """铸渊完整语料脱敏处理管线 直接从COS下载铸渊对话.zip → 解析Markdown → 脱敏IP/密钥 → 输出JSONL 使用方法: python3 scripts/sanitize_zhuyuan_corpus.py """ import os, json, sys, re, zipfile, io SENSITIVE_MAP = { "43.139.217.141": "[广服务器]", "43.139.251.175": "[广服务器B]", "43.138.243.30": "[广服务器C]", "124.223.10.33": "[上服务器]", "119.29.184.32": "[主服务器]", "43.156.237.110": "[新脑服务器]", "43.134.16.246": "[新面孔服务器]", "43.153.193.169": "[新服SG-003]", "43.153.203.105": "[新服SG-006]", } KEY_PATTERNS = [ (r'(?:AKID[0-9a-zA-Z_\-]{10,})', '[COS-SECRET]'), (r'(?:nPoZ[0-9a-zA-Z_\-]{5,})', '[COS-KEY]'), (r'(?:zy_gtw_[0-9a-f]{30,})', '[GTW-KEY]'), (r'(?:fe272b100e3e[0-9a-f]{10,})', '[MCP-TOKEN]'), ] def sanitize(text): for ip, placeholder in SENSITIVE_MAP.items(): text = text.replace(ip, placeholder) for pattern, placeholder in KEY_PATTERNS: text = re.sub(pattern, placeholder, text) return text print('脱敏规则已配置:', len(SENSITIVE_MAP), '个IP,', len(KEY_PATTERNS), '个密钥模式') print('运行完整管线: python3 scripts/sanitize_zhuyuan_corpus.py')