AI로 업무 자동화하기: n8n + AI 실전 워크플로우
n8n과 AI를 결합한 업무 자동화 사례. 이메일 분류, 데이터 정리, 리포트 생성까지.
반복 작업이 싫어서 자동화를 시작하는 건데, 자동화 구축 자체가 또 다른 반복 작업이 되는 아이러니. Zapier나 Make 같은 노코드 자동화 도구가 이걸 어느 정도 해결해줬지만, AI가 결합되면서 자동화의 범위가 확 넓어졌다.
단순 트리거 → 액션 수준이 아니라, "이메일 내용을 읽고 분류해서 적절한 담당자에게 전달", "비정형 데이터를 정리해서 스프레드시트에 채우기" 같은 판단이 필요한 작업까지 가능해진 것이다.
그 중심에 n8n이 있다.
n8n이 뭔가
오픈소스 워크플로우 자동화 플랫폼이다. Zapier랑 비슷한데 핵심 차이점이 있다.
- 셀프호스팅 가능. 자기 서버에 설치해서 돌릴 수 있다. 데이터가 외부로 나가지 않는다.
- 코드 노드 지원. 노코드로 안 되는 건 JavaScript/Python 코드 노드로 해결한다.
- 가격. 셀프호스팅이면 무료다. 클라우드 버전도 있는데 Zapier보다 저렴하다.
- AI 네이티브 통합. AI 관련 노드가 잘 갖춰져 있다. OpenAI, Anthropic, Ollama 등 주요 AI 서비스와 바로 연결된다.
노드(작업 단위)를 드래그 앤 드롭으로 연결해서 워크플로우를 만든다. 비개발자도 쓸 수 있지만, 개발자가 쓰면 더 강력하다. 코드를 넣을 수 있으니까.
Zapier, Make와 뭐가 다른가
셋 다 비슷한 일을 하지만 성격이 꽤 다르다.
Zapier는 가장 쉽다. 연동 앱이 5000개 이상이라 웬만한 서비스는 클릭 몇 번으로 연결된다. 대신 가격이 제일 비싸고, 복잡한 로직을 구현하기 어렵다. AI 기능은 후발주자라 아직 제한적.
**Make(구 Integromat)**는 Zapier보다 유연하고 저렴하다. 시각적 워크플로우 빌더가 직관적이고, 분기 처리나 에러 핸들링이 괜찮다. 하지만 셀프호스팅은 안 된다.
n8n은 유연성과 제어력이 가장 높다. 셀프호스팅, 코드 노드, AI 통합이 강점. 대신 초기 세팅이 좀 필요하고, Zapier만큼 연동 앱이 많지는 않다(그래도 400개 이상).
| Zapier | Make | n8n | |
|---|---|---|---|
| 난이도 | 쉬움 | 중간 | 중간~어려움 |
| 가격 | 비쌈 | 중간 | 셀프호스팅 무료 |
| AI 통합 | 기본 | 중간 | 강함 |
| 셀프호스팅 | 불가 | 불가 | 가능 |
| 코드 실행 | 제한적 | 제한적 | 자유로움 |
| 연동 앱 | 5000+ | 1500+ | 400+ |
규모가 작고 빨리 만들고 싶으면 Zapier, 중간 수준이면 Make, AI 자동화에 진심이거나 데이터 주권이 중요하면 n8n이다.
실전 워크플로우 1: 이메일 자동 분류
가장 흔한 사례. 고객 문의 이메일이 하루에 수십 통씩 들어오는데, 수동으로 분류해서 담당자에게 전달하는 건 시간 낭비다.
워크플로우 구조:
이메일 수신 (Gmail 트리거)
→ AI로 이메일 내용 분석 (OpenAI 노드)
→ 카테고리 분류 (환불/배송/기술문의/기타)
→ 긴급도 판단 (상/중/하)
→ Slack으로 담당 채널에 전달
→ 스프레드시트에 로그 기록
AI 노드의 프롬프트는 이런 식이다:
다음 이메일을 분석해서 JSON으로 반환하세요.
카테고리: refund, shipping, technical, other 중 하나
긴급도: high, medium, low 중 하나
요약: 한 문장 요약
이메일 내용:
{{$json.body}}
JSON 출력을 다음 노드에서 파싱해서 분기 처리한다. 긴급도가 high면 즉시 알림, low면 일일 요약에 포함. 이런 판단을 AI가 하니까 단순 키워드 매칭보다 정확도가 훨씬 높다.
실전 워크플로우 2: 비정형 데이터 정리
웹에서 수집한 데이터, 고객이 자유 형식으로 작성한 폼 데이터, PDF에서 추출한 텍스트 등 형식이 제각각인 데이터를 정리하는 작업.
예를 들어 여러 공급업체에서 보내온 견적서를 처리한다고 치자. 어떤 업체는 이메일 본문에 쓰고, 어떤 업체는 PDF 첨부, 어떤 업체는 엑셀 파일. 포맷이 다 다르다.
워크플로우 구조:
이메일 수신 + 첨부파일 다운로드
→ 파일 타입 분기 (PDF/Excel/텍스트)
→ 각 타입별 텍스트 추출
→ AI로 견적 정보 파싱 (품목, 수량, 단가, 총액)
→ Google Sheets에 통일된 포맷으로 기록
→ 기존 단가와 비교해서 이상치 감지
핵심은 AI가 비정형 텍스트에서 정형 데이터를 뽑아내는 부분이다. "품목명: A4 용지 80g, 수량: 50박스, 단가: 25,000원"이라고 깔끔하게 쓰여 있으면 정규식으로도 되지만, "A4 80그램 50박스 보내주세요. 지난번이랑 같은 단가로요"라고 쓰여 있으면 AI가 아니면 파싱이 안 된다.
실전 워크플로우 3: 주간 리포트 자동 생성
여러 소스에서 데이터를 모아서 리포트를 만드는 건 대부분의 팀에서 누군가가 매주 손으로 하고 있는 작업이다.
워크플로우 구조:
매주 월요일 오전 9시 (크론 트리거)
→ Google Analytics에서 주간 트래픽 데이터 가져오기
→ Slack에서 주요 논의 요약
→ Jira에서 완료/진행 중 태스크 목록
→ AI로 종합 리포트 작성
→ Notion 페이지에 저장
→ Slack 채널에 링크와 요약 전송
AI 노드에서 리포트를 작성할 때 프롬프트로 톤과 형식을 잡아준다:
아래 데이터를 기반으로 주간 리포트를 작성하세요.
형식: 마크다운
톤: 간결하고 사실 중심
구조: 핵심 지표 → 주요 성과 → 이슈/리스크 → 다음 주 포커스
데이터:
트래픽: {{$json.analytics}}
완료 태스크: {{$json.jira_done}}
진행 중: {{$json.jira_in_progress}}
주요 논의: {{$json.slack_summary}}
사람이 매주 2시간씩 쓰던 작업이 자동으로 돌아간다. 물론 AI가 뽑은 리포트를 그대로 보내기보다는 담당자가 한번 검토하고 수정하는 게 낫다. 초안을 AI가 만들고 사람이 다듬는 구조.
n8n 시작하기
셀프호스팅이 가장 경제적이다. Docker가 설치되어 있다면 한 줄이면 된다.
docker run -it --rm --name n8n -p 5678:5678 n8nio/n8n
localhost:5678에 접속하면 워크플로우 에디터가 뜬다.
AI 노드를 쓰려면 API 키 설정이 필요하다. Settings → Credentials에서 OpenAI나 Anthropic API 키를 등록하면 된다. 로컬 LLM을 쓰고 싶으면 Ollama 노드를 쓰면 되는데, 같은 서버나 네트워크에서 Ollama가 돌고 있어야 한다.
처음부터 복잡한 워크플로우를 만들려고 하면 막히기 쉽다. 이메일 하나 받아서 AI로 요약하고 Slack에 보내는 것부터 시작하는 게 좋다. 노드 3개짜리 워크플로우. 이게 동작하면 거기서 하나씩 확장해 나간다.
주의할 점
AI 응답의 일관성. 같은 프롬프트에 같은 입력을 줘도 AI 응답이 매번 조금씩 다를 수 있다. 자동화에서 이건 문제가 된다. 후속 노드가 특정 포맷을 기대하는데 AI가 다른 포맷으로 응답하면 워크플로우가 깨진다. temperature를 0에 가깝게 설정하고, 출력 포맷을 JSON으로 강제하는 게 좋다.
에러 핸들링. API 호출이 실패하거나 AI가 이상한 응답을 내놓을 수 있다. 에러 핸들링 노드를 반드시 넣어야 한다. n8n에서는 Error Trigger 노드로 실패한 워크플로우를 잡아서 알림을 보낼 수 있다.
비용 관리. AI API 호출이 워크플로우에 포함되면 비용이 누적된다. 특히 대량 데이터를 처리하는 워크플로우는 한번 돌릴 때 수천 번의 API 호출이 발생할 수도 있다. 테스트 단계에서 호출 횟수와 비용을 꼭 확인하자.
개인정보. 자동화에 고객 데이터가 포함되면 개인정보 처리 이슈가 생긴다. 외부 AI API로 고객 이메일 내용을 보내는 게 괜찮은지 법적으로 확인해야 한다. 이게 n8n 셀프호스팅 + 로컬 LLM 조합이 매력적인 이유 중 하나다. 데이터가 외부로 나가지 않으니까.
자동화는 처음 구축할 때 시간이 들지만, 한번 돌아가기 시작하면 매일 시간을 벌어준다. AI가 빠진 자동화는 단순 반복만 처리할 수 있었는데, AI가 들어오면서 판단이 필요한 업무까지 커버할 수 있게 됐다. n8n은 그 조합을 가장 유연하게 만들어볼 수 있는 도구다.