MCP - 10일차(Gemini API사용)

Jun·2026년 2월 14일

MCP

목록 보기
14/20

Gemini API 사용법 및 환경 설정 가이드

1. API Key 보안 및 환경변수 설정

API Key와 같은 민감한 정보는 소스 코드에 직접 노출하지 않고 환경변수로 관리하는 것이 보안상 필수입니다.

환경변수 로드 및 확인

	import os
    os.environ['LANGUAGE']
    os.environ['GEMINI_API_KEY'] #여기에 제미나이 키 입력
    
    # 별도의 환경변수 파일을 만들고
	# 실행시 환경변수 로딩을 하고 사용하기

	# .env 파일 작성
    

    from dotenv import load_dotenv
	load_dotenv()  # 환경변수 파일(기본 '.env')을 읽어들여 환경변수 등록.
               # 성공하면 True 리턴
               
     api_key = os.environ['GEMINI_API_KEY']  #여기에 제미나이 키 입력         
               

2. Gemini API 기본 호출

라이브러리 설치: pip install google-genai

기본 텍스트 생성

	from google import genai

    client = genai.Client()
    
    # 모델 호출
    response = client.models.generate_content(
        model="gemini-3-flash-preview",
        contents="Google Gemini에 대해 설명해줘",
    )
    print(response.text) # 설명이 다 나옵니다.  

3. 주요 기능 활용하기

스트리밍 (Streaming)

답변이 생성되는 대로 즉시 출력하여 사용자 경험을 개선합니다.

from google import genai

client = genai.Client()

# 모델 호출
response = client.models.generate_content_stream(  # generate_content_stream 는 iterable 리턴
    model="gemini-3-flash-preview",
    contents="Google Gemini 에 대해 설명해줘",
)

for chunk in response:
  print(chunk.text, end="")

시스템 인스트럭션 (System Instruction)

모델의 페르소나나 답변 스타일을 고정할 수 있습니다.

from google import genai
from google.genai import types

client = genai.Client()

# 모델 호출
response = client.models.generate_content(
    model="gemini-3-flash-preview",

    config= types.GenerateContentConfig(
        system_instruction="너는 고양이다.  너의 이름은 '냐코' 다"
    ),

    contents="안녕?",
)

print(response.text) #고양이처럼 말해줍니다. 

온도 조절 (Temperature)

0.0에 가까울수록 결정론적(일관적)이고, 1.0에 가까울수록 창의적인 답변을 생성합니다.
config = types.GenerateContentConfig(temperature=0.1)

# ... 호출 시 config 적용
from google import genai
from google.genai import types

client = genai.Client()

# 모델 호출
response = client.models.generate_content(
    model="gemini-3-flash-preview",

    config= types.GenerateContentConfig(
        temperature=0.1
    ),

    contents="AI 가 어떻게 동작하는지 알려줘",
)

print(response.text)

4. 멀티모달 (Multi-modal) 추론

텍스트뿐만 아니라 이미지를 함께 입력으로 전달하여 분석할 수 있습니다.

이미지 분석 예시

    import requests
    from PIL import Image
    from io import BytesIO
    from google import genai

    # 이미지 로드
    url = "https://cdn.britannica.com/18/129118-050-BF48319E/organ.jpg"
    img_data = requests.get(url).content
    image = Image.open(BytesIO(img_data))

    # 이미지와 텍스트를 함께 전달
    client = genai.Client()
    response = client.models.generate_content(
        model="gemini-3-flash-preview",
        contents=[image, "이 악기에 대해 설명해 줘"],
    )
    print(response.text)

5. Gemini 모델 사이즈 요약

  • Ultra: 복잡한 추론 및 코딩 작업용 최상위 모델
  • Pro: 성능과 속도의 균형이 잡힌 범용 모델
  • Flash: 실시간 응답이 필요한 고효율 경량 모델
  • Nano: 모바일 기기 내부에서 작동하는 온디바이스 모델
profile
Hard Trying

0개의 댓글