OpenAI Privacy Filter: 확장 가능한 PII 탐지 웹 앱 구축하기

OpenAI Privacy Filter: 확장 가능한 PII 탐지 웹 앱 구축하기

OpenAI는 8개의 서로 다른 카테고리에 걸쳐 민감한 텍스트를 식별하고 라벨을 지정하도록 설계된 오픈 소스 개인 식별 정보(PII) 탐지기인 Privacy Filter를 출시했습니다. 이 모델은 단 한 번의 포워드 패스(forward pass)로 128k 토큰 컨텍스트를 처리할 수 있는 능력이 있어, 텍스트 청킹(chunking)의 필요성을 없애고 정확한 스팬 오프셋(span offsets)을 보장한다는 점에서 매우 중요합니다.

Privacy Filter 모델 사양

Privacy Filter는 Apache 2.0 라이선스로 출시된 1.5B-parameter 모델로, 50M개의 활성 파라미터를 가지고 있습니다. 이 모델은 PII-Masking-300k 벤치마크에서 최첨단 성능을 달성했습니다.

기술적 역량

  • 컨텍스트 윈도우(Context Window): 128,000 토큰.
  • PII 카테고리: 모델은 private_person, private_address, private_email, private_phone, private_url, private_date, account_number, secret의 8가지 카테고리를 탐지합니다.
  • 효율성: 모델은 단 한 번의 포워드 패스로 라벨링을 수행하며, 이를 통해 긴 문서에서도 스팬 경계와 오프셋의 무결성을 유지합니다.

gradio.Server를 통한 실제 구현 사례

Hugging Face는 gradio.Server를 사용하여 세 가지 확장 가능한 웹 애플리케이션을 구축함으로써 이 모델의 유용성을 입증했습니다. 이 프레임워크를 사용하면 개발자는 커스텀 HTML/JS 프론트엔드를 ZeroGPU 할당 및 요청 큐잉(request queueing)과 같은 Gradio의 백엔드 기능과 결합할 수 있습니다.

1. Document Privacy Explorer

이 애플리케이션은 사용자가 PDF 또는 DOCX 파일을 업로드하여 PII 스팬이 해당 위치에 강조 표시되도록 합니다.

  • 기술적 접근 방식: 전체 문서가 하나의 128k 컨텍스트 패스로 처리됩니다. 길고 모호한 텍스트 실행 중에 깨끗한 스팬 경계를 보장하기 위해 BIOES 디코딩이 사용됩니다.
  • 인프라: gr.Server는 뷰어를 단일 HTML 파일로 제공하고, 큐잉된 @server.api 엔드포인트를 통해 모델을 노출하여 동시 업로드가 직렬화되어 ZeroGPU를 통해 처리될 수 있도록 합니다.

2. Image Anonymizer

이 도구는 민감한 데이터 위에 검은색 막대를 배치하여 이미지 및 스크린샷(예: Slack 스레드 또는 영수증)에서 PII를 삭제(redact)합니다.

  • 기술적 접근 방식: 시스템은 Tesseract OCR를 사용하여 단어별 바운딩 박스(bounding boxes)를 생성합니다. 백엔드는 문자 오프셋을 이러한 박스에 매핑하고 재구성된 텍스트에 대해 Privacy Filter를 실행합니다. 탐지된 스팬은 삭제를 위해 픽셀 직사각형으로 변환됩니다.
  • 인프라: 커스텀 <canvas> 프론트엔드가 토글, 드래그 또는 수동 삭제 막대 그리기와 같은 대화형 요소를 처리하는 동안, @server.api 엔드포인트는 픽셀 좌표를 제공합니다.

3. SmartRedact Paste

이것은 삭제에 초점을 맞춘 페이스트빈(pastebin)으로, 공개된 삭제 버전과 비공개 공개 버전이라는 두 개의 별도 URL을 생성합니다.

  • 기술적 접근 방식: 탐지된 PII 스팬은 <CATEGORY> 플레이스홀더(예: <PRIVATE_EMAIL>)로 대체됩니다. 모델의 다국어 기능 덕분에 수정 없이 스페인어, 프랑스어, 중국어 및 힌디어 텍스트를 처리할 수 있습니다.
  • 인프라: gr.Server는 FastAPI를 기반으로 구축되었기 때문에, 이 앱은 모델 중심의 삭제 프로세스를 위해 @server.api를 사용하고, 토큰 제한이 있는 보기 페이지를 위해 일반 @server.get 라우트를 사용합니다.

확장 가능한 AI 앱을 위한 아키텍처 패턴

이 앱들 전반에 걸친 Privacy Filter의 통합은 큐잉된 컴퓨팅과 정적 라우팅 사이의 일관된 아키텍처 분리를 따릅니다:

애플리케이션 큐잉된 컴퓨팅 (@server.api) 일반 FastAPI 라우트
Document Privacy Explorer 텍스트 추출, PII 탐지 및 통계 커스텀 리더 HTML 뷰 제공
Image Anonymizer OCR, PII 탐지 및 픽셀 박스 매핑 캔버스 UI 및 예시 제공
SmartRedact Paste PII 탐지 및 삭제 공개 및 토큰 제한 보기 페이지

@server.api를 사용함으로써 개발자는 Gradio의 큐와 ZeroGPU의 @spaces.GPU 구성을 사용할 수 있는 권한을 얻는 동시에, 일반 FastAPI 라우트는 HTML 전달 및 사전 조회와 같은 가벼운 작업을 처리합니다.

Sources