ํต์ฌ ์์ฝ (3์ค ์์ฝ)
- 0์๋ถํฐ ์์ํ๋ AI ๊ฐ๋ฐ! ํ์ด์ฌ ๊ฐ๋ฐ์/๋ฐ์ดํฐ ๊ณผํ์๋ฅผ ์ํ Gemini API ์ฐ๋์ ๋ชจ๋ ๊ฒ์ ๋ด์ ์ค์ ๊ฐ์ด๋์
๋๋ค.
- API ํค ๋ฐ๊ธ, ํ๊ฒฝ ์ค์ ๋ถํฐ ํ์ด์ฌ ํ
์คํธ ์์ฑ๊น์ง, ๋จ๊ณ๋ณ ์๋ฒฝ ๋ง์คํฐ ๋ก๋๋งต์ ์ ์ํฉ๋๋ค.
- ํต์ฌ ๋ณด์ ๊ด๋ฆฌ ๋ฐ ์์ฃผ ๋ฐ์ํ๋ ์๋ฌ ํด๊ฒฐ ๋
ธํ์ฐ๊น์ง, ์ด ๊ฐ์ด๋ ํ๋๋ก ํ ๋ฒ์ ๋๋ด์ธ์!
๐ ๋ชฉ์ฐจ
ํ์ด์ฌ ํ๋ก์ ํธ์ AI ๊ธฐ๋ฅ์ ์ถ๊ฐํ๊ณ ์ถ์ง๋ง, Gemini API ์ฐ๋์ด ๋ง๋งํ๊ฒ ๋๊ปด์ง์๋์? ์ต์ AI ๋ชจ๋ธ์ ๊ฐ๋ ฅํ ์ฑ๋ฅ์ ๋ด ํ๋ก์ ํธ์ ์ด๋ป๊ฒ ์ ๋ชฉํ ์ง ๊ณ ๋ฏผํ๋ ๊ฐ๋ฐ์, ๋ฐ์ดํฐ ๊ณผํ์, ๋๋ ๊ธฐํ์๋ผ๋ฉด ์ฃผ๋ชฉํ์ธ์. HowtoAI๊ฐ 2026๋
์ต์ , ์ฌ๋ฌ๋ถ์ ๊ณ ๋ฏผ์ ํด๊ฒฐํด ์ค ์๋ฒฝ ๊ฐ์ด๋๋ฅผ ์ค๋นํ์ต๋๋ค!
์ด ๊ฐ์ด๋ ํ๋๋ก API ํค ๋ฐ๊ธ๋ถํฐ ํ์ด์ฌ ์ฐ๋, ์ค์ ์๋ํ๋ ์์ ์ฝ๋, ํํ ๊ฒช๋ ์๋ฌ ํด๊ฒฐ ํ, ๊ทธ๋ฆฌ๊ณ ์ค์ํ ๋ณด์ ๊ด๋ฆฌ ๋ฐฉ์๊น์ง, Gemini API ํ์ฉ์ ๋ชจ๋ ๊ฒ์ 0์๋ถํฐ ์ฝ๊ณ ๋น ๋ฅด๊ฒ ๋ง์คํฐํ ์ ์์ต๋๋ค.
Gemini API, ์ ์ง๊ธ ์ฃผ๋ชฉํ ๊น์?
Google์ด ์ผ์ฌ ์ฐจ๊ฒ ์ ๋ณด์ธ Gemini๋ ํ
์คํธ๋ฅผ ๋์ด ์ด๋ฏธ์ง, ์ค๋์ค, ๋น๋์ค๊น์ง, ๋ค์ํ ํํ์ ๋ฐ์ดํฐ๋ฅผ ์ดํดํ๊ณ ์์ฑํ๋ ๋ฉํฐ๋ชจ๋ฌ AI ๋ชจ๋ธ์
๋๋ค. ํ์ด์ฌ ๊ฐ๋ฐ์๋ ๋ฐ์ดํฐ ๊ณผํ์๋ผ๋ฉด, Gemini์ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ์ ์ฌ๋ฌ๋ถ์ ์ ํ๋ฆฌ์ผ์ด์
์ ํตํฉํ์ฌ ์ฌ์ฉ์์๊ฒ ์ฐจ์์ด ๋ค๋ฅธ ๊ฒฝํ์ ์ ์ฌํ ์ ์์ต๋๋ค. ์, ์ง๊ธ Gemini์ ์ฃผ๋ชฉํด์ผ ํ๋ ์ด์ ๋ฅผ ํจ๊ป ์์๋ณผ๊น์?
๋๊ตฌ์๊ฒ ์ ํฉํ ๊น์?
- ํ์ด์ฌ ๊ฐ๋ฐ์: ๊ธฐ์กด ํ๋ก์ ํธ์ ์์ฐ์ด ์ฒ๋ฆฌ, ์ฝํ
์ธ ์์ฑ ๋ฑ AI ๊ธฐ๋ฅ์ ์ถ๊ฐํ์ฌ ํ ๋จ๊ณ ์
๊ทธ๋ ์ด๋ํ๊ณ ์ถ์ ๋ถ.
- ๋ฐ์ดํฐ ๊ณผํ์: ๋ฐ์ดํฐ ๋ถ์ ๋ฐ ๋ชจ๋ธ๋ง ๊ณผ์ ์์ AI ๊ธฐ๋ฐ ํ
์คํธ ์์ฑ์ด๋ ์์ฝ ๊ธฐ๋ฅ์ผ๋ก ์ธ์ฌ์ดํธ๋ฅผ ๊ทน๋ํํ๊ณ ์ถ์ ๋ถ.
- AI ์๋น์ค ๊ธฐํ์: MVP(์ต์ ๊ธฐ๋ฅ ์ ํ) ๊ฐ๋ฐ ์, Google์ ๊ฐ๋ ฅํ AI ๋ชจ๋ธ์ ๋น ๋ฅด๊ฒ ์ฐ๋ํ์ฌ ์์ด๋์ด๋ฅผ ํ์ค๋ก ๊ตฌํํ๊ณ ์ถ์ ๋ถ.
์ด ๊ฐ๋ ฅํ API๋ฅผ ํ์ฉํ๋ฉด, ์ฌ์ฉ์์๊ฒ ํจ์ฌ ๋ ์ค๋งํธํ๊ณ ๊ฐ์ธํ๋ ๊ฒฝํ์ ์ ์ฌํ๋ ํ์ ์ ์ธ ์๋น์ค๋ฅผ ์์ฝ๊ฒ ๊ตฌ์ถํ ์ ์์ต๋๋ค.

Gemini API ์์ํ๊ธฐ: ํ์ ์ค๋น๋ฌผ
Gemini API๋ฅผ ํ์ด์ฌ ํ๋ก์ ํธ์ ์ฑ๊ณต์ ์ผ๋ก ์ฐ๋ํ๋ ค๋ฉด ๋ช ๊ฐ์ง ํ์ ์ค๋น๋ฌผ์ด ํ์ํฉ๋๋ค. ๊ฑฑ์ ๋ง์ธ์! ์๋ ๋จ๊ณ๋ฅผ ์ฐจ๊ทผ์ฐจ๊ทผ ๋ฐ๋ผ์ค์๋ฉด ๋๊ตฌ๋ ๊ธ์ธ ์ค๋น๋ฅผ ๋ง์น ์ ์์ต๋๋ค.
1. Google Cloud ํ๋ก์ ํธ ์ค์ ๋ฐ API ํ์ฑํ
Gemini API๋ Google Cloud Platform(GCP)์์ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌ๋ฉ๋๋ค.
- Google Cloud Console ์ ์: console.cloud.google.com์ ์ ์ํ์ฌ ๋ก๊ทธ์ธํฉ๋๋ค.
- ์ ํ๋ก์ ํธ ์์ฑ ๋๋ ๊ธฐ์กด ํ๋ก์ ํธ ์ ํ: ํ๋ฉด ์๋จ์ ํ๋ก์ ํธ ์ ํ๊ธฐ์์ ์ ํ๋ก์ ํธ๋ฅผ ๋ง๋ค๊ฑฐ๋, ๊ธฐ์กด ํ๋ก์ ํธ๋ฅผ ์ ํํฉ๋๋ค.
- Vertex AI API ํ์ฑํ:
- ์ข์ธก ๋ด๋น๊ฒ์ด์
๋ฉ๋ด์์ 'API ๋ฐ ์๋น์ค' > '๋ผ์ด๋ธ๋ฌ๋ฆฌ'๋ก ์ด๋ํฉ๋๋ค.
- ๊ฒ์์ฐฝ์ "Vertex AI Generative AI API"๋ฅผ ๊ฒ์ํ ํ ํ์ฑํํฉ๋๋ค.
Generative Language API๋ฅผ ๊ฒ์ํ์ฌ ํ์ฑํํ ์๋ ์์ต๋๋ค. ์ด ๊ธ์์๋ Generative Language API๋ฅผ ๊ธฐ์ค์ผ๋ก ์ค๋ช
ํฉ๋๋ค.
2. API ํค ๋ฐ๊ธ ๋ฐ ๊ด๋ฆฌ
API ํค๋ ์ฌ๋ฌ๋ถ์ ํ๋ก์ ํธ๋ฅผ ์ธ์ฆํ๊ณ , Gemini API๋ฅผ ์์ ํ๊ฒ ์ฌ์ฉํ ์ ์๋๋ก ๊ถํ์ ๋ถ์ฌํ๋ ํต์ฌ ์ด์ ์
๋๋ค.
- API ํค ์์ฑ:
- 'API ๋ฐ ์๋น์ค' > '์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด'๋ก ์ด๋ํฉ๋๋ค.
- '์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๋ง๋ค๊ธฐ'๋ฅผ ํด๋ฆญํ๊ณ 'API ํค'๋ฅผ ์ ํํฉ๋๋ค.
- ์๋ก์ด API ํค๊ฐ ์์ฑ๋๋ฉด ์ฆ์ ๋ณต์ฌํฉ๋๋ค. ์ด ํค๋ ๋ค์๋ ๋ณผ ์ ์์ผ๋, ๋ฐ๊ธ๋ฐ๋ ์ฆ์ ๋ฐ๋์ ์์ ํ ๊ณณ์ ๋ณต์ฌํด ๋์ธ์!
- API ํค ๋ณด์ ๊ด๋ฆฌ:
- ์์ฑ๋ API ํค๋ ์ ๋ ์ฝ๋์ ์ง์ ํ๋์ฝ๋ฉํ๊ฑฐ๋ ๋ฒ์ ๊ด๋ฆฌ ์์คํ
(Git ๋ฑ)์ ์ปค๋ฐํด์๋ ์ ๋ฉ๋๋ค.
- ๊ฐ์ฅ ์ข์ ๋ฐฉ๋ฒ์ ํ๊ฒฝ ๋ณ์๋ก ์ค์ ํ์ฌ ์ฌ์ฉํ๋ ๊ฒ์
๋๋ค.
- ๋ณด์์ฑ ํฅ์
- ์ฝ๋์ ์ค์ ๋ถ๋ฆฌ
- ์ฌ๋ฌ ํ๊ฒฝ์์ ์ฝ๊ฒ ๊ด๋ฆฌ
- ์ด๊ธฐ ์ค์ ํ์
- ํ๊ฒฝ ๋ณ์ ๋๋ฝ ์ ์๋ฌ ๋ฐ์ ๊ฐ๋ฅ
ํ๊ฒฝ ๋ณ์๋ก ์ค์ ํ๋ ๋ฐฉ๋ฒ:
export GOOGLE_API_KEY="๋น์ ์_API_ํค"
$env:GOOGLE_API_KEY="๋น์ ์_API_ํค"
set GOOGLE_API_KEY="๋น์ ์_API_ํค"
.bashrc, .zshrc, .profile ๋ฑ ์ ์ค์ ํ์ผ์ export ๋ช
๋ น์ด๋ฅผ ์ถ๊ฐํ๋ฉด ํฐ๋ฏธ๋์ ๋ค์ ์์ํด๋ ํ๊ฒฝ ๋ณ์๊ฐ ์ ์ง๋ฉ๋๋ค.
3. ํ์ด์ฌ ํ๊ฒฝ ์ค์
Gemini API๋ฅผ ํ์ด์ฌ์์ ์ฌ์ฉํ๋ ค๋ฉด google-generativeai ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํด์ผ ํฉ๋๋ค.
- Python ์ค์น: ํ์ด์ฌ 3.9 ์ด์ ๋ฒ์ ์ด ์ค์น๋์ด ์๋์ง ํ์ธํฉ๋๋ค.
- ๊ฐ์ ํ๊ฒฝ ์์ฑ ๋ฐ ํ์ฑํ (๊ถ์ฅ): ํ๋ก์ ํธ๋ง๋ค ๋
๋ฆฝ์ ์ธ ํ๊ฒฝ์ ์ ์งํ๊ธฐ ์ํด ๊ฐ์ ํ๊ฒฝ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
python -m venv venv_gemini
source venv_gemini/bin/activate
.\venv_gemini\Scripts\activate
- ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ค์น:
pip install google-generativeai
์, ์ด์ Gemini API๋ฅผ ํ์ด์ฌ์์ ํ์ฉํ ๋ชจ๋ ์ค๋น๋ฅผ ๋ง์ณค์ต๋๋ค!
ํ์ด์ฌ์ผ๋ก Gemini API ์ฐ๋ํ๊ธฐ: ๋จ๊ณ๋ณ ๊ฐ์ด๋
์ด์ ์ด๋ก ์ ๋์ด ์ค์ ์ผ๋ก ๋ฐ์ด๋ค ์๊ฐ์
๋๋ค! ์ค์ ํ์ด์ฌ ์ฝ๋๋ฅผ ์์ฑํ๋ฉฐ Gemini API๋ฅผ ์ฌ๋ฌ๋ถ์ ํ๋ก์ ํธ์ ์๋ฒฝํ๊ฒ ์ฐ๋ํด ๋ณด๊ฒ ์ต๋๋ค.

1๋จ๊ณ: ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ค์น ํ์ธ
์์ ์ค์นํ google-generativeai ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์ ๋๋ก ์ค์น๋์๋์ง ํ์ธํ๊ณ ๊ฐ์ ธ์ต๋๋ค.
2๋จ๊ณ: API ํค ์ค์
ํ๊ฒฝ ๋ณ์์ ์ ์ฅํ API ํค๋ฅผ ํ์ด์ฌ ์ฝ๋์์ ๋ถ๋ฌ์ต๋๋ค. os ๋ชจ๋์ ์ฌ์ฉํฉ๋๋ค.
import os
import google.generativeai as genai
api_key = os.getenv("GOOGLE_API_KEY")
if not api_key:
raise ValueError("GOOGLE_API_KEY ํ๊ฒฝ ๋ณ์๊ฐ ์ค์ ๋์ง ์์์ต๋๋ค.")
genai.configure(api_key=api_key)
print("API ํค ์ค์ ์๋ฃ.")
API ํค๋ฅผ ํ๊ฒฝ ๋ณ์์ ์ค์ ํ๋ ๊ฒ์ ๋ณด์์ ๋งค์ฐ ์ค์ํฉ๋๋ค. ๋ง์ฝ ๋จ์ ํ
์คํธ ๋ชฉ์ ์ผ๋ก๋ง ์งง๊ฒ ์ฌ์ฉํ ๊ฒฝ์ฐ, genai.configure(api_key="YOUR_API_KEY")์ ๊ฐ์ด ์ง์ ์
๋ ฅํ ์๋ ์์ง๋ง, ์ค์ ์๋น์ค์์๋ ์ ๋ ๊ถ์ฅํ์ง ์๋ ๋ฐฉ์์
๋๋ค.
3๋จ๊ณ: ๋ชจ๋ธ ์ด๊ธฐํ
API ํค๋ฅผ ์ค์ ํ๋ค๋ฉด, ์ด์ ์ฌ์ฉํ Gemini ๋ชจ๋ธ์ ์ง์ ํด์ผ ํฉ๋๋ค. Gemini๋ ๋ค์ํ ๋ชจ๋ธ์ ์ ๊ณตํ๋ฉฐ, ์ฌ๊ธฐ์๋ ํ
์คํธ ์์ฑ์ ์ ํฉํ ๋ชจ๋ธ์ ์ฌ์ฉํฉ๋๋ค. gemini-pro๋ ์ผ๋ฐ์ ์ธ ํ
์คํธ ์์
์ ์ ํฉํฉ๋๋ค.
model = genai.GenerativeModel('gemini-pro')
print("๋ชจ๋ธ ์ด๊ธฐํ ์๋ฃ: gemini-pro")
4๋จ๊ณ: ํ
์คํธ ์์ฑ ์์ฒญ ๋ณด๋ด๊ธฐ
์ด๊ธฐํ๋ ๋ชจ๋ธ์ ์ฌ์ฉํ์ฌ ํ
์คํธ ์์ฑ ์์ฒญ์ ๋ณด๋
๋๋ค. generate_content ๋ฉ์๋๋ฅผ ์ฌ์ฉํฉ๋๋ค.
prompt = input("Gemini์๊ฒ ์ง๋ฌธํ์ธ์: ")
print(f"์ง๋ฌธ: {prompt}")
try:
response = model.generate_content(
prompt,
generation_config=genai.types.GenerationConfig(
candidate_count=1,
stop_sequences=[],
max_output_tokens=200,
temperature=0.7,
top_p=0.9,
top_k=40
)
)
print("์๋ต ์์ฒญ ์๋ฃ.")
if response and response.candidates:
generated_text = response.candidates[0].content.parts[0].text
print("\n--- Gemini์ ๋ต๋ณ ---")
print(generated_text)
else:
print("์๋ต์ ์์ฑํ์ง ๋ชปํ์ต๋๋ค.")
except Exception as e:
print(f"์๋ฌ ๋ฐ์: {e}")
5๋จ๊ณ: ์๋ต ์ฒ๋ฆฌํ๊ธฐ
์ ์ฝ๋์์ response.candidates[0].content.parts[0].text๋ฅผ ํตํด ์์ฑ๋ ํ
์คํธ๋ฅผ ์ถ์ถํ์ต๋๋ค. ์ค์ ์ ํ๋ฆฌ์ผ์ด์
์์๋ ์ด ํ
์คํธ๋ฅผ ํ์ฑํ์ฌ UI์ ํ์ํ๊ฑฐ๋ ์ถ๊ฐ์ ์ธ ๋ก์ง์ ํ์ฉํ ์ ์์ต๋๋ค.
์ด๋ค๊ฐ์? ์๊ฐ๋ณด๋ค ํจ์ฌ ๊ฐ๋จํ์ฃ ?
Gemini API ํ์ฉ ์์: ๊ฐ๋จํ ๊ธ์ฐ๊ธฐ ๋์ฐ๋ฏธ
์์์ ์ตํ ์ง์์ ๋ฐํ์ผ๋ก, ์ค์ํ์ ๋ฐ๋ก ์ ์ฉํ ์ ์๋ '๊ฐ๋จํ ๊ธ์ฐ๊ธฐ ๋์ฐ๋ฏธ'๋ฅผ ํจ๊ป ๋ง๋ค์ด ๋ณผ๊น์? ์ฌ์ฉ์๊ฐ ํค์๋๋ฅผ ์
๋ ฅํ๋ฉด, Gemini๊ฐ ํด๋น ํค์๋๋ฅผ ํฌํจํ๋ ์งง์ ๊ธ์ ์์ฑํด ์ฃผ๋ ์์ ์
๋๋ค.
import os
import google.generativeai as genai
api_key = os.getenv("GOOGLE_API_KEY")
if not api_key:
raise ValueError("GOOGLE_API_KEY ํ๊ฒฝ ๋ณ์๊ฐ ์ค์ ๋์ง ์์์ต๋๋ค.")
genai.configure(api_key=api_key)
model = genai.GenerativeModel('gemini-pro')
def generate_short_article(keywords):
"""
์ฃผ์ด์ง ํค์๋๋ฅผ ๋ฐํ์ผ๋ก ์งง์ ๊ธ์ ์์ฑํฉ๋๋ค.
"""
prompt = f"๋ค์ ํค์๋๋ฅผ ํฌํจํ์ฌ 100์ ๋ด์ธ์ ์งง์ ๊ธ์ ์์ฑํด ์ฃผ์ธ์: {keywords}"
try:
response = model.generate_content(
prompt,
generation_config=genai.types.GenerationConfig(
max_output_tokens=150,
temperature=0.8
)
)
if response and response.candidates:
return response.candidates[0].content.parts[0].text
else:
return "๊ธ์ ์์ฑํ์ง ๋ชปํ์ต๋๋ค. ๋ค๋ฅธ ํค์๋๋ฅผ ์๋ํด ๋ณด์ธ์."
except Exception as e:
return f"๊ธ ์์ฑ ์ค ์๋ฌ ๋ฐ์: {e}"
if __name__ == "__main__":
user_keywords = input("๊ธ์ฐ๊ธฐ ์ฃผ์ ํค์๋๋ฅผ ์
๋ ฅํ์ธ์ (์: ์ธ๊ณต์ง๋ฅ, ๋ฏธ๋, ๋ณํ): ")
print(f"\n์
๋ ฅ ํค์๋: {user_keywords}")
article = generate_short_article(user_keywords)
print("\n--- Gemini๊ฐ ์์ฑํ ๊ธ ---")
print(article)
์ด ์ฝ๋๋ generate_short_article ํจ์๋ฅผ ์ ์ํ์ฌ ํค์๋๋ฅผ ์
๋ ฅ๋ฐ๊ณ , ์ด๋ฅผ ๋ฐํ์ผ๋ก Gemini ๋ชจ๋ธ์ ๊ธ ์์ฑ์ ์์ฒญํฉ๋๋ค. max_output_tokens์ temperature ๊ฐ์ GenerationConfig ๋งค๊ฐ๋ณ์๋ฅผ ์กฐ์ ํ์ฌ ์ํ๋ ๊ธธ์ด์ ์คํ์ผ์ ์๋ต์ ์ป์ ์ ์์ต๋๋ค.
AI ๋ชจ๋ธ์ ์๋ต ํ์ง์ ์ฌ๋ฌ๋ถ์ด ์ผ๋ง๋ '๋๋ํ๊ฒ' ์ง๋ฌธ(ํ๋กฌํํธ ์์ง๋์ด๋ง)ํ๋๋์ ๋ฌ๋ ค ์์ต๋๋ค. ๋ช
ํํ๊ณ ๊ตฌ์ฒด์ ์ธ ์ง์์ ์ํ๋ ๊ฒฐ๊ณผ๋ฌผ์ ํ์์ ์ ์ํ๋ 'ํ๋กฌํํธ ์์ง๋์ด๋ง'์ Gemini์ ์ ์ฌ๋ ฅ์ 100% ๋์ด๋ด๋ ํต์ฌ ๋น๋ฒ์
๋๋ค!
์์ฃผ ๋ฐ์ํ๋ ์๋ฌ์ ํด๊ฒฐ ๋ฐฉ๋ฒ
Gemini API๋ฅผ ์ฌ์ฉํ๋ค ๋ณด๋ฉด ๋ง์ฃผ์น ์ ์๋ ํํ ์๋ฌ๋ค, ๋นํฉํ์ง ๋ง์ธ์! HowtoAI๊ฐ ๋ํ์ ์ธ ์๋ฌ์ ๊ทธ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๋ช
์พํ๊ฒ ์๋ ค๋๋ฆฝ๋๋ค.
-
403 Permission denied: API Key not valid. Please pass a valid API key.
- ์์ธ: API ํค๊ฐ ์๋ชป๋์๊ฑฐ๋, ํด๋น API ํค์ ์ ๊ทผ ๊ถํ์ด ์๋ ๊ฒฝ์ฐ์
๋๋ค.
- ํด๊ฒฐ:
- Google Cloud Console์์ API ํค๋ฅผ ๋ค์ ์์ฑํ์ฌ ์ฌ๋ฐ๋ฅธ ํค๋ฅผ ์ฌ์ฉํ๊ณ ์๋์ง ํ์ธํฉ๋๋ค.
- API ํค๋ฅผ ํ๊ฒฝ ๋ณ์์ ์ ๋๋ก ์ค์ ํ๋์ง, ๋๋ ์ฝ๋์ ์ฌ๋ฐ๋ฅด๊ฒ ์
๋ ฅํ๋์ง ๋ค์ ํ์ธํฉ๋๋ค.
- ํด๋น ํ๋ก์ ํธ์์
Vertex AI Generative AI API ๋๋ Generative Language API๊ฐ ํ์ฑํ๋์ด ์๋์ง ํ์ธํฉ๋๋ค.
- API ํค์ ํน์ ์ ํ์ด ๊ฑธ๋ ค์์ ์๋ ์์ผ๋, API ํค ์ค์ ํ์ด์ง์์ ์์ธ ์ ํ ์ฌํญ์ ๊ผผ๊ผผํ ํ์ธํด ๋ณด์ธ์.
-
429 Resource Exhausted: Quota exceeded for project... ๋๋ Rate Limit Exceeded
- ์์ธ: API ํธ์ถ ํ์๊ฐ ํ ๋น๋ ํ ๋น๋(Quota)์ ์ด๊ณผํ ๊ฒฝ์ฐ์
๋๋ค.
- ํด๊ฒฐ:
- Google Cloud Console์ 'API ๋ฐ ์๋น์ค' > 'ํ ๋น๋' ํ์ด์ง์์
Generative Language API ๋๋ Vertex AI Generative AI API์ ํ ๋น๋ ์ฌ์ฉ๋์ ํ์ธํฉ๋๋ค.
- ํ ๋น๋ ์ฆ๋๊ฐ ํ์ํ ๊ฒฝ์ฐ, ํด๋น ํ์ด์ง์์ ์ฆ๋ ์์ฒญ์ ์ ์ถํ ์ ์์ต๋๋ค.
- ๋จ๊ธฐ๊ฐ์ ๋๋ฌด ๋ง์ ์์ฒญ์ ๋ณด๋ด์ง ์๋๋ก ์ฝ๋์ ์ง์ฐ(sleep)์ ์ถ๊ฐํ๊ฑฐ๋, ์์ฒญ ์ฃผ๊ธฐ๋ฅผ ์กฐ์ ํฉ๋๋ค.
-
๋ฌด๋ฃ ํ ๋น๋์ ์ด๊ณผํ๋ฉด ์์์น ๋ชปํ ๋น์ฉ์ด ๋ฐ์ํ ์ ์์ผ๋ ์ฃผ์ํด์ผ ํฉ๋๋ค. ํนํ ํ๋ก๋์
ํ๊ฒฝ์์๋ ์์ ์ฌ์ฉ๋์ ์ ํํ ํ์
ํ๊ณ ํ ๋น๋์ ํ๋ช
ํ๊ฒ ๊ด๋ฆฌํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
-
404 Not Found: Model 'gemini-pro' not found.
- ์์ธ: ์์ฒญํ ๋ชจ๋ธ ์ด๋ฆ์ด ์๊ฑฐ๋, ํด๋น ๋ฆฌ์ ์์ ์ฌ์ฉํ ์ ์๋ ๊ฒฝ์ฐ์
๋๋ค.
- ํด๊ฒฐ:
- ๋ชจ๋ธ ์ด๋ฆ์ ๋ค์ ํ์ธํฉ๋๋ค.
genai.list_models()๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ธ ๋ชฉ๋ก์ ์กฐํํ ์ ์์ต๋๋ค.
- ์ฌ์ฉํ๋ Google Cloud ํ๋ก์ ํธ์ ๋ฆฌ์ ์ค์ ์ด ๋ชจ๋ธ์ ์ง์ํ๋์ง ํ์ธํฉ๋๋ค. (Gemini ๋ชจ๋ธ์ ํน์ ๋ฆฌ์ ์์๋ง ์ฌ์ฉ ๊ฐ๋ฅํ ์ ์์ต๋๋ค.)
-
500 Internal Server Error
- ์์ธ: Google ์๋ฒ ๋ด๋ถ์ ๋ฌธ์ ๋ก ๋ฐ์ํฉ๋๋ค. ์ผ์์ ์ธ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค.
- ํด๊ฒฐ:
- ์ ์ ๊ธฐ๋ค๋ ธ๋ค๊ฐ ๋ค์ ์์ฒญ์ ์๋ํฉ๋๋ค.
- ๋ฌธ์ ๊ฐ ์ง์๋๋ฉด Google Cloud ์ํ ๋์๋ณด๋๋ฅผ ํ์ธํ์ฌ ์๋น์ค ์ค๋จ ์ฌ๋ถ๋ฅผ ํ์
ํฉ๋๋ค.
์๋ฌ ๋ฉ์์ง๋ ๋ฌธ์ ํด๊ฒฐ์ ์ค์ํ ๋จ์์ด๋ฏ๋ก, ์๋ฌ๊ฐ ๋ฐ์ํ๋ฉด ๋ฉ์์ง๋ฅผ ์ฃผ์ ๊น๊ฒ ์ฝ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
API ํค ๋ณด์ ๊ด๋ฆฌ: ์์ง ๋ง์์ผ ํ ์์น
API ํค๋ ์ฌ๋ฌ๋ถ์ ์์คํ Google Cloud ๋ฆฌ์์ค์ ์ ๊ทผํ ์ ์๋ ๋ง์คํฐ ํค์ ๊ฐ์ต๋๋ค. ์ด ํต์ฌ ์์ฐ์ ์์ ํ๊ฒ ๋ณดํธํ๊ธฐ ์ํ ์ฒ ์ ํ ๋ณด์ ๊ด๋ฆฌ๋ ํ์์
๋๋ค.
- ํ๊ฒฝ ๋ณ์ ์ฌ์ฉ: ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ด๊ณ ์ค์ํ ์์น์
๋๋ค. API ํค๋ฅผ ์ฝ๋์ ์ง์ ๋
ธ์ถํ์ง ์๊ณ ํ๊ฒฝ ๋ณ์์ ์ ์ฅํ์ฌ ์ฌ์ฉํ์ธ์.
- .gitignore์ ์ถ๊ฐ: ํ๋ก์ ํธ๋ฅผ Git์ผ๋ก ๊ด๋ฆฌํ๋ค๋ฉด, API ํค๊ฐ ํฌํจ๋ ํ์ผ(
.env ๋ฑ)์ .gitignore ํ์ผ์ ์ถ๊ฐํ์ฌ ์ค์๋ก ๋ฒ์ ๊ด๋ฆฌ ์์คํ
์ ์ปค๋ฐ๋๋ ๊ฒ์ ๋ฐฉ์งํฉ๋๋ค.
- ์ต์ ๊ถํ ์์น: API ํค์ ๋ถ์ฌํ๋ ๊ถํ์ ํด๋น API๋ฅผ ์ฌ์ฉํ๋ ๋ฐ ํ์ํ ์ต์ํ์ ๊ถํ์ผ๋ก ์ ํํฉ๋๋ค. ์๋ฅผ ๋ค์ด,
Generative Language API์๋ง ์ ๊ทผ ๊ฐ๋ฅํ๋๋ก ์ค์ ํ๋ ์์
๋๋ค.
- ์ฃผ๊ธฐ์ ์ธ ํค ๊ต์ฒด: ๋ง์ฝ API ํค๊ฐ ๋
ธ์ถ๋์์ ๊ฐ๋ฅ์ฑ์ด ์๋ค๋ฉด ์ฆ์ ํด๋น ํค๋ฅผ ์ญ์ ํ๊ณ ์๋ก์ด ํค๋ฅผ ๋ฐ๊ธ๋ฐ์ ๊ต์ฒดํด์ผ ํฉ๋๋ค.
์ด๋ฌํ ๋ณด์ ์์น๋ค์ ์ฒ ์ ํ ์งํค๋ ๊ฒ์ ๊ฐ๋ฐ ๊ณผ์ ์์ ๋ฐ์ํ ์ ์๋ ์ ์ฌ์ ์ธ ์ํ์ ์ต์ํํ๊ณ , ์ฌ๋ฌ๋ถ์ ์์คํ ํ๋ก์ ํธ๋ฅผ ๋ณดํธํ๋ ๋ฐ ๊ฒฐ์ ์ ์ธ ๋์์ด ๋ฉ๋๋ค.
Gemini API ์ฐ๋์ ํฉ๊ธ๋ฅ ! ๊ฐ์ฅ ์ค์ํ ๋ณด์ ์์น์ '์ ๋ API ํค๋ฅผ ์ฝ๋์ ํ๋์ฝ๋ฉํ์ง ์๊ณ , ํ๊ฒฝ ๋ณ์๋ฅผ ํตํด ์์ ํ๊ฒ ๊ด๋ฆฌ'ํ๋ ๊ฒ์
๋๋ค. ์ด ํต์ฌ ์์น๋ง ์ง์ผ๋ ์ฌ๋ฌ๋ถ์ ์์คํ AI ํ๋ก์ ํธ๋ฅผ ์๋ง์ ๋ณด์ ์ํ์ผ๋ก๋ถํฐ ๋ ๋ ํ๊ฒ ์งํฌ ์ ์์ต๋๋ค.
์, ์ด์ ์ฌ๋ฌ๋ถ์ Gemini API๋ฅผ ํ์ด์ฌ ํ๋ก์ ํธ์ ์ฑ๊ณต์ ์ผ๋ก ์ฐ๋ํ๊ณ ๊ธฐ๋ณธ์ ์ธ AI ๊ธฐ๋ฅ์ ํ์ฉํ ์ค๋น๊ฐ ์๋ฒฝํ๊ฒ ๋์์ต๋๋ค! ์ด ๊ฐ์ด๋๊ฐ ์ฌ๋ฌ๋ถ์ AI ๊ฐ๋ฐ ์ฌ์ ์ ๋ ๋ ํ ์ด์์ด ๋๊ธฐ๋ฅผ ์ง์ฌ์ผ๋ก ๋ฐ๋๋๋ค. ์ค์ ์ ํ๋ฆฌ์ผ์ด์
์ ์ ์ฉํ๋ฉฐ Gemini์ ๋ฌด๊ถ๋ฌด์งํ ์ ์ฌ๋ ฅ์ ๋ง์๊ป ํํํด ๋ณด์ธ์!
ํจ๊ป ๋ณด๋ฉด ์ข์ ๊ธ
๋ ์์๋ณด๊ธฐ