2025.7.31: 초간단 제미나이 실습

jiyongg·2025년 7월 31일

TIL: Today I Learned

목록 보기
12/30

나는 이번 해커톤에서 AI를 사용한 서비스를 만들어야 한다. 그래서 오늘은 제미나이를 아주 간단하게 실습해봤다. 사실, 하루종일 파이썬으로 실습한 것은 아니고, 리액트로 프론트를 만들어 간단한 웹 애플리케이션을 만들어 보고 있었는데, 아직 미완 상태이다. 그리고 많이 조잡해서 지금은 다루지 않겠다. 이에 대해선 나중에 따로 다루고자 한다.

📦 패키지 설치

제목에 적어놨듯, 제미나이를 가지고 실습할 것이다. 제미나이를 이용하기 위해서는 google-genai라는 패키지가 필요하다.

$ pip install google-genai

제미나이 API를 사용하려면, API 키를 필요로 한다. 나는 이 API 키를 .env에 분리해서 보관할 생각이다. 그래서 python-decouple도 설치해 주었다.

$ pip install python-decouple

🖐️ Hello World!

from google import genai
from decouple import config


API_KEY = config('GEMINI_API_KEY')

client = genai.Client(api_key=API_KEY)

response = client.models.generate_content(
    model='gemini-2.5-flash', contents="Say \"Hello World!\""
)

print(response.text)
  • 클라이언트를 생성할 때, API 키가 필요하다. 이 API 키는 라이브러리가 시스템 환경 변수 GEMINI_API_KEY에서 자동으로 가져오거나, 클라이언트 생성 시에 api_key 키워드 인자로 전달할 수 있다. 나는 시스템 환경 변수에 GEMINI_API_KEY 정보를 지정하지 않고, .env 파일에 GEMINI_API_KEY 정보를 저장했으므로, 직접 api_key 키워드 인자로 전달했다.

실행시켜 보면, Hello World!가 출력된다.

🔠 간단한 CLI 번역기

CLI 환경에서 사용할 수 있는 간단한 번역기를 하나 만들어 보았다.

translator.py

from google import genai
from google.genai import types
from decouple import config


API_KEY = config('GEMINI_API_KEY')

client = genai.Client(api_key=API_KEY))

lang_in = input("원문 언어: ")
lang_to = input("출력 언어: ")
text = input("텍스트 입력: ")

instruction = "You're a translator. You'll be given a text and you have to translate it following given prompt."
prompt = f"Translate the following text in {lang_in} to {lang_to}.: {text}"

response = client.models.generate_content(
    model='gemini-2.5-flash',
    config=types.GenerateContentConfig(
        system_instruction=instruction),
    contents=prompt
)

print(f"번역된 텍스트: {response.text}")
$ python translator.py
  • 제미나이에게 번역가 역할을 부여했다. 번역할 내용과 언어 정보를 담은 프롬프트를 만들어 이것을 바탕으로 텍스트를 생성시켰다.
  • 공식 문서에 따르면 제미나이 2.5 시리즈 모델들에는 품질 개선을 위해 사고(Thinking) 기능이 기본적으로 설정되어 있다고 한다. 이 때문인지, 조금 어려운 문장을 주면 시간이 좀 걸리는 것을 볼 수 있었다.
  • 공식 문서에서 사용할 수 있는 사고 토큰을 조절할 수 있다고 하는데, 컨텐츠의 퀄리티와 소모 시간을 잘 생각해서 적절한 제한값을 주는 것이 중요해 보인다.

🔚 결론

제미나이를 이용해서 아주 간단한 실습을 해 보았다. 예전에는 AI를 이용한 서비스 개발이라는 것은 결코 쉽지 않은 일이었다. 하지만 요즘에는 OpenAI구글 등에서 자신들의 LLM을 사용해 서비스를 만들 수 있도록 API를 제공해주고 있다. 이번에 제미나이 API를 직접 사용해보니, 옛날보다 확실히 AI를 이용한 서비스 개발의 접근성이 높아지고 난이도가 낮아지고 있다는 느낌을 받았다.

예전에 내가 읽었던 책에는 AI와 인간 간의 관계는 경쟁 관계가 아니라, 협업하는 관계가 되어야 된다고 적혀 있었다. AI를 무작정 공포나 경쟁의 대상으로 바라보는 것보단 이러한 AI 관련 API들을 잘 이용해서 더 좋은 컨텐츠를 개발할 수 있도록 노력해야 하지 않을까.

profile
그냥 쓰고 싶은 것 쓰는 개발(?) 블로그

0개의 댓글