Hugging Face에서 PaddleNLP 사용하기

Hugging Face에서 PaddleNLP 사용하기 (Using PaddleNLP at Hugging Face)

PaddlePaddle 프레임워크를 활용하는 PaddleNLP는 사용하기 쉽고 강력한 NLP 라이브러리로, 훌륭한 사전 학습 모델 zoo를 갖추고 있어 연구부터 산업 애플리케이션까지 폭넓은 NLP 태스크를 지원해요.

출처: 문서

본문

PaddlePaddle 프레임워크를 활용하는 PaddleNLP는 사용하기 쉽고 강력한 NLP 라이브러리로, 훌륭한 사전 학습 모델 zoo를 갖추고 있어 연구부터 산업 애플리케이션까지 폭넓은 NLP 태스크를 지원합니다.

Hub에서 PaddleNLP 살펴보기 (Exploring PaddleNLP in the Hub)

models 페이지 왼쪽에서 필터링하면 PaddleNLP 모델을 찾을 수 있어요.

Hub의 모든 모델에는 다음 기능이 함께 제공됩니다:

  1. 검색 가능성에 도움이 되는 간단한 설명과 메타데이터 태그가 있는 자동 생성 모델 카드.

  2. 브라우저에서 모델을 직접 만져볼 수 있는 대화형 위젯.

  3. 추론 요청을 할 수 있는 Inference Providers 위젯.

  4. 모델을 Space에서 Gradio 앱으로 쉽게 배포.

설치 (Installation)

시작하려면 PaddlePaddle Quick Start를 따라 원하는 OS, 패키지 매니저, 컴퓨트 플랫폼에 맞게 PaddlePaddle 프레임워크를 설치할 수 있어요.

paddlenlp는 pip로 한 줄 설치를 제공합니다:

pip install -U paddlenlp

기존 모델 사용하기 (Using existing models)

transformer 모델과 유사하게, paddlenlp 라이브러리는 from_hf_hub=True를 설정하면 Hugging Face Hub에서 모델을 불러오는 간단한 한 줄을 제공합니다! 사용 방식에 따라 Taskflow 함수를 사용하는 고수준 API를 쓰거나, 더 많은 제어를 위해 AutoModelAutoTokenizer를 사용할 수 있어요.

# Taskflow provides a simple end-to-end capability and a more optimized experience for inference
from paddlenlp.transformers import Taskflow
taskflow = Taskflow("fill-mask", task_path="PaddlePaddle/ernie-1.0-base-zh", from_hf_hub=True)

# If you want more control, you will need to define the tokenizer and model.
from paddlenlp.transformers import AutoTokenizer, AutoModelForMaskedLM
tokenizer = AutoTokenizer.from_pretrained("PaddlePaddle/ernie-1.0-base-zh", from_hf_hub=True)
model = AutoModelForMaskedLM.from_pretrained("PaddlePaddle/ernie-1.0-base-zh", from_hf_hub=True)

특정 모델을 불러오는 방법을 보려면 Use in paddlenlp를 클릭하면 바로 사용할 수 있는 코드 스니펫이 주어져요!

모델 공유하기 (Sharing your models)

모든 ModelTokenizer 클래스 아래의 save_to_hf_hub 메서드로 PaddleNLP 모델을 공유할 수 있어요.

from paddlenlp.transformers import AutoTokenizer, AutoModelForMaskedLM

tokenizer = AutoTokenizer.from_pretrained("PaddlePaddle/ernie-1.0-base-zh", from_hf_hub=True)
model = AutoModelForMaskedLM.from_pretrained("PaddlePaddle/ernie-1.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>")

추가 리소스 (Additional resources)

더 알아보기 (Learn more)

from_hf_hub=True를 설정하면 Taskflow, AutoModel, AutoTokenizer로 Hub의 PaddleNLP 모델을 불러올 수 있어요. 모델 공유는 save_to_hf_hub(repo_id=...)로 하고, 추론은 Taskflow가 더 최적화된 경험을 제공합니다. 설치와 자세한 내용은 PaddlePaddle 가이드를 참고하세요.