๐ Nano banana pro
๋ฌธ์
- Nano banana pro ๋ชจ๋ธ์ ์ด์ฉํด ์ด๋ฏธ์ง๋ฅผ ์์ฑํ๋ ์ค retry ๋ก์ง์ ์ถ๊ฐํ์์๋ api ํธ์ถ ๊ฒฐ๊ณผ๋ก
None์ด ๋ฐํ๋๋ ์ํฉ์ด ๋ฐ๋ณต์ ์ผ๋ก ๋ํ๋ฌ๋ค. - ๊ตฌํํด๋ retry ๋ก์ง์
None์ด ๋ฐํ๋๋ฉด ๋ชจ๋ธ ํธ์ถ ๋ฐ ์์ฑ ๊ณผ์ ์ด ๋ค์ ๋์๊ฐ๊ธฐ ๋๋ฌธ์ ์คํ ์ด์ง ์๋ฒ ํ ์คํธ ์ ์ข ์ข timeout error๊ฐ ๋จ๋ ๊ฒฝ์ฐ๊ฐ ์์๊ณ , ์ด ์ํ๋ก ์ด์ ์๋ฒ์ ๋ฐฐํฌ๋๋ค๋ฉด ์์ฑ ๊ฒฐ๊ณผ์ ์ผ๊ด์ฑ์ด ์์ด์ ๊ณ ๊ฐ๋ค์๊ฒ ์ ๋ขฐ๋ฅผ ์ค ์ ์๊ฒ ๋ค๋ ์๊ฐ์ด ๋ค์๋ค.
None์ ๋ํ ๊ณ ์ฐฐ
-
'์ ์ด๋ ๊ฒ None์ด ์์ฃผ ๋จ์ง?' ์ถ์ด์ ๊ทธ ์ด์ ์ ๋ํด ๊ณ ๋ฏผํด๋ณด๋ฉด์ ๋ด๊ฐ ์ถ์ธกํ ๋ด์ฉ๊ณผ ๊ฐ ๋ด์ฉ์ ๋ํด ์ค์ค๋ก ๋ฐ๋ฌธํด๋ณธ ๊ฒฐ๊ณผ๋ ์๋์ ๊ฐ๋ค.
-
๐ฃ ์ ํดํ ํ๋กฌํํธ?
-
ํ์ฐฝ ๋ก์ปฌ ํ๊ฒฝ์์ Gemini api๋ฅผ ํ ์คํธ ํ ๋ ์ด์ ๋ ์ ์ ์์ง๋ง ๊ฐํน '์ด ํ๋กฌํํธ๋ safety ์ธก๋ฉด์์ ํํฐ๋ง๋์๋ค'๋ ๋์์ค์ ๊ฒฐ๊ณผ๋ฅผ ๋ณธ ์ ์ด ์๋ค.
-
๋ด๊ฐ ์ ๋ง toxicํ(๋๋ toxicํ๋ค๊ณ ์์ฌ๋ฐ์๋งํ) ๋ด์ฉ์ ๋ฃ์ ๊ฒ๋ ์๋์๊ณ ํด๋น ๊ฒฐ๊ณผ๋ ์ ๋ง ๊ฐํน ๊ฐ๋ค 1~2๋ฒ ๋ฐ๊น ๋ง๊น ํ ๊ฒ์ด์๊ธฐ ๋๋ฌธ์ ํ๋กฌํํธ์ ๋ฌธ์ ๋ ์๋๋ผ๊ณ ํ๋จํ๋ค.
-
-
๐ฐ ํ ํฐ์ ์ด๊ณผ?
- ์ด๊ฒ ๋ํ Gemini๊ฐ ๊ฐ๋นํ ์ ์๋ ์์ ํ ํฐ์ ์ ๋ ฅ์ผ๋ก ๋ฃ์๊ฑฐ๋ ๋์ฌ ๋ฆฌ๊ฐ ์์ด์ ์์ธ์ด ์๋๋ผ๊ณ ์๊ฐํ๋ค.
-
๋ฌธ์ ์์ธ ํ์ ๋ฐ ํด๊ฒฐ
-
๊ทธ๋ ๋ค๋ฉด ๋์ฒด ์ด๋ค ๋ถ๋ถ์ด ๋ฌธ์ ์ผ๊น ์ถ์ด์ ๋ค์ ๋จ์๋ฌด์ํ ๋๋ฒ๊น ๋ฐฉ๋ฒ์ด์ง๋ง ๊ทธ๋งํผ ๊ฐ์ฅ ํ์คํ๋ค๊ณ ์๊ฐํ๋ 'print๋ฌธ ์ฐ์ด๋ณด๊ธฐ' ๋ฐฉ๋ฒ์ผ๋ก
response.candidates๋ฅผ ํ์ธํด๋ณด์๋ค. -
๋๋๊ฒ๋! ์ด๋ฏธ์ง๋ฅผ ์ถ๋ ฅํ๋ ๊ฒ ์๋๋ผ ํ ์คํธ ํ์์ผ๋ก Gemini์ thinking ๊ณผ์ ๋ง ์ถ๋ ฅ๋๋ ๊ฒฝ์ฐ๊ฐ ์์๋ค.
-
๋๋ ๋ต๋ณ ๊ฒฐ๊ณผ์ ์ด๋ฏธ์ง๊ฐ ํฌํจ๋์ด ์์ ๋๋ง ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํ๊ฒ ํด๋ ์ํ์ฌ์ ํ ์คํธ๋ง ์ถ๋ ฅ๋๋ ๊ฒฝ์ฐ์
None์ด ๋จ๋ ๊ฑฐ์๋ค.-
์ด๋ฐ ๊ฒฝ์ฐ๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํด
types.GenerateContentConfig์ response_modalities ์ต์ ์ ์ถ๊ฐํด์ ๋ต๋ณ ํ์์ IMAGE๋ก ๊ฐ์ ํ๋ ๋ฐฉ์์ ํํ๋ค.config = types.GenerateContentConfig( temperature=temperature, response_modalities=["Image"], # ์ถ๊ฐํ ์ต์ ) -
์ฐธ๊ณ (Gemini API official documentation)
response = client.models.generate_content( model="gemini-3-pro-image-preview", contents=[ prompt, Image.open('person1.png'), Image.open('person2.png'), Image.open('person3.png'), Image.open('person4.png'), Image.open('person5.png'), ], config=types.GenerateContentConfig( response_modalities=['TEXT', 'IMAGE'], image_config=types.ImageConfig( aspect_ratio=aspect_ratio, image_size=resolution ), ) )
-
๋๋ ์
- ํ๋กฌํํธ ์์ฑ๋ง์ด ์๋๋ผ ๋ด๊ฐ ์ํ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ์ต์ ์ ์ ์ธ ์ค ์๋ ๊ฒ๋ ๋ LLM ์๋์ ์ค์ํ ํฌ์ธํธ์ธ ๊ฒ ๊ฐ๋ค.
๐ป Python asyncio
asyncio.gather
- ๋์ ์์ฒญ ์ค ๊ฐ์ฅ ๋๋ฆฐ ์ฒ๋ฆฌ ๊ฒฐ๊ณผ์ ๋ฐ๋ผ ์ ์ฒด ์๊ฐ์ด ๊ฒฐ์ ๋๋ค.