콘텐츠로 이동

Build Your First No-Code n8n AI Agent (Beginner's Guide)

원본 영상: Build Your First No-Code n8n AI Agent (Beginner’s Guide)

n8n에서 도구(tool)를 붙인 AI 에이전트 두 개를 순서대로 만들며, 에이전트가 어떤 도구를 쓸지 스스로 고르는 원리를 실습한다.

에이전트 1 — 계산기 + Wikipedia 챗봇 (5분 완성)

섹션 제목: “에이전트 1 — 계산기 + Wikipedia 챗봇 (5분 완성)”
  1. 트리거: On Chat Message (n8n 내부 채팅)
  2. AI Agent 노드 추가 → 에이전트 유형: Tools Agent 선택
  3. Chat Model: OpenAI GPT-4o mini (API 키 + 최소 $5 크레딧 필요)
  4. Memory: Window Buffer Memory (기본값, context window 5)
  5. Tools: Calculator, Wikipedia 각각 플러그인으로 추가 (설정 불필요, 즉시 작동)
  6. 에이전트 동작 원리: 입력 → 메모리에서 이전 컨텍스트 참조 → 모델이 어떤 도구를 쓸지 결정 → 도구 실행 → 결과를 다시 모델로 → 최종 응답

에이전트 2 — Telegram × Google Calendar × Google Sheets 봇

섹션 제목: “에이전트 2 — Telegram × Google Calendar × Google Sheets 봇”
  1. 트리거: Telegram → On Message (BotFather로 봇 생성 후 API 토큰 발급)
  2. IF 노드: json.message.voice 오브젝트 존재 여부로 음성/텍스트 분기
    • 음성 경로: Telegram Get File → OpenAI Transcribe a Recording
    • 텍스트 경로: 그대로 통과
  3. Edit Fields(Set) 노드: 두 경로의 출력 키를 모두 text로 통일 → Merge 노드로 합침
  4. AI Agent 노드: 소스를 “Define below”로 설정, merge된 text 필드를 프롬프트로 주입
    • Memory 세션 키: Telegram chat.id로 지정
  5. Tools:
    • Google Calendar → Get Many (일정 중복 확인용)
    • Google Calendar → Create Event (start/end/summary 모두 $fromAI() 표현식)
    • Google Calendar → Update Event (event ID + start/end를 $fromAI()로)
    • Google Sheets → Append or Update Row (ID 컬럼으로 중복 매칭)
  6. 출력: Telegram → Send Message (n8n attribution 제거: Append n8n attribution = OFF)
항목설정값 / 기법
날짜 컨텍스트 주입System Message에 Today's date is {{ $now }} 삽입 — 미지정 시 과거 날짜로 이벤트 생성되는 버그 방지
$fromAI() 표현식$fromAI("start_time", "this is the start time of the event") — 키와 설명 두 파라미터로 AI가 동적으로 값 채움
필드 키 통일음성/텍스트 두 경로 모두 text 키로 Set → Merge, 이후 노드에서 단일 키 참조
Google Sheets 중복 처리Append or Update + “Column to Match On: ID” → 신규면 추가, 기존이면 갱신
Context window5 (기본값 권장; 필요 시 10으로 조정 가능)
  • OpenAI API 최소 크레딧: $5 (n8n 연동 테스트 기준, 영상 내 직접 언급)
  • GPT-4o mini 사용 — “첫 번째 에이전트 수준의 단순 질문에는 충분히 저렴하다”고 언급
  • Telegram 봇 응답 실측: 음성 메시지 전송 → 전사 → Calendar 생성 → Sheets 로깅 → Telegram 응답 전 과정이 단일 워크플로로 완료됨을 시연

사용 도구

  • n8n (자체 호스팅 또는 클라우드, 14일 무료 체험)
  • OpenAI API (GPT-4o mini, Whisper transcription)
  • Telegram Bot API (BotFather로 토큰 발급)
  • Google Calendar API
  • Google Sheets API

$fromAI() 패턴

{{ $fromAI("key_name", "description of what this field is") }}

노드 내 동적 필드 모두 이 패턴 하나로 처리 — 별도 매핑 노드 불필요.

워크플로 흐름 (에이전트 2)

Telegram trigger
→ IF (voice exists?)
→ [Yes] Get File → Transcribe → Set {text}
→ [No] Set {text}
→ Merge
→ AI Agent (Tools: Calendar Get/Create/Update, Sheets Append/Update)
→ Telegram Send Message