Hugging Face Hub와 PaddlePaddle 통합
Hugging Face와 PaddlePaddle은 PaddlePaddle 딥러닝 플랫폼을 Hugging Face Hub에 통합하기 위해 협업했습니다. 이 파트너십은 텍스트, 이미지, 오디오, 비디오 및 멀티모달 분야의 PaddlePaddle 사전 학습 모델을 전 세계 오픈소스 커뮤니티에 제공함으로써 AI를 민주화하는 것을 목표로 합니다.
PaddlePaddle 플랫폼 개요
PaddlePaddle은 2016년 Baidu에 의해 오픈소스로 공개된 딥러닝 플랫폼으로, 확장 가능한 구현을 위해 설계되었습니다. 2022년 4분기 기준으로 이 플랫폼은 535만 명 이상의 개발자와 20만 개 기업이 사용하고 있으며, 중국 내 딥러닝 플랫폼 시장 점유율 1위를 차지하고 있습니다.
생태계에는 여러 전문 오픈소스 저장소가 포함됩니다:
- Paddle: 핵심 딥러닝 프레임워크.
- Model Libraries: 다양한 모달리티를 위한 전문 라이브러리로, PaddleOCR, PaddleDetection, PaddleNLP, PaddleSpeech 등을 포함합니다.
- PaddleSlim: 모델 압축을 위한 도구.
- FastDeploy: 모델 배포를 위한 프레임워크.
Hub 통합 및 모델 탐색
통합은 PaddleNLP부터 시작되며, 이후 다른 라이브러리들이 이어집니다. 사용자는 Hugging Face Hub에서 특정 "PaddlePaddle" 라이브러리 태그를 사용하여 PaddlePaddle 모델을 탐색할 수 있습니다.
발표 시점에 Hub에는 75개 이상의 PaddlePaddle 모델이 제공되고 있으며, 그 예는 다음과 같습니다:
- UIE: 다중 작업 정보 추출 모델 시리즈.
- ERNIE 3.0: 최첨단 중국어 언어 모델 시리즈.
- Ernie-Layout: 레이아웃 지식 강화를 통합한 문서 사전 학습 모델.
또한, Hub의 PaddlePaddle 조직은 Ernie-ViLG(텍스트-이미지 변환), UIE-X(크로스모달 정보 추출), PaddleOCR(다국어 OCR 툴킷)과 같은 인터랙티브 도구를 위한 Spaces 접근을 제공합니다.
추론 및 인터랙티브 기능
Hub에 있는 PaddlePaddle 모델은 Hugging Face Inference API를 지원하여 사용자가 cURL, Python의 requests 라이브러리 또는 기타 네트워크 요청 방법을 사용해 HTTP 요청으로 모델과 상호작용할 수 있게 합니다. 특정 작업을 지원하는 모델의 경우, 브라우저에서 바로 테스트할 수 있는 인터랙티브 위젯이 제공됩니다.
모델 사용 및 공유
사용자는 Hub에서 "Use in paddlenlp" 버튼을 사용해 특정 모델을 로드할 수 있으며, 이 버튼은 구현을 위한 코드 스니펫을 제공합니다.
모델을 공유하기 위해, PaddleNLP는 현재 save_to_hf_hub 메서드를 통해 모델을 Hub에 푸시하는 것을 지원합니다. 예시 구현:
from paddlenlp.transformers import AutoTokenizer, AutoModelForMaskedLM
tokenizer = AutoTokenizer.from_pretrained("PaddlePaddle/ernie-3.0-base-zh", from_hf_hub=True)
model = AutoModelForMaskedLM.from_pretrained("PaddlePaddle/ernie-3.0-base-zh", from_hf_hub=True)
tokenizer.save_to_hf_hub(repo_id="<my_org_name>/<my_repo_name>")
model.save_to_hf_hub(repo_id="<my_org_name>/<my_repo_name>")