openai
openai image generation를 사용해서 이미지를 만들어봅시다
jinmc
2023. 6. 13. 13:52
반응형
정말 좋은 세상인 것 같습니다.
이제는 이미지를 만들어주는 api도 뚫리고, 해보니깐 꽤나 잘되네요.
물론 api_key가 있어야 하겠지만, 간단한 스크립트로 몇백개나 몇천개의 이미지를 손쉽게 만들수 있습니다.
다만, images 라는 폴더를 만들어줘야 합니다.
size의 경우에는 256x256, 512x512, 1024x1024 세 가지가 있다고 하고,
response_format은 url, b64_json 두 가자의 포맷이 있다고 합니다.
num은 1에서 10까지 정할 수 있고, 첫번째 for loop에 얼마나 많은 값의 숫자를 넣느냐에 따라
받는 이미지의 양을 정할 수 있습니다.
현재 10으로 되어있기 때문에, 100장이 나오고,
100으로 하면, 1000장이 나옵니다.
해봤을 때, 250장 정도까지는 잘 나오고, 그 속도로 봤을 때, 1000장 정도도 잘 나올 것 같은데,
더 많은 양은 모르겠습니다.
import openai
import io, base64
from PIL import Image
OPENAI_API_KEY="you_api_key"
openai.api_key = OPENAI_API_KEY
this_prompt = "cute dog running" # whatever you want your image to be
num = 10
response = openai.Image.create(
prompt=this_prompt,
n=num,
size="512x512",
response_format="b64_json"
)
# image_url = response['data'][0]['url']
count = 1
for _ in range(10):
for i in range(num):
img = Image.open(io.BytesIO(base64.decodebytes(bytes(response['data'][i]['b64_json'], 'utf-8'))))
img.save(f"images/image_{count}.jpg")
count += 1
reference : https://platform.openai.com/docs/guides/images/image-generation-beta
반응형