피드로 돌아가기
Hugging Face BlogAI/ML
원문 읽기
Zama가 Fully Homomorphic Encryption 기반 Concrete ML 모델을 Hugging Face Endpoints에 배포하여 사용자 데이터를 암호화한 상태에서 직접 추론 실행 가능
Running Privacy-Preserving Inferences on Hugging Face Endpoints
AI 요약
Context
기존 ML 모델은 추론 시 사용자 데이터를 평문으로 처리해야 했기 때문에 데이터 프라이버시 보호가 불가능했습니다. Zama는 FHE 기술을 통해 암호화된 데이터 위에서 직접 계산할 수 있는 방식을 개발했으나, 사전 컴파일된 모델을 인터넷에 쉽게 배포하고 사용할 수 있는 인프라가 부족했습니다.
Technical Solution
- Fully Homomorphic Encryption(FHE) 기반 Concrete ML 프레임워크 개발: scikit-learn, ONNX, PyTorch, TensorFlow 바인딩 제공
- Hugging Face Endpoints의 Custom Inference Handlers 활용: 사전 컴파일된 FHE 모델을 한 번의 클릭으로 배포 가능하도록 구현
- 클라이언트 측 구현: Python 3.10 기반 play_with_endpoint.py 스크립트로 사용자가 암호화된 추론 요청 송신
- 통신 프로토콜: 암호화 키를 여러 조각으로 분할하여 순차 전송(예: 71984.14 KB를 2개 조각으로 나누어 전송) 및 서버 데이터베이스에 UID 기반 저장
- CPU 기반 추론 실행: 현재 GPU 미지원이므로 최대 8vCPU, 16GB RAM 구성의 Hugging Face Endpoints 머신에서 실행
Impact
- 691개 샘플 기준 정확도: 0.8958
- 추론 당 평균 처리 시간: 4.123초
- 전체 추론 배치 처리 시간: 2873.860초
Key Takeaway
Custom Inference Handlers를 활용하면 FHE 같은 특수 암호화 연산도 기존 ML 플랫폼에 통합 배포할 수 있으며, 이는 프라이버시 보호가 필요한 엔터프라이즈 ML 워크플로우의 새로운 패턴을 제시합니다.
실천 포인트
프라이버시가 중요한 ML 서비스를 운영 중인 엔지니어라면, Hugging Face Endpoints의 Custom Inference Handlers를 활용하여 사전 컴파일된 FHE 모델을 배포할 때, 클라이언트 측에서 Python
3.10 + Concrete ML 라이브러리로 암호화 키를 분할 전송하는 방식을 채택하면 암호화된 상태에서 직접 추론을 수행할 수 있습니다.