자동화된 뉴스 파이프라인
10개 언론사 기사를 주기적으로 수집하고, PostgreSQL에 저장된 기사 데이터를 ChromaDB 임베딩 캐시와 연결해 클러스터링 입력으로 사용했습니다.
5인 팀 프로젝트 · 뉴스 클러스터링 / 배포 담당
AI가 10개 언론사의 뉴스를 주기적으로 크롤링하고, 관련 기사 클러스터링과 검증을 거쳐 AI 리포트와 언론사별 비교 분석을 제공하는 뉴스 인텔리전스 플랫폼입니다.
담당 영역
클러스터링 / 배포
팀 규모
5명
운영 환경
AWS EC2
성과
최우수상
백신일보는 10개 주요 언론사의 뉴스를 5분 주기로 수집하고, HDBSCAN과 Korean SentenceTransformer 기반 임베딩으로 관련 기사를 자동 군집화하는 뉴스 인텔리전스 플랫폼입니다. 형태소 분석(Kiwi)과 LLM 검증을 거쳐 동일 이슈를 판별하고, Writer → Critic → Editor 에이전트 흐름으로 AI 리포트를 생성합니다.
서비스는 GraphRAG 기반 언론사별 논조 비교, 개인화 추천, 인용 검증, 독자/언론사 통계 대시보드, TTS를 포함합니다. 저는 이 중 크롤링된 기사들을 이슈 단위로 묶는 뉴스 클러스터링 파이프라인과, Docker Compose/Nginx/AWS EC2 기반 배포 운영을 맡았습니다.
10개 언론사 기사를 주기적으로 수집하고, PostgreSQL에 저장된 기사 데이터를 ChromaDB 임베딩 캐시와 연결해 클러스터링 입력으로 사용했습니다.
클러스터링된 이슈를 Writer, Critic, Editor 에이전트 흐름으로 처리해 리포트를 생성하고, Critic 단계에서 환각 여부를 검토하는 구조를 갖췄습니다.
기사에서 Entity-Relation-Entity 트리플을 추출해 지식 그래프를 만들고, 동일 사건을 언론사별로 어떻게 다르게 다루는지 분석할 수 있게 했습니다.
구독 키워드, 열람 이력, 카테고리 선호도 기반 추천과 TextRank/KR-WordRank 키워드 추출, 문장 임베딩 기반 인용 검증, 통계 대시보드를 포함합니다.
조선, KBS, MBC, SBS, 연합, 한겨레, 중앙, 경향, 한국, JTBC에서 크롤링된 기사와 오피니언 데이터를 군집화 단계에서 사용할 수 있도록 언론사, 제목, 본문, 작성 시각 등 기사 메타데이터 흐름에 맞춰 정리했습니다.
기사 제목과 본문 일부를 결합해 임베딩을 생성하고 ChromaDB에 캐시했습니다. 새 기사와 기존 이슈의 코사인 유사도를 비교해 같은 이슈로 흡수하고, 남은 기사들은 HDBSCAN으로 신규 이슈 후보를 만들었습니다.
서로 다른 주제가 한 클러스터에 섞이지 않도록 Kiwi 기반 공통 명사 검증을 추가하고, LLM 2차 검증으로 동일 사건 기사만 남기도록 보정했습니다. 오피니언 기사는 일반 뉴스 군집화 후 대표 벡터와의 유사도 기준으로 별도 배정했습니다.
FastAPI 백엔드, React 프론트엔드, PostgreSQL, Redis, ChromaDB를 Docker Compose로 묶고 AWS EC2에서 운영했습니다. Nginx로 도메인과 HTTPS, API 프록시를 구성해 실제 공개 서비스 형태로 배포했습니다.
AI 기능은 모델 호출만으로 완성되지 않는다는 점을 배웠습니다. 수집, 저장, 검색, 생성, 배포, 모니터링이 이어져야 사용자에게 서비스로 전달됩니다. 이 프로젝트를 통해 AI 백엔드 개발에서 인프라와 운영 감각이 얼마나 중요한지 체감했습니다.