PII 표시 토큰 누출 보정

This commit is contained in:
Yun Chan 2026-08-09 21:04:29 +09:00
parent 61a41d1f08
commit 7cece90e33
19 changed files with 284 additions and 197 deletions

View file

@ -49,7 +49,7 @@ _KOREAN_CONTEXTLESS_NAME = rf"[{_KOREAN_SURNAME_CHARS}][가-힣]{{2,3}}"
# 인명 마지막 글자로 사실상 쓰이지 않는 용언 활용/명사화 꼬리 글자. 문맥 단서가
# 없는 인명 패턴이 "유의점은·방치되는·마무리했을·연결감과·표현함을·어지러움은"
# 같은 일반 단어를 이름으로 오탐해 평가 문장을 훼손하는 것을 막는다(정밀도 가드).
_KOREAN_NAME_TAIL_GUARD = "(?<![했됐되된될것듯점음움됨함감])"
_KOREAN_NAME_TAIL_GUARD = "(?<![했됐되된될것듯점음움됨함감])"
_KOREAN_NAME_STOPWORDS = {
"연락",
"연락처",
@ -458,14 +458,18 @@ _DISPLAY_PLACEHOLDER_STREAM_TAIL = 16
def _adjust_particle(value: str, particle: str | None) -> str:
if particle is None:
return value
last = value[-1] if value else ""
codepoint = ord(last) - 0xAC00 if "" <= last <= "" else -1
has_batchim = codepoint >= 0 and codepoint % 28 != 0
if particle in ("", ""):
return value + ""
return value + ("" if has_batchim else "")
if particle in ("", ""):
return value + ""
return value + ("" if has_batchim else "")
if particle in ("", ""):
return value + ""
return value + ("" if has_batchim else "")
if particle in ("", ""):
return value + ""
return value + ("" if has_batchim else "")
return value + particle
@ -621,6 +625,7 @@ __all__ = [
"PiiEntitySpan",
"set_ko_pii_recognizer",
"mask_pii",
"mask_synthetic_generated_pii",
"CrisisKind",
"CrisisResult",
"classify_crisis",