AI Sparkup

최신 AI 쉽게 깊게 따라잡기⚡

Deep Research Max 튜토리얼 – 자율 AI 리서치 에이전트 5분 만에 구축하기

deep-research-max은 Gemini 3.1 Pro 기반의 자율 AI 리서치 에이전트다. 이 튜토리얼은 환경 설정부터 첫 리서치 작업 실행, 차트가 포함된 시각화 보고서 생성, 프로덕션 적용 패턴까지 단계별로 안내한다.

사전 준비

필요한 것:

  1. Gemini API 키 (Google AI Studio에서 발급, 무료 티어 미지원)
  2. Python 3.8+
# SDK 설치
pip install google-genai

# API 키 설정
export GEMINI_API_KEY="your-api-key-here"

설정 확인:

from google import genai

client = genai.Client()
print("준비 완료.")

Task 1: 첫 번째 리서치 작업

Step 1: 스크립트 작성

# first_research.py
import time
from google import genai

client = genai.Client()

interaction = client.interactions.create(
    input="EU의 AI 규제 현황을 조사해줘.",
    agent="deep-research-preview-04-2026",  # 표준 에이전트 (더 빠름)
    background=True  # 필수 — Deep Research는 항상 비동기로 실행
)
print(f"리서치 시작. Interaction ID: {interaction.id}")

background=True는 필수 파라미터다. 생략하면 요청이 실패한다.

Step 2: 폴링 루프 구성

while True:
    interaction = client.interactions.get(interaction.id)
    if interaction.status == "completed":
        print("\n--- 리서치 완료 ---\n")
        print(interaction.outputs[-1].text)
        break
    elif interaction.status == "failed":
        print(f"리서치 실패: {interaction.error}")
        break
    print("리서치 중...", flush=True)
    time.sleep(10)

10초마다 상태를 확인하며, 완료되면 전체 인용 포함 보고서를 출력한다.

Step 3: 실행

python first_research.py

터미널에 “리서치 중…” 메시지가 여러 번 출력된 뒤, 5–15분 후 완성된 보고서가 나타난다.

Task 2: 네이티브 시각화 포함 보고서

Deep Research Max는 외부 라이브러리(Matplotlib, Plotly 등) 없이 인라인 차트를 HTML로 직접 생성할 수 있다.

Step 1: 시각화 요청 스크립트

# visual_research.py
import time
from google import genai

client = genai.Client()

prompt = """
2026년 취업 수요 기준 상위 10개 프로그래밍 언어를 조사해줘.
보고서에 포함할 내용:
- 언어별 구인 공고 수 막대 그래프
- 최근 3년간 성장 추세선
- 급여 범위 비교 표
generate all charts natively inline.
"""

interaction = client.interactions.create(
    input=prompt,
    agent="deep-research-max-preview-04-2026",  # Max 에이전트 사용
    background=True
)
print(f"시각화 리서치 시작. ID: {interaction.id}")

프롬프트에 "generate all charts natively inline" 문구를 포함해야 에이전트가 인라인 차트를 생성한다.

Step 2: 결과 HTML 파일로 저장

while True:
    interaction = client.interactions.get(interaction.id)

    if interaction.status == "completed":
        with open("visual_report.html", "w") as f:
            f.write(interaction.outputs[-1].text)
        print("visual_report.html 저장 완료")
        break
    elif interaction.status == "failed":
        print(f"실패: {interaction.error}")
        break

    time.sleep(10)

Step 3: 브라우저에서 확인

생성된 visual_report.html을 브라우저로 열면 차트가 보고서 본문에 인라인으로 삽입되어 있다. 추가 후처리 없이 즉시 공유 가능하다.

프로덕션 적용 패턴

패턴이유
잡 큐 아키텍처while 루프 대신 Cloud Scheduler·cron으로 서버 응답성 유지
interaction ID 영속화20분짜리 작업 중 연결 끊김에 대비해 DB에 interaction_id·last_event_id 저장
구체적 프롬프트 작성범용 프롬프트는 더 많은 검색·토큰을 소비 → 비용 증가
결과 캐싱유사 질문 반복 시 캐시 활용 (Max 작업당 $3–$5)
인용 검증중요한 비즈니스 결정 전에는 주요 주장을 원문 출처로 재확인

언제 Deep Research Max를 쓸까

Deep Research Max는 결과물 품질이 중요하고 처리 시간 여유가 있는 경우에 적합하다:

  • 경쟁사 분석, 시장 조사 같은 심층 리서치
  • 야간에 실행하는 배치 작업
  • 정식 보고서·실사(due diligence) 수준의 문서화

빠른 답변이 필요한 인터랙티브 대시보드나 챗봇에는 표준 Deep Research(deep-research-preview-04-2026)가 적합하다.

참고 자료



AI Sparkup 구독하기

최신 게시물 요약과 더 심층적인 정보를 이메일로 받아 보세요! (무료)