Gemini API 사용법: 키 발급, 모델별 가격, 실제 호출 코드까지 한 번에 정리
💡 Key Takeaways
- API 키는 Google AI Studio에서 발급하며, 환경 변수로 관리하여 보안 사고를 예방해야 합니다.
- Gemini 2.5 Flash는 가성비가 가장 뛰어나며, Pro 모델은 복잡한 추론이 필요한 경우에만 선택적으로 사용하는 것이 좋습니다.
- 429 (Rate Limit) 에러에 대비해 지수 백오프(Exponential Backoff) 재시도 로직을 반드시 구현해야 합니다.
- 시스템 프롬프트를 활용하여 답변의 품질을 일관되게 유지하고 토큰 사용을 최적화할 수 있습니다.
Gemini API 완벽 가이드: 키 발급부터 실무 적용까지
구글의 Gemini 2.5 모델이 공개되면서 API 활용에 대한 관심이 뜨겁습니다. 하지만 공식 문서는 방대해서 당장 필요한 정보를 찾기 어려울 때가 많습니다.
이 글에서는 개발자가 Gemini API를 프로젝트에 즉시 통합 할 수 있도록, 필수적인 내용만 엄선하여 정리했습니다. API 키 발급, 모델별 가성비 분석, 그리고 운영 환경에서의 팁까지 한 번에 확인해 보세요.
1. API 키 발급 방법 (Step-by-Step)
Gemini API를 사용하기 위해서는 Google AI Studio에서 API 키를 발급받아야 합니다. 과정은 매우 간단합니다.
- Google AI Studio 에 접속합니다.
- "Get API key" 버튼을 클릭합니다.
- "Create API key in new project" 를 선택하여 새 키를 생성합니다.
- 생성된 키를 복사하여 안전한 곳에 저장합니다.
[!WARNING] 보안 주의사항 API 키를 절대로 코드(
git)에 직접 포함시키지 마세요..env파일을 사용하여 환경 변수로 관리하거나, 클라우드 공급자의 Secret Manager를 사용하는 것이 필수입니다. 키가 유출되면 예상치 못한 과금이 발생할 수 있습니다.
2. 모델 종류와 가격 정책 (2026년 기준)
어떤 모델을 써야 할까요? 무조건 성능이 좋은 모델이 정답은 아닙니다. 서비스의 목적에 맞춰 비용과 성능의 균형 을 맞춰야 합니다.
주요 모델 비교
| 모델명 | 특징 | 추천 용도 |
|---|---|---|
| Gemini 2.5 Flash | 압도적인 가성비, 빠른 속도 | 챗봇, 요약, 간단한 데이터 처리 (가장 추천) |
| Gemini 2.5 Pro | 높은 추론 능력, 논리적 사고 | 복잡한 코딩, 심층 분석, 창의적 글쓰기 |
| Gemini 2.5 Flash-Lite | 초경량, 초저비용 | 대량의 텍스트 분류, 단순 반복 작업 |
가격표 (Pricing)
비용은 입력(Input) 과 출력(Output) 토큰 양에 따라 책정됩니다. (100만 토큰 기준)
| 모델 ID | 입력 단가 | 출력 단가 | 비고 |
|---|---|---|---|
gemini-2.5-flash | $0.30 | $2.50 | 일반적인 웹/앱 서비스의 기본 모델 |
gemini-2.5-flash-lite | $0.10 | $0.40 | 로그 분석 등 대용량 처리에 적합 |
gemini-2.5-pro | $1.25 | $10.00 | Flash 대비 약 4배 비쌈 |
[!TIP] 비용 계산 예시
Gemini 2.5 Flash로 사용자가 500 토큰을 질문하고, AI가 500 토큰을 답변하는 경우, 10,000번 호출 시 비용은 약 $2.8 (약 3,800원) 정도입니다. 초기 서비스에는 Flash 모델로 충분합니다.
3. 실제 API 호출 예시 (Python & Curl)
이제 코드로 직접 호출해 봅시다.
Python SDK 사용법
가장 권장하는 방식입니다. 구글의 공식 SDK를 사용하면 간편하게 연동이 가능합니다.
1. 라이브러리 설치
pip install google-genai
2. 코드 작성 (app.py)
import os
from google import genai
from google.genai import types
# 환경 변수에서 키를 가져오세요
api_key = os.environ.get("GEMINI_API_KEY")
client = genai.Client(api_key=api_key)
try:
response = client.models.generate_content(
model="gemini-2.5-flash",
contents=["AI 개발자가 되기 위한 3가지 조언을 해줘."],
config=types.GenerateContentConfig(
temperature=0.7, # 창의성 조절 (0.0 ~ 1.0)
)
)
print(response.text)
except Exception as e:
print(f"에러 발생: {e}")