본문 바로가기
AI 활용 & 구조화/자동화 기록

[6편] 자동 뉴스요약 파이프라인 완성하기

by momncode 2025. 12. 16.

RSS → DeepSeek → Google Sheets 자동 연결 가이드 (Make.com)

RSS로 들어온 뉴스를 DeepSeek가 자동 요약하고, Google Sheets에 자동 저장되게 만드는 “완성형 파이프라인”을 만듭니다.
한 번 연결해두면, 뉴스는 알아서 쌓이고 다음 단계(글 템플릿/분류/선별)로 바로 넘어갈 수 있습니다.


자동화는 결국 “연결”인데, 연결은 늘 마지막에 제일 긴장됩니다.


✅ 이번 편에서 할 일 한 문장 요약

뉴스가 올라오면 → AI가 요약하고 → 내가 안 건드려도 시트에 저장된다.

이게 전부입니다.
어려워 보이지만 실제로는 RSS와 Sheets 사이에 HTTP 모듈 하나 끼워 넣는 작업입니다.


🧩 전체 구조(완성형)

RSS(새 글 감지)HTTP(DeepSeek 요약 요청)Google Sheets(한 줄 저장)

RSS 모듈은 새 항목을 가져오는 트리거 역할을 하고, 최대 반환 개수 설정으로 과부하를 줄일 수 있습니다. apps.make.com
HTTP 모듈은 외부 API를 호출할 때 쓰는 표준 모듈이며 JSON 바디 입력을 지원합니다. apps.make.com


🧾 0) 먼저 준비할 것(딱 3개)

  1. RSS 피드 URL(뉴스 사이트/키워드 RSS 등) apps.make.com
  2. DeepSeek API Key(DeepSeek Open Platform에서 발급) api-docs.deepseek.com
  3. Google Sheets(헤더가 고정된 표 1개)

🗂 0-1) Google Sheets 시트 구조(권장)

시트는 “기록 저장소”라서, 처음에 컬럼을 깔끔하게 잡아두면 이후(8~15편)가 편해집니다.

추천 헤더 예시

  • source (예: rss)
  • title
  • link
  • date
  • excerpt (RSS description)
  • summary (DeepSeek 결과)

컬럼명은 나중에 바꾸면 매핑이 흔들리니, 가능한 한 고정하는 것을 권장합니다.


1️⃣ 기존 시나리오 다시 열기(이미 만든 것 활용)

  1. Make 로그인
  2. 상단 메뉴 Scenarios 클릭
  3. 예전에 만든 RSS → Google Sheets 시나리오 열기

이 상태는 아직 “AI가 없는 상태”입니다.
즉, 뉴스 원문(제목/링크 등)을 시트로 옮기기만 하는 단계입니다.

RSS 앱의 트리거(Watch RSS feed items)는 새 항목을 감지해 번들로 넘겨줍니다. apps.make.com


2️⃣ RSS와 Google Sheets 사이에 “AI 요약 단계” 끼워 넣기

이제 딱 한 가지를 합니다.

  1. RSS 모듈 오른쪽 + 클릭
  2. 검색창에 HTTP 입력
  3. HTTP – Make a request 선택 apps.make.com

왜 HTTP냐면, DeepSeek API는 OpenAI 호환 형식의 API를 제공하고, 일반 HTTP 요청으로 호출할 수 있기 때문입니다. api-docs.deepseek.com+1


3️⃣ DeepSeek API 기본 설정(HTTP 모듈 4개만 정확히)

HTTP 모듈 설정에서 핵심은 아래 4개입니다.

(1) Method

  • POST

(2) URL

DeepSeek는 base_url이 있고, 채팅 완성(요약)은 POST /chat/completions입니다. api-docs.deepseek.com+1
따라서 URL은 보통 아래 형태 중 하나로 둡니다.

(3) Headers

DeepSeek 인증은 Bearer 방식입니다. api-docs.deepseek.com

  • Authorization: Bearer YOUR_API_KEY
  • Content-Type: application/json

(4) Body

  • Body content type: application/json apps.make.com
  • 입력 방식은 두 가지 중 택1:
    • Data structure(실수 적고 안정적)
    • JSON string(원문 그대로 붙여넣기)

4️⃣ Body 작성(“그냥 이 틀”로 쓰면 됩니다)

DeepSeek Chat Completions는 OpenAI 호환 형태로 model과 messages를 받습니다.

아래는 운영에 안정적인 “짧은 요약” 프롬프트 예시입니다.

✅ Body 예시(JSON string 방식)

{ "model": "deepseek-chat", "messages": [ { "role": "system", "content": "너는 캐나다(토론토/온타리오) 뉴스를 한국어로 간단히 요약하는 편집자다. 과장하지 말고 사실 중심으로 3~5문장으로 요약한다." }, { "role": "user", "content": "아래 뉴스 정보를 보고 한국어로 요약해줘.\n\n[제목]\n{{TITLE}}\n\n[요약/설명]\n{{EXCERPT}}\n\n[링크]\n{{LINK}}" } ] }

여기서 중요한 건 {{TITLE}} 같은 걸 직접 타이핑하지 않는 것입니다.


5️⃣ RSS 제목·설명을 AI에게 넘기는 방법(가장 많이 막히는 지점)

Make에서는 변수를 “직접 타이핑”이 아니라 **매핑(Mapping)**으로 넣습니다.
모듈 입력칸에서 클릭하면 선택 가능한 데이터(번들)가 뜨고, 그걸 넣는 방식입니다. 

올바른 방법(작업 순서)

  1. Body의 content 위치에 커서
  2. 오른쪽(또는 아래) 데이터 패널에서
    • RSS → Title
    • RSS → Description/Content
    • RSS → Link
    • RSS → Published date
      를 클릭해 삽입

이렇게 넣어야 Make가 “실제 뉴스 데이터”를 런타임에 꽂아줍니다.


6️⃣ DeepSeek 응답에서 “요약 결과” 꺼내기

흐름은 이렇게 됩니다.

RSS → HTTP(DeepSeek) → 응답 반환

Chat Completions 응답은 보통 choices 내부의 메시지에 결과가 들어갑니다(구조는 OpenAI 호환).
Make에서는 Run once 후, HTTP 모듈 출력에서 다음 경로를 찾아보면 됩니다.

  • body → choices → message → content

팁: HTTP 모듈에는 응답을 매핑하기 쉽게 구조화하는 옵션(“Parse response”)도 있으니, 처음엔 켜두면 편합니다. apps.make.com


7️⃣ Google Sheets에 summary 컬럼으로 저장하기(마지막 연결)

이제 Google Sheets 모듈로 가서 Add a Row(행 추가)를 유지합니다.
(행 추가 모듈은 시트에 새 행을 넣는 용도로 쓰입니다.) Make Community

컬럼 매핑(권장 매핑)

  • title → RSS Title
  • link → RSS Link
  • date → RSS Published date
  • excerpt → RSS Description
  • summary → HTTP 응답의 content

여기서도 입력칸에 직접 붙여넣기보다, 매핑으로 선택하는 것이 기본 동작입니다. help.make.com


8️⃣ Run once로 “진짜 자동화” 확인하기

  1. 상단 Run once 클릭
  2. 성공하면 모듈에 초록 체크가 순서대로 뜹니다
  3. Google Sheets에 새 행이 추가됩니다:
    • 제목 / 링크 / 날짜 / 요약

만약 한 번에 너무 많은 뉴스가 들어오면 RSS 트리거의 “Maximum number of returned items” 값을 낮추면 안정적입니다(타임아웃/누락 방지). apps.make.com


9️⃣ 이제 “자동화가 무섭지 않게” 쓰는 최소 운영 설정 3가지

1) 스케줄을 현실적으로 잡기

기본은 일정 간격으로 돌게 되어 있고, 매일 1회/정해진 주기 등으로 조정할 수 있습니다. help.make.com
처음엔 하루 1회(또는 12시간 1회) 정도가 운영이 편합니다.

2) RSS에서 과부하 방지

  • 반환 개수를 낮추고
  • 실행 주기를 조정하는 방식이 안정적입니다. apps.make.com+1

3) DeepSeek 비용은 “실행 횟수”에서 터진다

DeepSeek 에러 코드에서 잔액 부족(402), 레이트리밋(429) 등이 안내됩니다. api-docs.deepseek.com
그래서 “많이 돌리기”보다 “필요한 만큼만 돌리기”가 정답입니다.


✅ 6편 정리

여기까지 왔다면, 뉴스는 이제 이렇게 됩니다.

  • 내가 안 눌러도 들어오고
  • 내가 안 읽어도 요약되고
  • 내가 안 복사해도 저장됩니다

하지만 다음 문제가 생깁니다.

  • 갑자기 에러가 나면?
  • 비용이 생각보다 나오면?
  • 어느 단계에서 멈췄는지 모르겠으면?

그래서 다음 편이 있습니다.


🔜 다음 편 예고(7편)

자동화가 멈췄을 때: 에러 읽는 법, 비용 관리하는 법

  • Make에서 빨간 느낌표가 떴을 때
  • DeepSeek에서 401/402/422/429가 나올 때 api-docs.deepseek.com
  • “이거 계속 돌려도 돈 괜찮은가?”가 걱정될 때

자동화를 “안 무섭게” 쓰는 법을 다룹니다.