본문 바로가기
Programming/Python

[Python] huggingface API 발급 및 AI 이미지 생성하기

by 코딩하는 금융인 2024. 2. 26.

안녕하세요.

오늘은 huggingface API발급받고 이를 이용해 파이썬에서 AI로 이미지생성해 보겠습니다.

 

 Huggingface API, Python AI Image Create

▣ Hugging Face

자연어 처리(NLP) 및 기계 학습(Machine Learning) 모델을 개발하고 공유하는 온라인 플랫폼 및 커뮤니티

 

  -  개발자들이 최신 NLP 모델을 손쉽게 사용하고, 다른 사용자들과 모델을 공유하며 협업하는 데 도움을 줌

  -  이중 Inference API는 Hugging Face가 제공하는 서비스로, 사용자가 다양한 NLP 모델 작업을 위해 사전 훈련된 모델에 접근할 수 있게 함

 

ㅇ Inference API 발급받기

 1) Hugging Face 계정 생성

  - 사이트 바로가기

  - 계정을 생성하여 로그인 후, 우측 상단에 있는 프로필 > Settings에 들어가서 [Access Tokens] 클릭

 

 2) 새로운 API Token 생성

  - New token 클릭하여 Name을 작성하고 Role을 선택 후, [Generate a token] 클릭

  - 만들어진 token의 key 값을 복사하여 사용하면 됨

HuggingFace Token 예시

 

ㅇ Python Hugging Face API 사용하기

  - 먼저, requests 라이브러리로 HTTP 요청을 보내고, API 토큰을 헤더에 포함하여 인증

  - 모델은 Hugging Face Inference API에서 stablediffusion > dreamshaper-8 활용

  (Test : https://huggingface.co/Lykon/dreamshaper-8)

  - 아래는 Hugging Face의 이미지 생성 엔드포인트에 POST 요청을 보내는 예제임 

import requests
import json

# Hugging Face API Token 입력
API_TOKEN = "YOUR_HUGGING_FACE_API_TOKEN"

# Hugging Face에서 stablediffusion 모델인 dreamshaper-8 선택
MODEL_NAME = "Lykon/dreamshaper-8"

# API endpoint
endpoint = f"https://api-inference.huggingface.co/models/{MODEL_NAME}"

# 프롬프트 입력하기
data = {
    "prompt": "A painting of a forest with sunlight filtering through the trees",
    "max_length": 256  # Maximum length of the generated image caption
}

headers = {
    "Authorization": f"Bearer {API_TOKEN}",
    "Content-Type": "application/json"
}

# AI 이미지 생성하기
response = requests.post(endpoint, headers=headers, json=data)

# request 예시
if response.status_code == 200:
    result = response.json()
    generated_image = result.get("image")
    
    # 저장하기
    with open("generated_image.png", "wb") as f:
        f.write(generated_image)
    print("Image generation successful. Image saved as generated_image.png")
else:
    print("Error:", response.text)

 

이미지 결과

 - 프롬프트 내용

A painting of a forest with sunlight filtering through the trees

 

 

 

 

반응형

댓글