시험 스트레스를 AI 프로젝트로 전환하기: 나의 AI 에이전트 집중 경험
Source: Dev.to
학생이라면 누구나 잘 아는 순간이 하나 있다면, 바로 시험 전날 밤이다—모든 것이 한 번에 무너지는 듯한 느낌이 든다. 나는 이런 순간을 인정하고 싶지 않을 정도로 여러 번 겪었다: 메모가 흩어져 있는 책상에 앉아, 공황과 혼란 사이를 오가며, 조용히 내 생각을 정리해줄 누군가를 바랐다.
다른 챗봇이 아니다. 대부분의 LLM은 나에게 그 기준에 도달하지 못했다. 답변은 했지만 긴박함을 느끼게 하지 못했다. 때로는 장황했고, 때로는 환각을 일으켰으며, 때로는 감정적 톤을 전혀 놓쳤다.
그래서 나는 Google & Kaggle AI Agents Intensive에 참여했을 때, 최소한 하나의 새로운 아이디어를 기대했지만… 그보다 훨씬 많은 것을 얻었다.
인텐시브 이전의 도전 과제
- 보일러플레이트 피로 – 의미 있는 무언가를 만들기보다 조각들을 맞추는 데 내 시간의 절반이 소비되었다. 여기저기 도구, 라우트, 설정이 여기저기 흩어져 있었고, 흥미가 금방 사라졌다.
- 메모리와 세션 혼란 – 에이전트가 제 역할을 기억하고 있는지 전혀 신뢰할 수 없었다. 때로는 컨텍스트를 유지했지만, 때로는 완전히 잊어버렸다. 나는 왜 그런지 이해하고 싶었을 뿐, 외우는 규칙만으로는 충분하지 않았다.
- 배포에 대한 두려움 – 작은 실수 하나—환경 불일치, 누락된 키—가 모든 것을 폭발시켰다. 마치 준비 없이 시험장에 들어가는 느낌이었다. 끔찍했다.
- 학생으로서의 비용 우려 – 많은 프레임워크가 신용카드와 연결된 API 키에 의존한다. 수입이 없고, 가족 상황도 복잡한 나에게는 다음이 끊임없는 고민이었다:
- 무작위 청구
- 사용량 제한
- 자동 갱신
이러한 걱정 때문에 실험 자체가 스트레스로 다가왔다.
ADK 경험
1~2일차: 부담 경감
강의 일정에 “ADK”가 보였을 때, 첫 반응은 “아, 또 하나의 어려움이겠지.” 였다. 하지만 처음 이틀은 전혀 다른 인상을 주었다.
- 반복적인 연결 작업이 사라졌다.
- 라우팅과 메모리가 깔끔하게 처리되었다.
- 구조가 바로 이해되었다.
이제 논리 구현에 집중할 수 있었고, 배관 작업에 신경 쓸 필요가 없었다. 마치 내 사고 방식에 맞게 도구가 이미 만들어진 듯했다.
3일차: 가장 힘든 부분
예상과는 전혀 달랐다:
- 에이전트가 중간에 컨텍스트를 잊어버렸다.
- 도구 호출이 모든 것을 바꾸어 놓았다.
- 세션 상태와 메모리 상태가 구분되지 않아 혼동했다.
랩을 여러 번 반복하고, 토론을 뒤져가며, run_debug를 수없이 사용했다. 그 순간 모든 것이 맞물렸다.
- 메모리와 세션이 드디어 이해되었다.
- 라우터가 직관적으로 느껴졌다.
- 도구가 일관되게 동작했다.
google_search가 예측 불가능하게 행동하지 않았다.ParallelAgent가 더 이상 두렵지 않았다.- 디버깅이 실제 추론 과정으로 변했다.
처음으로 하나의 에이전트를 억지로 끼워 맞추는 것이 아니라, 제대로 된 멀티‑에이전트 시스템을 구축할 수 있다는 자신감을 얻었다.
막판 학습 코파일럿
아키텍처 개요
이 프로젝트는 학생으로서 겪은 경험을 직접 바탕으로 성장했다. 단순한 답변 봇을 넘어, 혼란을 감지하고, 긴박함을 인식하며, 스트레스를 완화하고, 개념을 명확히 설명하고, 현실적인 학습 계획을 세우며, 도구를 지능적으로 활용해 모든 것을 하나의 일관된 응답으로 결합한다.
| Agent | 역할 |
|---|---|
| RouterAgent | 시스템의 어느 부분이 담당할지 결정한다: • 개념 질문 → ExplanationAgent • 일정 계획 → StudyPlannerAgent • 감정적·개념적 어려움 → StressAgent + WeakTopicAgent • 의도가 불분명할 때의 fallback |
| StudyPlannerAgent | 남은 시간을 확인하고 현실적인 스케줄을 만든다—특히 막판 준비 시 필수적이다. |
| StressAgent + WeakTopicAgent | 감정적 스트레스, 오해, 약점 영역을 동시에 탐지한다. |
| ExplanationAgent | 구조화된 설명과 근거 있는 사실을 제공하고, 필요할 때만 google_search를 호출한다. |
| OrchestratorAgent | 전체 시스템의 심장 역할을 하며, 전문 에이전트들의 응답을 하나로 엮는다. |
영상 제작
시스템 뒤에 숨은 이야기를 학생들에게 전달하고 싶었다. 직접 목소리를 녹음해 기술적인 디테일과 인간적인 면모를 동시에 보여주었다.
첫 번째 깔끔한 실행
- 라우터가 올바른 경로를 선택했다.
- 플래너가 현실적인 학습 계획을 생성했다.
- 스트레스 에이전트가 차분하게 대응했다.
- 설명 에이전트가 정확한 정보를 가져왔다.
- 오케스트레이터가 모든 것을 하나의 일관된 답변으로 묶었다.
처음으로 조각을 억지로 붙인 것이 아니라, 전문 분야별 팀이 협업하는 느낌이었다.
주요 인사이트
- ADK는 내가 겪던 마찰을 크게 줄여준다.
- 메모리와 세션 설계는 핵심이다.
- 멀티‑에이전트 구조는 단일 모델이 해결하지 못하는 문제를 해결한다.
run_debug는 어두운 터널 속 손전등과 같다.- 창의적인 스토리텔링이 기술 프로젝트를 한층 끌어올린다.
- 실제 문제는 최고의 프로젝트 아이디어가 된다.
개인적 성장
- AI 엔지니어로서 자신감이 생겼다.
- 설계 마인드셋이 명확해졌다.
- 창의성과 기술 작업을 결합하는 법을 배웠다.
- 내가 나아가고 싶은 AI 방향과 더 잘 맞는다 느낀다.
막판 학습 코파일럿은 단순 프로젝트가 아니다—가장 필요할 때 존재했으면 하는 진정한 도구이다.
프로젝트 코드
초기 라우팅 테스트부터 최종 멀티‑에이전트 흐름까지 전체 코드는 내 Kaggle 노트북에 문서화되어 있다:
👀 Look Inside the Machine Room
(#를 실제 노트북 URL로 교체하세요.)
Google과 Kaggle에게 큰 감사를 전한다. 이 코스는 이론, 실습, 직관, 창의성을 훌륭히 결합한다. 이 경험을 통해 에이전트를 만드는 법을 배운 것뿐 아니라— 에이전트처럼 생각하는 법을 배웠다.
Tags: aiagents google kaggle ai reflection learning multiagent adk