PRD · Product Requirements Document

CHATRO
AI 뉴스 자동화 + MagicLight
영상 생성 통합 시스템

AI가 뉴스를 수집·재작성하고, MagicLight 엔진으로 영상을 자동 생성해
썸페이지에 커머스 CTA와 함께 자동 배포하는 완전 자동화 콘텐츠 파이프라인

버전 v1.1 (2026-03-16)
작성 CHATRO 기획팀 × Genspark AI
대상 GENS 개발팀 (백엔드/프론트엔드)
상태 검토 중 · MVP Phase 1
AI 뉴스 수집 LLM 재작성 MagicLight API 썸페이지 자동화 커머스 CTA Next.js + NestJS PostgreSQL Redis
1

프로젝트 개요

CHATRO AI 뉴스 자동화 + 영상 생성 파이프라인의 목적, 범위, 핵심 가치

🎯 핵심 한 줄 정의 CHATRO는 외부 뉴스를 AI가 자동 수집·재작성·영상화해 썸페이지에 즉시 배포하고, 관련 상품 CTA로 구매 전환까지 완성하는 "콘텐츠→커머스 완전 자동화 파이프라인"이다.
📌 1.1 배경 & 문제 정의

🔴 현재 문제점

  • 썸페이지 콘텐츠 수동 업데이트에 1페이지당 2~4시간 소요
  • 신선한 뉴스/기사 없이 SEO 점수 하락, 재방문율 저조
  • AI 생성 기사를 영상으로 직접 변환하는 자동화 없음
  • 기사-상품 연결이 수동이라 전환 기회 손실
  • 하루 30개 페이지 목표 대비 콘텐츠 병목 발생

🟢 해결 방향

  • RSS·공공데이터 메타 자동 수집 → 중복 제거 → AI 재작성
  • LLM 기반 원본형 기사 4가지 템플릿 자동 생성
  • MagicLight API로 기사→영상 자동 변환 (쇼츠~50분)
  • 기사 주제에 맞는 상품 자동 매칭 → CTA 삽입
  • 7일 주기 자동 재생성으로 콘텐츠 항상 최신 유지
📌 1.2 핵심 목표 (OKR)
30+
일일 썸페이지
생산 목표
15분
페이지당
제작 시간
98%+
AI 기사 생성
성공률
1,000+
월 AI 기사
생성 목표
📌 1.3 MVP 범위 (Phase 1)
모듈기능우선순위Phase
뉴스 수집RSS·공공데이터 메타 수집, 중복 제거, 업종 분류P0 핵심MVP
AI 재작성LLM 기반 4가지 템플릿 원본형 기사 생성P0 핵심MVP
MagicLight 영상기사→스크립트→영상 자동 변환 (쇼츠 우선)P0 핵심MVP
썸페이지 게시기사+영상 자동 업데이트, 출처 표시P0 핵심MVP
커머스 CTA기사-상품 자동 매칭 & CTA 버튼 삽입P1MVP
승인 워크플로관리자 검수 → 발행 승인 흐름P1MVP
SNS 자동발행인스타·유튜브 쇼츠 자동 업로드P2Phase 2
고급 분석영상 시청 시간·전환 퍼널 분석P2Phase 2
2

시스템 아키텍처

전체 기술 아키텍처와 서비스 컴포넌트 구성

🏗️ 2.1 전체 아키텍처 다이어그램
🌐 RSS 피드
🏛️ 공공 보도자료
🏢 기업 뉴스룸
📊 BIGKinds
NestJS API
뉴스 수집 서비스
Redis Queue
BullMQ 작업 큐
LLM Worker
GPT-4o / Claude
🪄 MagicLight API
영상 생성 엔진
PostgreSQL
뉴스·기사·영상 저장
←→
Redis Cache
실시간 상태 캐싱
←→
S3 Storage
영상·이미지 저장
Next.js 관리자
admin.chatro.kr
썸페이지 렌더러
*.chatro.kr / 커스텀 도메인
🔄 2.2 전체 자동화 파이프라인
🌐
① 수집
RSS/공공데이터
메타데이터 only
🔬
② 정제
중복 제거
업종 분류
🤖
③ AI 재작성
LLM 원본형
4가지 템플릿
🎬
④ 영상 생성
MagicLight
쇼츠~50분
⑤ 검수
관리자 승인
자동 승인 옵션
📄
⑥ 게시
썸페이지
실시간 업데이트
🛍️
⑦ CTA
상품 자동 매칭
구매 전환
📊
⑧ 분석
클릭·전환
재생성 루프
3

AI 뉴스 자동 수집 & 재작성 엔진

뉴스 수집부터 LLM 재작성까지 상세 기능 명세

📡 3.1 뉴스 수집 모듈
⚖️ 법적 원칙 (핵심) 기사 원문 전체 복제 절대 금지 · 메타데이터(제목, 링크, 날짜, 키워드)만 수집 · 공공 라이선스 소스 우선 · 출처 링크 반드시 표시
수집 소스 분류
소스 유형예시수집 방식수집 항목법적 근거
정부·공공기관 보도자료 문화부, 중기부, 식약처 공공데이터포털 API 제목·링크·날짜·요약 공공저작물 CC
BIGKinds 메타데이터 한국언론진흥재단 공개 API 제목·링크·키워드·분류 연구·교육 허용
기업 공식 뉴스룸 고객사 자체 RSS RSS 파싱 제목·링크·날짜 고객사 자체 제공
산업협회·단체 발표 뷰티협회, 프랜차이즈협회 공식 RSS 제목·링크·날짜 공개 배포
제휴 언론사 RSS 계약 언론사 제휴 RSS 제목·링크·날짜만 제휴 계약 필요
수집 스케줄러

⏰ 수집 주기

  • 공공데이터: 매 6시간
  • 기업 RSS: 매 2시간
  • 협회 발표: 매일 08:00
  • Breaking 키워드: 실시간 모니터링

🔬 중복 제거 알고리즘

  • 제목 유사도 ≥ 85% → 중복 처리
  • SimHash 방식 적용
  • 24시간 내 동일 소스 중복 차단
  • 키워드 + 날짜 복합 검증

📂 자동 분류 로직

  • 업종 키워드 매칭 (ML 모델)
  • 고객사 등록 업종 우선 분류
  • 신뢰도 점수 자동 산정
  • 재작성 우선순위 큐 배정
🤖 3.2 AI 재작성 모듈
핵심 원칙 원문 복사가 아닌 메타데이터(제목, 링크, 키워드, 날짜)를 기반으로 고객 비즈니스 관점의 원본형 해설 기사를 생성합니다. 모든 기사에는 원본 소스 링크가 포함됩니다.
4가지 재작성 템플릿

📰 ① 뉴스 브리프형

업계 소식을 고객 브랜드 관점으로 간결하게 요약. SEO 최적화. 300~500자.

  • 헤드라인 + 핵심 내용 3줄
  • 브랜드 연관 멘트 1문장
  • 원본 소스 링크 필수 포함

📊 ② 업계 분석형

트렌드를 분석해 고객 비즈니스에 미치는 영향 설명. 전문성 강화. 600~900자.

  • 트렌드 분석 + 시장 의미
  • 고객 업종 적용 포인트
  • 전문가 관점 코멘트 삽입

🛍️ ③ 상품 연결형

뉴스 내용과 연관된 상품을 자연스럽게 소개. 구매 전환 최적화. 400~700자.

  • 뉴스 트렌드 설명
  • 관련 상품 자연스러운 연결
  • CTA 문구 자동 생성

📍 ④ 지역/업종 특화형

고객의 지역·업종에 맞춘 로컬 관점 기사. 지역 검색 SEO 강화. 400~600자.

  • 지역 맞춤 키워드 최적화
  • 업종 특화 전문 용어 활용
  • 로컬 비즈니스 연관성 강조
LLM 프롬프트 구조
-- 재작성 프롬프트 구조 예시 -- SYSTEM: 당신은 [업종] 전문 콘텐츠 에디터입니다. 브랜드명: [고객사명], 지역: [지역], 주력상품: [상품명] INPUT: 뉴스제목: "[원본 제목]" 원본링크: "[URL]" 날짜: "[날짜]" 키워드: [키워드1, 키워드2, ...] RULES: 1. 원문 직접 인용/복사 절대 금지 2. 메타데이터 기반 독창적 해설 작성 3. [템플릿유형]에 맞는 구조 준수 4. 마지막에 "출처: [원본링크]" 반드시 포함 5. SEO 제목(H1) + 본문 + 태그 구조 6. 글자 수: [유형별 목표 글자수] OUTPUT: { title, content, seo_title, seo_desc, tags[], source_url }
4

MagicLight AI 영상 생성 연동

기사→스크립트→스토리보드→영상 자동 변환 파이프라인 상세 명세

50분
최대 영상 길이
4K
지원 해상도
다국어
한국어 지원
🎬 4.1 영상 생성 파이프라인 (상세)
Step 1. 스크립트 생성 (LLM)
AI 재작성 기사를 영상 나레이션 스크립트로 변환. 유형별 시간 목표에 맞게 씬(Scene) 분리. 한국어 TTS 친화적 문장 구조 사용.
Step 2. 스토리보드 생성 (LLM)
씬별 시각 요소 설명 자동 생성. 배경, 캐릭터 동작, 자막 타이밍, 전환 효과 지정. MagicLight에 전달할 JSON 포맷으로 구조화.
Step 3. MagicLight API 호출
스크립트 + 스토리보드 JSON을 MagicLight API로 전송. 영상 스타일(뉴스/광고/브이로그), 캐릭터, 배경 파라미터 지정. 비동기 처리 (Webhook 결과 수신).
Step 4. 영상 후처리 & 저장
생성된 영상 S3 업로드. 썸네일 자동 추출. 브랜드 워터마크 삽입. 포맷 변환 (9:16 쇼츠 / 16:9 유튜브 / 1:1 인스타).
Step 5. 썸페이지 연동 & CTA 삽입
영상을 썸페이지 미디어 섹션에 자동 등록. 기사 본문에 인라인 영상 삽입. 영상 하단 CTA 버튼 (연관 상품) 자동 연결.
🔌 4.2 MagicLight API 연동 스펙 (예상)
⚠️ 참고 아래 API 스펙은 MagicLight 공식 문서 기반 추정치입니다. 실제 개발 전 MagicLight 파트너십 체결 및 API 키 발급이 필요합니다. 정식 API 문서 확인 후 업데이트 필요.
영상 생성 요청
POST https://api.magiclight.ai/v1/videos/generate 영상 생성 작업 시작
{ "script": "안녕하세요, 오늘 소개할 뉴스는...", "storyboard": [ { "scene_id": 1, "duration": 5, "narration": "도입부 나레이션...", "visual": "뉴스 앵커 스타일, 실내 배경", "subtitle": "오늘의 뉴스", "transition": "fade_in" } ], "config": { "style": "news", // news | ad | vlog | edu "language": "ko", "resolution": "1080p", "aspect_ratio": "16:9", // 16:9 | 9:16 | 1:1 "character": "anchor_f", "background": "studio", "watermark": false, "max_duration": 90 // 초 단위 }, "webhook_url": "https://api.chatro.kr/webhooks/magiclight", "metadata": { "article_id": "uuid", "client_id": "uuid" } }
웹훅 콜백 처리
POST /api/webhooks/magiclight CHATRO 내부 수신 엔드포인트
-- 웹훅 수신 페이로드 예시 -- { "job_id": "ml_job_xxxxx", "status": "completed", // pending | processing | completed | failed "video_url": "https://cdn.magiclight.ai/videos/xxxxx.mp4", "thumbnail_url": "https://cdn.magiclight.ai/thumbs/xxxxx.jpg", "duration": 87, "metadata": { "article_id": "uuid", "client_id": "uuid" } }
영상 유형별 파라미터
유형해상도비율길이스타일용도
뉴스 영상1080p16:930~90초news썸페이지 메인
SNS 쇼츠1080p9:1615~60초vlog인스타·유튜브
상품 소개1080p1:1 or 16:960~120초ad상품 페이지
교육/정보1080p16:92~10분edu유튜브 채널
롱폼 콘텐츠1080p16:930~50분news유튜브 전용
5

데이터베이스 스키마

PostgreSQL 테이블 설계 — 뉴스 엔진 관련 핵심 테이블

📌 전체 테이블 목록 users · clients · sites · site_sections · news_sources · news_items · rewrite_jobs · video_jobs · articles · products · media_links · ai_jobs · publish_logs · analytics_events
굵게 표시된 4개 테이블이 이번 PRD에서 새로 추가되는 AI 뉴스 엔진 전용 테이블입니다.
📋 news_sources (뉴스 소스 관리)
CREATE TABLE news_sources ( id UUID PRIMARY KEY DEFAULT gen_random_uuid(), name VARCHAR(100) NOT NULL, -- 소스명 (예: "정부24 보도자료") source_type VARCHAR(30) NOT NULL, -- rss | public_api | partner_rss | newsroom url TEXT NOT NULL, -- RSS URL 또는 API 엔드포인트 api_key TEXT, -- API 키 (암호화 저장) industry VARCHAR(50), -- 주 업종 분류 keywords TEXT[], -- 수집 필터 키워드 배열 collect_interval INTEGER DEFAULT 360, -- 수집 주기 (분) is_active BOOLEAN DEFAULT true, trust_level SMALLINT DEFAULT 5, -- 신뢰도 1~5점 legal_note TEXT, -- 법적 근거 메모 last_collected_at TIMESTAMPTZ, items_today INTEGER DEFAULT 0, created_by UUID REFERENCES users(id), created_at TIMESTAMPTZ DEFAULT NOW(), updated_at TIMESTAMPTZ DEFAULT NOW() );
📋 news_items (수집된 뉴스 메타데이터)
CREATE TABLE news_items ( id UUID PRIMARY KEY DEFAULT gen_random_uuid(), source_id UUID REFERENCES news_sources(id), title TEXT NOT NULL, -- 원본 뉴스 제목 original_url TEXT NOT NULL, -- 원본 기사 링크 (출처 필수) published_at TIMESTAMPTZ, -- 원본 발행일 summary TEXT, -- 원본 요약 (100자 이내, 메타데이터만) keywords TEXT[], -- 추출된 키워드 industry VARCHAR(50), -- 자동 분류 업종 sim_hash BIGINT, -- 중복 제거용 유사도 해시 status VARCHAR(20) DEFAULT 'pending', -- pending | queued | rewriting | done | skipped priority SMALLINT DEFAULT 5, -- 재작성 우선순위 1(높음)~10(낮음) is_duplicate BOOLEAN DEFAULT false, duplicate_of UUID, -- 중복인 경우 원본 ID assigned_client_id UUID REFERENCES clients(id), collected_at TIMESTAMPTZ DEFAULT NOW(), created_at TIMESTAMPTZ DEFAULT NOW() ); -- 중복 제거 인덱스 CREATE INDEX idx_news_items_simhash ON news_items(sim_hash); CREATE INDEX idx_news_items_status ON news_items(status); CREATE INDEX idx_news_items_industry ON news_items(industry);
📋 rewrite_jobs (AI 재작성 작업)
CREATE TABLE rewrite_jobs ( id UUID PRIMARY KEY DEFAULT gen_random_uuid(), news_item_id UUID REFERENCES news_items(id), client_id UUID REFERENCES clients(id), template_type VARCHAR(30) NOT NULL, -- news_brief | industry_analysis | product_link | regional status VARCHAR(20) DEFAULT 'queued', -- queued | processing | completed | failed | reviewing llm_model VARCHAR(50), -- gpt-4o | claude-3-5-sonnet | etc. prompt_version VARCHAR(10), -- 프롬프트 버전 관리 -- 생성 결과 result_title TEXT, result_content TEXT, result_seo_title VARCHAR(70), result_seo_desc VARCHAR(160), result_tags TEXT[], -- 처리 메타 tokens_used INTEGER, cost_usd DECIMAL(8,4), processing_ms INTEGER, -- 승인 흐름 reviewed_by UUID REFERENCES users(id), reviewed_at TIMESTAMPTZ, review_note TEXT, -- 발행 article_id UUID, -- 발행된 article.id published_at TIMESTAMPTZ, queued_at TIMESTAMPTZ DEFAULT NOW(), created_at TIMESTAMPTZ DEFAULT NOW(), updated_at TIMESTAMPTZ DEFAULT NOW() );
📋 video_jobs (AI 영상 생성 작업)
CREATE TABLE video_jobs ( id UUID PRIMARY KEY DEFAULT gen_random_uuid(), rewrite_job_id UUID REFERENCES rewrite_jobs(id), article_id UUID, client_id UUID REFERENCES clients(id), video_type VARCHAR(30) NOT NULL, -- news_short | sns_shorts | product | edu | longform engine VARCHAR(30) DEFAULT 'magiclight', -- magiclight | runway | pika status VARCHAR(20) DEFAULT 'queued', -- queued | scripting | generating | processing | completed | failed -- 스크립트 & 스토리보드 script TEXT, storyboard JSONB, -- 씬 배열 JSON -- 엔진 파라미터 engine_config JSONB, -- style, resolution, aspect_ratio 등 engine_job_id VARCHAR(100), -- MagicLight job_id -- 결과물 video_url TEXT, -- 최종 영상 URL (S3) thumbnail_url TEXT, duration_sec INTEGER, file_size_mb DECIMAL(8,2), resolution VARCHAR(20), -- 변환 포맷 (쇼츠 등 파생 영상) derived_videos JSONB, -- [{type, url, ratio}] -- 비용 추적 engine_cost_usd DECIMAL(8,4), queued_at TIMESTAMPTZ DEFAULT NOW(), started_at TIMESTAMPTZ, completed_at TIMESTAMPTZ, created_at TIMESTAMPTZ DEFAULT NOW(), updated_at TIMESTAMPTZ DEFAULT NOW() );
6

내부 REST API 명세

NestJS 기반 CHATRO 내부 API 엔드포인트 목록

📡 6.1 뉴스 소스 API
GET/api/news-sources소스 목록 조회
POST/api/news-sources소스 등록
PUT/api/news-sources/:id소스 수정
POST/api/news-sources/:id/collect수동 즉시 수집 트리거
📋 6.2 뉴스 아이템 API
GET/api/news-items?status=pending&industry=beauty수집 뉴스 목록 (필터)
GET/api/news-items/:id뉴스 상세 조회
POST/api/news-items/:id/rewrite재작성 큐에 추가
PATCH/api/news-items/:id/skip스킵 처리
🤖 6.3 재작성 작업 API
GET/api/rewrite-jobs?status=reviewing재작성 작업 목록
POST/api/rewrite-jobs재작성 작업 생성
POST/api/rewrite-jobs/:id/approve관리자 승인 → 발행
POST/api/rewrite-jobs/:id/reject반려 → 재생성
POST/api/rewrite-jobs/:id/generate-video영상 생성 큐에 추가
🎬 6.4 영상 생성 작업 API
GET/api/video-jobs?status=generating영상 작업 목록
POST/api/video-jobs영상 생성 작업 시작
GET/api/video-jobs/:id/status작업 진행 상태 조회
POST/api/webhooks/magiclightMagicLight 결과 웹훅 수신
7

관리자 CMS 화면 스펙

AI 뉴스 엔진 관련 어드민 화면 기능 정의

📡 뉴스 소스 관리 화면

  • 소스 목록 카드 뷰 (활성/비활성 구분)
  • 소스 추가 모달 (URL·유형·키워드·업종 입력)
  • 즉시 수집 버튼 (수동 트리거)
  • 오늘 수집량 / 신뢰도 / 상태 표시
  • 소스별 수집 이력 타임라인

📋 수집 큐 화면

  • 수집된 뉴스 테이블 (제목·소스·날짜·업종)
  • 중복 제거 필터 (중복 숨기기 토글)
  • 업종·상태별 필터 탭
  • 개별 재작성 요청 / 일괄 선택 처리
  • 스킵(무시) 처리 버튼
  • 원본 링크 새 탭 열기

🤖 AI 재작성 화면

  • 재작성 작업 목록 (상태별 탭: 대기/처리중/검수/완료)
  • 템플릿 유형 선택 (4가지)
  • 생성된 기사 미리보기 패널
  • 승인 / 반려 / 재생성 버튼
  • 영상 생성 요청 버튼 (승인 후 활성화)
  • LLM 비용 추적 (토큰·USD)

🎬 영상 생성 관리 화면

  • 영상 작업 목록 (상태: 큐/생성중/완료/실패)
  • 영상 유형 선택 (쇼츠/유튜브/상품)
  • MagicLight 실시간 진행률 표시
  • 완성 영상 미리보기 플레이어
  • 썸페이지 게시 / SNS 발행 버튼
  • 영상 비용 (엔진 크레딧) 모니터링

🛡️ 운영 정책 화면

  • 자동 승인 ON/OFF 토글 (위험도 기준)
  • 금지 키워드 관리 (출력 차단)
  • AI 생성 표시 문구 설정
  • 재생성 주기 설정 (일/주/월)
  • 비용 한도 알림 설정

📊 KPI 대시보드 (뉴스 엔진)

  • 오늘 수집 / 재작성 / 영상 생성 건수
  • 중복 제거율 실시간 표시
  • 기사 클릭률 (CTR) 추이 차트
  • 영상 시청 시간 합계
  • 상품 전환율 (기사 → 구매)
✅ 현재 데모 구현 상태 admin.html에 AI 뉴스 엔진 패널(패널 11)이 이미 구현되어 있습니다: 📡 뉴스 소스 탭 (6개 소스 카드) · 📋 수집 큐 탭 · 🤖 AI 재작성 탭 · 🎬 영상 생성 탭 · 🛡️ 운영 정책 탭
admin.html에서 직접 확인 가능합니다.
8

법적 컴플라이언스 & 운영 원칙

저작권·표절 방지를 위한 기술·운영 원칙

🚨 절대 금지 사항 원문 기사 전체 또는 일부를 그대로 복사하는 행위 · API/스크래핑으로 전문 무단 수집 · 출처 미표시 배포 · AI 생성 콘텐츠를 사람이 작성한 것처럼 허위 표시
원칙기술 구현검증 방법
메타데이터만 수집 RSS 파서에서 content 필드 제거, 제목/URL/날짜/키워드만 저장 DB 스키마에 전문 저장 컬럼 없음 확인
출처 링크 필수 표시 모든 기사 하단에 원본 소스 링크 자동 삽입 (DB NOT NULL 강제) 발행 전 source_url 유효성 자동 검사
AI 생성 표시 의무 모든 AI 생성 기사에 "AI 생성 기사" 배지 자동 삽입 발행 API에 ai_generated 플래그 필수
원문 유사도 검사 생성된 기사 원본과 유사도 40% 초과 시 자동 재생성 요청 발행 전 similarity check 자동 실행
공개 소스 우선 공공저작물·CC 라이선스 소스에 높은 우선순위 부여 소스 등록 시 법적 근거 필드 필수
제휴 계약 관리 제휴 언론사 RSS 사용 시 계약서 사전 체결 필수 계약 만료일 모니터링 알림
9

KPI & 성과 지표

AI 뉴스 엔진 & 영상 생성 시스템의 핵심 측정 지표

📊 수집·생성 KPI
지표MVP 목표Phase 2 목표
일 뉴스 수집 건수200건+500건+
중복 제거율30%↑ 제거40%↑ 제거
재작성 성공률95%+98%+
기사 생성 속도건당 <30초건당 <15초
영상 생성 성공률90%+95%+
영상 생성 시간<5분 (쇼츠)<3분
📈 비즈니스 KPI
지표MVP 목표Phase 2 목표
기사 클릭률 (CTR)3%+5%+
영상 시청 완료율40%+60%+
기사→상품 전환율1%+2.5%+
페이지 체류시간2분30초+4분+
재방문율20%+35%+
일 썸페이지 생산량30개60개
💰 비용 추적 지표
비용 항목단위예상 단가월 목표 한도
LLM (GPT-4o) 재작성1,000 토큰$0.005월 $50 이하
MagicLight 영상 생성영상 1개 (60초)협의 필요별도 협의
S3 영상 저장GB/월$0.023월 $20 이하
Redis 캐시인스턴스$15/월고정
10

MVP 개발 로드맵

Phase별 개발 계획 & 우선순위

🚀 Phase 1 · MVP (4~6주)

  • Next.js + NestJS 기반 환경 구축
  • PostgreSQL 스키마 마이그레이션
  • 공공데이터 RSS 수집 스케줄러
  • LLM API (GPT-4o) 재작성 파이프라인
  • 관리자 승인 워크플로우
  • MagicLight API 연동 (쇼츠 우선)
  • 썸페이지 자동 업데이트
  • 기본 분석 대시보드

⚡ Phase 2 (7~12주)

  • 제휴 언론사 RSS 연동
  • 롱폼 영상 (30~50분) 생성
  • SNS 자동 발행 (인스타·유튜브)
  • 상품 자동 매칭 ML 모델
  • 전환 퍼널 분석
  • 자동 재생성 스케줄러
  • 비용 최적화 (캐싱·배치)

🌟 Phase 3 (13주+)

  • 고객 셀프 수정 포털
  • 외부 SaaS 구독 모델 전환
  • 화이트레이블 제공
  • AI 성과 최적화 피드백 루프
  • 멀티 LLM 라우팅
  • Runway Gen-3 / Pika 추가 연동
📅 Phase 1 세부 일정
주차작업담당산출물
1~2주개발 환경 구축, DB 스키마 마이그레이션, 기본 API 구조백엔드 리드DB 스키마, API 보일러플레이트
2~3주뉴스 수집 스케줄러, 중복 제거 로직, 업종 분류백엔드뉴스 수집 서비스 v1
3~4주LLM 재작성 파이프라인, 4가지 템플릿 프롬프트AI 엔지니어재작성 워커 v1
4~5주MagicLight API 연동, 영상 생성 워커, 웹훅백엔드 + AI영상 생성 파이프라인 v1
5~6주어드민 관리 화면, 썸페이지 자동 업데이트, 테스트프론트엔드어드민 + 썸페이지 통합 완료
11

권장 기술 스택

CHATRO AI 뉴스 엔진 & 영상 생성 시스템 구현을 위한 기술 선택

🖥️ 프론트엔드
프레임워크Next.js 14+ (App Router)
스타일링Tailwind CSS + shadcn/ui
상태 관리Zustand + React Query
차트Recharts / Chart.js
에디터Tiptap (기사 수정용)
비디오Video.js (플레이어)
⚙️ 백엔드
API 서버NestJS (Node.js)
DBPostgreSQL 16+
ORMPrisma / TypeORM
캐시/큐Redis + BullMQ
파일 저장AWS S3 / Cloudflare R2
인증JWT + NextAuth.js
🤖 AI & 외부 서비스
LLM (재작성)OpenAI GPT-4o (주) / Claude 3.5 (보조)
영상 생성MagicLight AI (주) / Runway Gen-3 (보조)
RSS 파싱rss-parser (npm)
유사도 검사SimHash 라이브러리
번역/NLPOpenAI Embeddings
☁️ 인프라 & 모니터링
배포Vercel (프론트) + AWS EC2/ECS (백엔드)
CDNCloudflare
모니터링Sentry + Datadog
로그CloudWatch / Loki
CI/CDGitHub Actions
12

개발 리스크 & 대응 방안

MVP 개발 시 예상되는 주요 리스크와 미티게이션 전략

리스크발생 가능성영향도대응 방안
MagicLight API 파트너십 지연 높음 높음 Runway Gen-3 또는 D-ID API로 대체 시작, MagicLight 병행 협의
LLM 원문 유사도 과다 (저작권) 중간 높음 유사도 40% 초과 시 자동 재생성, 법무 검토 프로세스 추가
영상 생성 비용 초과 중간 중간 월 비용 한도 알림, 쇼츠 우선 전략, 수익성 높은 고객 우선 배치
RSS 소스 변경/차단 중간 낮음 소스 다양화 (5개 이상), 실패 시 자동 알림 & 대체 소스 전환
MagicLight 영상 품질 불일치 중간 중간 관리자 검수 필수화, AI 자동 품질 점수 시스템 (Phase 2)
PostgreSQL 스키마 마이그레이션 오류 낮음 높음 Prisma 마이그레이션 + 스테이징 환경 충분한 테스트
✅ 결론 및 권고사항 Phase 1 MVP는 MagicLight API 연동 협의와 병행해서 공공 RSS 수집 + LLM 재작성 파이프라인을 먼저 구현하는 것을 권장합니다. 영상 생성이 지연될 경우 텍스트 기사 자동화만으로도 일 30개 생산 목표는 달성 가능합니다. MagicLight 연동은 Phase 1 마지막 2주에 통합하는 전략이 리스크가 낮습니다.
CHATRO PRD v1.1
AI 뉴스 자동화 + MagicLight 영상 생성 통합 시스템 · 2026-03-16
작성: CHATRO 기획팀 × Genspark AI (젠스) · 대상: GENS 개발팀
← 썸페이지 데모 관리자 CMS →