📅 Sense Stock 개발 일지 (2025-06-06)
n8n 기반 뉴스 요약 자동화 시스템 Sense Stock 구축 중 진행한 작업들을 정리합니다.
오늘은 MVP구현, 추출 Data 항목 정리, 추후 변경사항 및 고민사항 등 주로 정리 하는 내용을 다뤘습니다.
* MVP(Minimum Viable Product)란, 핵심 가치를 시장에 빠르게 전달하기 위해 가장 중요 기능으로 구성된 제품의 기본 버전
🔧 사용 도구
도구 | 역할 |
🔷 n8n | 전체 워크플로우 자동화 도구 |
🔷 Firecrawl.dev | 사이트 內 기사 검색 + URL 수집 API (Firecrawl MCP Sever) |
🔷 ChatGPT | 키워드 정제 및 후속 분석 |
🔷 Slack | 사용자 요청 및 응답 |
Step 1. 1차 MVP: 핵심 흐름만 구현
뉴스 기반으로 주식 관련 정보를 요약해서 사용자에게 전달하는 것을 1차 목표로 잡았다.
슬랙에서 메시지를 보내면 → 관련 뉴스를 찾아서 → 요약 결과를 다시 슬랙으로 보내주는 구조.
이게 내가 구현한 MVP(Minimum Viable Product) 버전이다.
처음 기획과 살짝 달라진 점이 있다면,
당초엔 정책 문서 기반 요약 시스템을 생각했지만, 지금은 우선 Yahoo Finance 기사 기반 요약으로 구성돼 있다.
기획 배경 및 동기
- 최근 원전 관련 종목을 손절한 후, 정책 이슈로 급등하는 사례를 겪음
- 이처럼 뉴스/정책은 주가의 핵심 촉매제가 될 수 있으나
초보자는 이를 실시간으로 감지하거나 해석하기 어렵고, 대응 타이밍을 놓침 - 그래서 주식 관련 자동화 플랫폼을 만들어보고자 한다.
💬 “전문가는 아니지만, 최소한 정보를 놓치지는 않게 해주는 시스템이 있으면 좋겠다.”
https://cord-ai.tistory.com/214
Sense Stock - 기획 - Ver.1
1. 기획 배경 및 동기최근 원전 관련 종목을 손절한 후, 정책 이슈로 급등하는 사례를 겪음이처럼 뉴스/정책은 주가의 핵심 촉매제가 될 수 있으나초보자는 이를 실시간으로 감지하거나 해석하
cord-ai.tistory.com
Step 2. 전체 워크플로우 한눈에 보기
아래는 현재 구성된 워크플로우다. n8n과 Slack, Firecrawl, OpenAI API를 활용했다.
각 단계에서 추출되는 정보는 다음과 같다
- Slack에서 메시지 수신
- ID, Nickname, 채널, 요청 메시지
- Mesaage 요청 확인후 Slack Message 응답
- AI Agent가 메시지 해석 → 주요 키워드 추출
- best_keyword, summary, keywords, issue, policyIssue
- Firecrawl을 통해 뉴스 기사 검색 (Yahoo Finance)
- 기사 URL, Title, Summary
- 기사 본문 파싱 및 추가 정보 추출
- Date, Author, 본문 요약
- 요약 데이터 병합 후, 다시 AI Agent로 전달
- Basic / Intermediate / Expert 세 가지 레벨로 요약
레벨 | 설명 |
Basic | 핵심 정보 위주: headline, Trigger, Issuetype, Sentiment, Score, Summary, Sentiment_reason |
Intermediate | 전략 및 수혜 가능 종목 분석 예정 |
Expert | (아직 기획 단계) |
Step 3. 고민의 시작: 속도, 비용, 구조
현재 구조로는 요청 사항 하나 처리하는데 약 30초 이상 걸린다.
만약 사용자 수가 늘어난다면? → 속도도 느려지고, 비용도 급증한다.
그래서 다시 처음 기획으로 돌아왔다.
실제 정책 데이터 기반 자동화로 전환할 수 없을까?
정책 기반 시스템이 필요한 이유
- 뉴스는 2차 정보다. 반면, 정책 사이트는 1차 출처다.
- 누군가는 발표 전 법안부터 추적하고 있었을지도 모른다.
그래서 "RAG 기반 정책 요약 시스템"으로 구조를 바꿔보기로 했다.
다음 스텝: 정책 데이터 기반 구조 구상
기사를 크롤링하는 대신, 아래와 같은 정책/법안 출처들을 활용할 계획이다:
주요 정책 출처 Top 5
출처 | 요약 | 자동화 용이성 |
Congress.gov | 미국 의회 입법자료 | HTML 구조화 → 파싱 쉬움 |
Federal Register | 연방 정부 공시/규제 정보 | ✅ API 제공 |
White House Briefing Room | 대통령 연설문, 정책 기조 | 간결한 텍스트 |
DOE, SEC 등 부처 웹사이트 | 각종 보조금 정책, 인프라 계획 등 | 구조화된 PDF/HTML |
GovInfo.gov | 법령, 예산, 회의록 | PDF 중심, 검색 지원 |
🧠 정책 벡터 저장용 필드 설계 예시
필드명 | 설명 |
title | 정책 제목 |
source | 출처 |
category | 예: 에너지, 세금감면 |
summary | LLM 기반 요약 |
published_at | 날짜 |
url | 원문 링크 |
embedding | 텍스트 벡터 |
또 하나의 실험: NotebookLM으로 정리 자동화?
한 가지 고민은 정책 문서가 주기적으로 바뀐다는 점이다.
그래서 Google의 NotebookLM을 활용해보는 것도 생각 중이다.
- 매주 주요 정책 PDF/링크 수동 정리
- NotebookLM에 업로드
- 사용자와 공유 가능한 링크로 제공 (AI가 요약, FAQ 제공)
이 방식은 완전 자동화는 아니지만, 컨텍스트 관리와 공유 측면에서 꽤 실용적이다.
→ 내 실험 링크: open-notebook
향후 과제
- 어떤 데이터를 DB에 저장할지 정리 필요
- 사용자가 메시지 보낼 때 URL이나 PDF 첨부 기능이 필요함
- 언제 이 서비스를 사용하게될까? 뉴스나 주가를 보고 궁금증이 생길것
- Slack Block Kit(= Message Action) 또는 n8n Form Node 고려
- 크롤링이 아닌, 신뢰 가능한 정책 데이터셋을 기준으로 구성, How?
'n8n, Automation Tool > n8n Project' 카테고리의 다른 글
Sense Stock, D+7 (0) | 2025.06.18 |
---|---|
Sense Stock, D+6 - 구조화된 질문이 필요한 이유 (4) | 2025.06.12 |
Sense Stock, D+4 (4) | 2025.06.04 |
Sense Stock, D+3 (1) | 2025.06.03 |
Sense Stock, D+2 (2) | 2025.06.02 |
댓글