Extract Text From Images & PDFs Using AI (n8n tutorial)
원본 영상: Extract Text From Images & PDFs Using AI (n8n tutorial)
한 줄 요약
섹션 제목: “한 줄 요약”Telegram → n8n AI 에이전트 → PDF/이미지 분기 처리 → OpenAI 구조화 → Google Sheets 자동 적재.
핵심 내용
섹션 제목: “핵심 내용”- 전체 구조: 메인 AI 에이전트 워크플로 1개 + PDF 처리 서브플로 1개 + 이미지 처리 서브플로 1개, 총 3개 워크플로로 구성.
- 트리거: Telegram “on message” 트리거로 파일(PDF 또는 이미지) 수신. WhatsApp·Twilio·Facebook Messenger도 대안으로 언급.
- AI 에이전트 라우팅: 시스템 프롬프트에 두 가지 도구(PDF 처리 툴, 이미지 처리 툴)를 정의해, 에이전트가 메시지 내용에 따라 적절한 서브플로를 호출.
- PDF 처리 흐름: Telegram에서 파일 다운로드 → n8n “Extract from File” 노드로 PDF→텍스트 변환 → OpenAI로 구조화 JSON 생성.
- 이미지 처리 흐름: Telegram에서 파일 다운로드 → “Edit Image(Composite)” 노드로 MIME 타입 변환(octet-stream → JPEG) → OpenAI “Analyze Image”로 텍스트 추출 → OpenAI로 구조화 JSON 생성.
- Google Sheets 적재: “Split Out” 노드로 line item 배열을 낱개로 분리 후, Append 액션으로 행(row)별 삽입.
전술·요소
섹션 제목: “전술·요소”| 단계 | 노드/방법 | 비고 |
|---|---|---|
| 트리거 | Telegram “On Message” | 파일 첨부 시 file 타입으로 전송 권장 (photo 타입과 데이터 구조 다름) |
| 데이터 핀 | Pin Data 기능 | 매번 Telegram 재전송 없이 테스트 속도 향상 |
| AI 에이전트 채팅 입력 | caption 필드 연결 | 기본 Chat Trigger 대신 Telegram caption을 직접 매핑 |
| 메모리 | Window Buffer Memory | chat ID를 세션 키로 사용해 스레드 구분 |
| PDF→텍스트 | Extract from File 노드 | 별도 OCR 라이브러리 불필요 |
| 이미지 MIME 수정 | Edit Image (Composite) 노드 | Telegram octet-stream이 OpenAI와 호환 안 되는 문제 우회 |
| 구조화 | OpenAI gpt-4o-mini, 3-message 방식 | system: 역할 정의 / user: 원본 텍스트 / assistant: 원하는 JSON 포맷 예시 |
| 복수 line item | Split Out 노드 | line_items 배열을 행 단위로 분리 |
| n8n 광고 제거 | Append n8n Attribution → OFF | 응답 메시지 하단 자동 삽입 문구 제거 |
수치·사례
섹션 제목: “수치·사례”- 실측(영상 내 라이브 데모):
- 이미지 영수증 4개 line item($19.99 × 2, $24.99, $24) → Google Sheets 4행 정확 적재 확인.
- PDF 인보이스 → 인보이스 번호·날짜·due date·billing info·line item 추출 성공.
- OpenAI API 최소 충전금액: $5 (구독 별도).
도구·워크플로
섹션 제목: “도구·워크플로”사용 도구
- n8n (cloud 버전)
- Telegram Bot API (BotFather로 봇 생성)
- OpenAI API (gpt-4o-mini, gpt-4o)
- Google Sheets
프롬프트 패턴
- 시스템 메시지:
"You are a helpful assistant named X. Your task is to handle intelligent document processing tools. 1) Call the document processing tool for PDF OCR. 2) Call the image processing tool for image OCR. When user calls this tool, start immediately. No need to verify." - 구조화 user 메시지:
"Here is the document you need to pull data from: [텍스트 블롭]" - assistant 메시지(출력 포맷 정의): ChatGPT로 생성한 표준 인보이스 JSON 샘플을 그대로 붙여넣기
자동화 흐름
Telegram (파일 수신) → AI Agent (PDF/이미지 분기 판단) ├→ [PDF 서브플로] Telegram Get File → Extract from File → OpenAI (구조화) → Split Out → Google Sheets Append └→ [이미지 서브플로] Telegram Get File → Edit Image → OpenAI Analyze Image → OpenAI (구조화) → Split Out → Google Sheets Append → Telegram Send Message (결과 회신)