ChatGPT๋ฅผ ๊ฐ๋ฐํ OpenAI๋ ์๋ 4์์ Text to Image ๋ชจ๋ธ์ธ DALL·E 2๋ ๊ณต๊ฐํ ์ ์ด ์์ต๋๋ค.
์ต๊ทผ์ ๊ทธ๋ฆผ์ ๊ทธ๋ ค์ฃผ๋ AI์ ์ฌ์ง์ ์๋๋ฉ (Anime) ํ์ผ๋ก ๋ณํ์ ํด์ฃผ๋ ๊ฐ์ข ํํฐ๊ฐ ์ ํ์ ํ๊ณ ์์ด์ ์ด๋ฏธ์ง์ ๊ด๋ จ๋ AI๋ ๋๋๊ฒ ๋๊ปด์ง์ง ์์ ์ ์์ต๋๋ค. ํ์ง๋ง ๋จ์ํ ์ค๋ช ๋ง์ผ๋ก ์ ์๊ถ ์๋ ๊ณ ํ๋ฆฌํฐ ์ด๋ฏธ์ง๋ฅผ ์์ฑํ ์ ์๊ธฐ ๋๋ฌธ์ ์ํธ ์ ๊ณ ์ชฝ์์๋ ํฐ ์ํ์ด ๋ ์ ๋ ์์ต๋๋ค. ๊ฐ์ธ์ ์ผ๋ก AI๊ฐ ๋ถ๋ฌ์ค๋ disruptive innovation์ ๊ฐ์ฅ ์ฒซ ๋ฒ์งธ ๋ถ์ผ๋ ์์ ์ด ์๋๊น ์ถ์ต๋๋ค. OpenAI ํํ์ด์ง์์ ์ฒดํ์ ํ์๋ ค๋ฉด ์๋์ ๋งํฌ๋ฅผ ์ฐธ๊ณ ํ์๋ฉด ๋ฉ๋๋ค
๊ทธ๋ผ ์ด์ Python์ผ๋ก DALL·E 2๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค.
Python์ผ๋ก ๊ตฌํ
OpenAI์์ ๋ฐ๊ธ๋ฐ์ API Key๋ฅผ ์ฌ์ฉํ์ฌ ์๋์ ๊ฐ์ด ์ฝ๋๋ฅผ ์ง์๋ฉด ๋ฉ๋๋ค.
(API Key ๋ฐ๊ธ ๋ฐฉ๋ฒ์ ๋ชจ๋ฅด์๊ฒ ๋ค๋ฉด ์ด ํฌ์คํธ๋ฅผ ์ฐธ๊ณ ํด ์ฃผ์ธ์)
import os
import openai
import json
from pathlib import Path
from base64 import b64decode
description = 'a flying hamburger in space, digital art' # Ai๊ฐ ๊ทธ๋ ค์ค ์ด๋ฏธ์ง์ ๋ํ ๋ฌ์ฌ
response = openai.Image.create(prompt=description # ํ
์คํธ ์
๋ ฅ
, n=1 # ์์ฑํ ์ด๋ฏธ์ง ๊ฐ์
, size= "1024x1024" # ์ด๋ฏธ์ง ํฌ๊ธฐ
, response_format= "b64_json"
, api_key = 'API KEY 16์๋ฆฌ ์
๋ ฅ') # openai APIํค
DATA_DIR = Path.cwd() # os.getcwd()
file_name = DATA_DIR / f"{PROMPT[:5]}_{response['created']}.json" # ์์ฑ๋ ์ด๋ฏธ์งํ์ผ ์ ์ฅ ๊ฒฝ๋ก
# json ํ์ผ๋ก ์ ์ฅํ๊ธฐ
with open(file_name, mode="w", encoding="utf-8") as file:
json.dump(response, file)
# png ํ์ผ๋ก ์ ์ฅ
for index, image_dict in enumerate(response["data"]):
image_data = b64decode(image_dict["b64_json"])
image_file = DATA_DIR / f"{file_name.stem}-{index}.png"
with open(image_file, mode="wb") as png:
png.write(image_data)
๊ฒฐ๊ณผ๋ฌผ
์์ ์ฝ๋๋ฅผ ์คํํ๊ฒ ๋๋ฉด ์๋์ ๊ฐ์ ์ด๋ฏธ์ง์ json ํ์ผ์ด ์์ฑ๋ฉ๋๋ค.
๋ญ๊ฐ ์ฌ์ค์ ์ด๊ณ ๊ทธ๋ด๋ฏํฉ๋๋ค. ํ์ง๋ง ์์ง ์ฌ๋์ด๋ ๋๋ฌผ์ ์ฌ์ค์ ์ธ ๋ฌ์ฌ๋ ํ๋ฆฌํฐ๊ฐ ์กฐ๊ธ ์์ฌ์ด ๋ถ๋ถ๋ ์์ต๋๋ค.
์๋์๋ ์ ๊ฐ ์์ฑํ ์ด๋ฏธ์ง์ ๋ชจ์์ ๋๋ค. ์ค๊ฐ์ค๊ฐ ์ด์ํ๊ณ ์ด์ํ ๋ถ๋ถ๋ ์์ด์ ์์ง๊น์ง๋ ๋ถ์พํ ๊ณจ์ง๊ธฐ์ ๋์ธ ๋ถ์ผ๋ ์๋ ๊ฒ ๊ฐ์ต๋๋ค. AI๊ฐ ์ธ์์ ์ง๋ฐฐํ๋ ๊ฑด ๋จผ ํ๋ ์ ์ด์ผ๊ธฐ์ผ ๊ฒ ๊ฐ์ต๋๋ค ใ ใ
์์ฑ ์์ ๋ชจ์
- high-teen north korean leader kim jeong eun, anime style
- a dog and a cat fighting with light saber, digital art
- teddy bears shopping for groceries, one-line drawing
- a man riding a tiger, pixel art
- a spacious futuristic library filled with starfishes reading books
- a house in the shape of a pineapple
'๐ป ITยท๊ธฐ์ ยทํต๊ณ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์นํฌ๋กค๋ง 2ํ] selenium webdriver๋ฅผ ํ์ฉํ ์ํ ๋ฆฌ์คํธ ํฌ๋กค๋ง (0) | 2023.01.29 |
---|---|
๋ฉํฐํ๋ก์ธ์ฑ (Multiprocessing) w/ Python (0) | 2023.01.26 |
Python์ผ๋ก ๋ฉ์ผ ๋ณด๋ด๊ธฐ [@gmail] (3) | 2023.01.21 |
[์นํฌ๋กค๋ง 1ํ] requests์ bs4๋ฅผ ํ์ฉํ ๋ ์ํผ ๋ชฉ๋ก ํฌ๋กค๋ง (2) | 2023.01.19 |
[API] ChatGPT Python์ผ๋ก ์ฌ์ฉํด๋ณด๊ธฐ - Part.1 (์์ ) (8) | 2023.01.17 |
๋๊ธ