
LLM 기술이 날로 발달하며, 가격도 시간이 흐를수록 저렴해지고 있습니다. DeepSeek는 오픈소스로 PC에 다운로드해 무료로 사용할 수 있습니다. 하지만 그렇게 하지 않아도 구글 제미나이를 무료로 사용하는 방법이 있습니다.
이 포스팅에서는 파이썬에서 제미나이(Gemini) API를 무료로 이용하는 방법을 알아봤습니다.
제미나이(Gemini) API란?
제미나이는 구글에서 개발하고 있는 AI 서비스입니다. 챗GPT와 동일하게 프롬프트를 입력하면 답변을 줍니다. 여기도 API를 제공하고 있는데요. 시장 확대차원에서 제미나이는 API를 무료로 제공하고 있습니다. 무료 등급은 테스트를 위해 비율이 낮은 API 서비스가 제공됩니다.
초보자나 소규모 프로젝트에는 충분히 사용할만한 성능이 무료입니다. 자세한 가격 정보는 제미나이 가격 책정 페이지를 참고하세요.
사용법
제미나이 API 키 생성
먼저 API 키를 생성해야 합니다. API KEY는 구글 AI Studio에서 생성합니다. API 키는 코드에서 Gemini API에 접근하기 위한 필수 요소이므로, 안전하게 보관해야 합니다. 구글 AI Studio 좌측 상단에 보면 ‘Get API key’ 메뉴가 있습니다. 메뉴로 이동한 후에 ‘API 키 만들기’ 버튼을 클릭하면 키가 생성됩니다. 키를 복사해서 메모장 등에 임시로 붙여넣습니다.
API 테스트 (curl 사용)
API 키가 준비됐다면, curl 명령어를 사용해 간단히 테스트해 볼 수 있습니다. 터미널이나 명령 프롬프트에서 다음 명령어를 실행해보세요.
curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=GEMINI_API_KEY" \ -H 'Content-Type: application/json' \ -X POST \ -d '{ "contents": [{ "parts":[{"text": "안녕하세요."}] }] }'
GEMINI_API_KEY 부분에는 앞에서 생성한 API Key를 넣습니다. 그럼 아래와 같이 답변이 옵니다.

파이썬 패키지 설치
파이썬에서 제미나이 API를 사용하기 위해서는 google-generativeai 패키지를 설치해야 합니다. 아래 명령어를 터미널에 입력하여 설치합니다:
pip install google-generativeai
이 패키지는 파이썬에서 제미나이 API를 쉽게 사용할 수 있게 도와줍니다.
코드 작성 및 실행
패키지 설치 후, 간단한 파이썬 코드로 API를 호출해 봅시다. 코드도 간단해서 사용하기 어렵지 않습니다.
import google.generativeai as genai genai.configure(api_key=GEMINI_API_KEY) model = genai.GenerativeModel("gemini-pro") combined_message = "안녕하세요." response = model.generate_content(combined_message)
reponse에는 응답한 결과가 반환됩니다. 답변만 보고 싶다면 response.text를 출력하면 됩니다.
다른 모델을 사용하고 싶으면, GenerativeModel에 다른 입력 파라미터를 넣으면 됩니다. 이미지 생성도 가능한데, 이는 유료 등급에서만 사용 가능합니다. 더 자세한 내용은 제미나이 API 문서를 참고하세요.
이 코드에서는 gemini.generate_text() 함수를 사용하여 텍스트 생성을 요청합니다. API 키를 설정하고, 원하는 프롬프트를 입력하면, AI가 해당 내용을 기반으로 응답을 생성해 줍니다.
오류 해결
제미나이 API를 사용할 때, 통신이 끊긴 것처럼 코드가 실행되는 상태에서 결과가 안 나오는 경우가 있습니다. 이 때는 Ctrl+C나 실행 중지 버튼을 눌러서 코드 실행을 중단하세요. 그럼 아래와 같이 DNS 해석(DNS resolution)이 실패했다는 메시지가 나옵니다.
grpc._channel._InactiveRpcError: <_InactiveRpcError of RPC that terminated with: status = StatusCode.UNAVAILABLE details = "DNS resolution failed for generativelanguage.googleapis.com:443: C-ares status is not ARES_SUCCESS qtype=SRV
이 경우 제미나이 API를 호출하기 전에, 아래 코드를 실행하면 해결될 수 있습니다. 이는 gRPC(Google Remote Procedure Call) 시스템 DNS 해석 설정을 ‘native’로 강제하는 코드입니다.
import os os.environ['GRPC_DNS_RESOLVER'] = 'native'
사용후기
위와 같이 제미나이 API를 파이썬에서 사용할 수 있습니다. 현재 무료로 제공돼 가격 부담이 적습니다. 하지만 사용해보면 ChatGPT보다는 성능이 아쉽습니다. 동일한 프롬프트를 넣었을 때, 원하는 답변이 잘 나오는 경우가 ChatGPT가 더 많았습니다.
ChatGPT에 최적화된 프롬프트일 수 있고, 제미나이에서 튜닝을 하면 성능이 충분히 좋아질 수도 있다고 생각합니다. 하지만 그러기에는 귀찮아서 ChatGPT API를 사용하게 됩니다.
하지만 제미나이 API 사용 코드가 훨씬 간단하고 비용도 무료라, 초보자들이 사용하기 좋습니다. Google AI Studio에는 프롬프트 갤러리나 모델 튜닝 등의 메뉴가 잘 돼 있어, 유용하게 사용할 수 있겠습니다.
제미나이 성능이 많이 올라오고 있는 만큼, 이를 활용하는 방안도 연구해봐야겠습니다.
함께 읽으면 좋은 글
- 25년 필수 AI 도구 20선 총정리, 업무와 일상을 혁신!
- 프로젝트 아스트라, 제미나이 2.0 기반 AI 비서 알아보기
- 구글에서 만든 웹 자동화 에이전트, 프로젝트 마리너 알아보기