Python을 사용한 Hugging Face Inference API

Python Eul Sayonghan Hugging Face Inference Api



Hugging Face는 오픈 소스 AI 커뮤니티로 식별되며 AI 및 자연어 처리 모델을 구축하고 상호 작용하기 위한 다양한 오픈 소스 프레임워크, 도구, 아키텍처 및 모델로 구성됩니다. Hugging Face는 'Inference API'로 애플리케이션 프로그래밍 가능 간섭을 제공합니다. 이 추론 API는 의사 결정 및 실시간 예측을 위한 기계 학습 및 AI 모델 배포에 사용됩니다. 이 API를 통해 개발자는 사전 훈련된 NLP 모델을 사용하여 새 데이터 세트에 대한 예측을 제공할 수 있습니다.

통사론:

허깅페이스가 제공하는 서비스는 다양하지만 많이 사용되는 서비스 중 하나가 “API”입니다. API를 사용하면 사전 훈련된 AI와 대규모 언어 모델이 서로 다른 애플리케이션에 상호 작용할 수 있습니다. Hugging Face는 다음과 같이 다양한 모델에 대한 API를 제공합니다.

  • 텍스트 생성 모델
  • 번역 모델
  • 감정 분석을 위한 모델
  • 가상 에이전트(지능형 챗봇) 개발을 위한 모델
  • 분류 및 회귀 모델

이제 Hugging Face에서 개인화된 추론 API를 얻는 방법을 알아보겠습니다. 그러기 위해서는 먼저 Hugging Face의 공식 웹사이트에 등록해야 합니다. 귀하의 자격 증명으로 이 웹사이트에 가입하여 Hugging Face 커뮤니티에 가입하세요.









Hugging Face에 계정이 생기면 이제 inference API를 요청해야 합니다. API를 요청하려면 계정 설정으로 이동하여 '액세스 토큰'을 선택하십시오. 새 창이 열립니다. '새 토큰' 옵션을 선택한 다음 먼저 토큰의 이름과 역할을 '쓰기'로 제공하여 토큰을 생성합니다. 새 토큰이 생성됩니다. 이제 이 토큰을 저장해야 합니다. 이 시점까지 Hugging Face의 토큰이 있습니다. 다음 예에서는 이 토큰을 사용하여 추론 API를 얻는 방법을 살펴보겠습니다.







예제 1: Hugging Face Inference API로 프로토타이핑하는 방법

지금까지 Hugging Face를 시작하는 방법에 대해 논의했으며 Hugging Face에서 토큰을 초기화했습니다. 이 예제는 새로 생성된 토큰을 사용하여 특정 모델(머신 러닝)에 대한 추론 API를 얻고 이를 통해 예측하는 방법을 보여줍니다. Hugging Face 홈페이지에서 문제와 관련된 작업을 원하는 모델을 선택하십시오. 다음 모델 목록의 스니펫에 표시된 대로 텍스트 분류 또는 감정 분석 모델로 작업하고 싶다고 가정해 보겠습니다.



이 모델에서 감정 분석 모델을 선택합니다.

모델을 선택하면 모델 카드가 나타납니다. 이 모델 카드에는 모델의 교육 세부 정보 및 모델의 특성에 대한 정보가 포함되어 있습니다. 우리 모델은 감정 분석을 위해 58M 트윗에서 훈련된 roBERTa-base입니다. 이 모델에는 3개의 기본 클래스 레이블이 있으며 각 입력을 관련 클래스 레이블로 분류합니다.

모델을 선택한 후 창의 오른쪽 상단에 있는 배포 버튼을 선택하면 드롭다운 메뉴가 열립니다. 이 메뉴에서 'Inference API' 옵션을 선택해야 합니다.

그런 다음 추론 API는 이 추론과 함께 이 특정 모델을 사용하는 방법에 대한 전체 설명을 제공하고 AI 모델의 프로토타입을 신속하게 생성할 수 있도록 합니다. 추론 API 창에는 Python 스크립트로 작성된 코드가 표시됩니다.

우리는 이 코드를 복사하고 Python IDE에서 이 코드를 실행합니다. 이를 위해 Google Colab을 사용합니다. Python 셸에서 이 코드를 실행한 후 점수 및 레이블 예측과 함께 제공되는 출력을 반환합니다. 이 레이블과 점수는 '텍스트 감정 분석' 모델을 선택했기 때문에 입력에 따라 부여됩니다. 그런 다음 모델에 제공하는 입력은 긍정적인 문장이고 모델은 3개의 레이블 클래스에 대해 사전 훈련되었습니다. 우리의 입력이 긍정적인 문장이기 때문에 모델의 점수 예측은 다른 두 레이블보다 큽니다. 이는 모델이 문장을 '긍정적인 것'으로 예측했음을 의미합니다.

수입 요청

API_URL = 'https://api-inference.huggingface.co/models/cardiffnlp/twitter-roberta-base-sentiment'
헤더 = { '권한 부여' : '전달자 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' }

데프 질문 ( 유효 탑재량 ) :
응답 = 요청합니다. 우편 ( API_URL , 헤더 = 헤더 , json = 유효 탑재량 )
반품 응답. json ( )

산출 = 질문 ( {
'입력' : '당신이 나와 함께 있으면 기분이 좋아져요' ,
} )

산출:

예제 2: 추론을 통한 요약 모델

이전 예제에 표시된 것과 동일한 단계를 따르고 Hugging Face의 추론 API를 사용하여 요약 모델 버스의 프로토타입을 만듭니다. 요약 모델은 입력으로 제공하는 전체 텍스트를 요약하는 사전 훈련된 모델입니다. Hugging Face 계정으로 이동하여 상단 메뉴 모음에서 모델을 클릭한 다음 요약과 관련된 모델을 선택하고 해당 모델 카드를 주의 깊게 읽으십시오.

우리가 선택한 모델은 사전 학습된 BART 모델이며 데이터 세트 CNN dail mail에 미세 조정됩니다. BART는 인코더와 디코더가 있는 BERT 모델과 가장 유사한 모델입니다. 이 모델은 이해, 요약, 번역 및 텍스트 생성 작업을 위해 미세 조정될 때 효과적입니다.

그런 다음 오른쪽 상단 모서리에서 '배포' 버튼을 선택하고 드롭다운 메뉴에서 추론 API를 선택합니다. 추론 API는 이 추론과 함께 이 모델을 사용하기 위한 코드와 지침이 포함된 다른 창을 엽니다.

이 코드를 복사하고 Python 셸에서 실행합니다.

모델은 우리가 공급한 입력의 요약인 출력을 반환합니다.

결론

우리는 Hugging Face Inference API에 대해 작업했으며 이 애플리케이션의 프로그래밍 가능한 인터페이스를 사용하여 사전 훈련된 언어 모델과 작업하는 방법을 배웠습니다. 기사에서 수행한 두 가지 예는 주로 NLP 모델을 기반으로 합니다. Hugging Face API는 AI 모델을 애플리케이션에 빠르게 통합하여 빠른 프로토타입을 개발하려는 경우 놀라운 일을 할 수 있습니다. 요컨대 Hugging Face는 강화 학습에서 컴퓨터 비전에 이르는 모든 문제에 대한 솔루션을 제공합니다.