Thanks to visit codestin.com
Credit goes to github.com

Skip to content

jungjongho/choosenews

Repository files navigation

네이버 뉴스 모니터링 시스템 (AI 기반 배치 처리) 🚀

업계별 맞춤형 뉴스 모니터링을 위한 네이버 뉴스 API 기반 검색 및 AI 분석 시스템입니다.

✨ 핵심 기능

🎯 업계별 맞춤 분석

  • 프롬프트 기반 분류: 코드 수정 없이 업계별 분석 기준 설정
  • 동적 카테고리: 화장품, 핀테크, 제약, 부동산 등 모든 업계 적용 가능
  • 맞춤형 키워드: 업계 특화 용어, 회사명, 기술용어 자유 설정

⚡ 고성능 배치 처리

  • 처리 속도: 기존 대비 3-5배 향상 🔥
  • 배치 처리: 한번에 최대 20개 기사 동시 분석
  • 스마트 모드: 단일/배치 처리 선택 가능
  • 향상된 정확도: 배치에서도 동일한 품질 유지

📊 실시간 모니터링

  • 진행도 추적: WebSocket 기반 실시간 상태 표시
  • 성능 분석: 처리 속도, 성공률, 오류 통계 제공
  • 유연한 설정: 배치 크기 1-20개 자유 조절

🏭 업계별 활용 사례

💊 제약/바이오 업계

  • 모니터링 키워드: 신약개발, 임상시험, FDA, 식약처, 특허, 바이오텍
  • 분류 기준: 자사 파이프라인 → 경쟁사 동향 → 규제 환경 → 시장 전망

💳 핀테크/금융 업계

  • 모니터링 키워드: 핀테크, 디지털뱅킹, 암호화폐, CBDC, 금융규제
  • 분류 기준: 자사 서비스 → 경쟁사 분석 → 규제 동향 → 기술 트렌드

🏠 부동산/건설 업계

  • 모니터링 키워드: 부동산 정책, 분양, 재건축, 공급계획, 금리
  • 분류 기준: 정책 변화 → 시장 동향 → 프로젝트 소식 → 경쟁사 현황

🚗 자동차/모빌리티 업계

  • 모니터링 키워드: 전기차, 자율주행, 배터리, 충전인프라
  • 분류 기준: 자사 제품 → 경쟁사 동향 → 정책 환경 → 기술 트렌드

🌱 ESG/지속가능성 모니터링

  • 모니터링 키워드: ESG, 탄소중립, 친환경, 재생에너지, 순환경제
  • 분류 기준: 환경 이니셔티브 → 사회적 책임 → 지배구조 → 규제 대응

📚 교육/에듀테크 업계

  • 모니터링 키워드: 온라인교육, 에듀테크, 대학 입시, 평생교육
  • 분류 기준: 교육 정책 → 시장 동향 → 기술 혁신 → 투자 현황

🍽️ 식품/외식 업계

  • 모니터링 키워드: 대체식품, 배달앱, 푸드테크, 식품안전
  • 분류 기준: 시장 트렌드 → 유통 채널 → 안전/규제 → 원자재 동향

🚀 빠른 시작

설치 및 실행

# 저장소 클론
git clone <repository-url>
cd naver_news_searching

# 백엔드 설정
cd backend
pip install -r requirements.txt

# 환경 변수 설정
cp .env.example .env
# .env 파일에서 NAVER_CLIENT_ID, NAVER_CLIENT_SECRET, AI API 키 설정

# 서버 실행
python run.py

프론트엔드 실행

cd frontend
npm install
npm start

📁 프로젝트 구조

naver_news_searching/
├── backend/                         # FastAPI 백엔드
│   ├── app/
│   │   ├── api/endpoints/          # API 라우터
│   │   │   ├── crawler.py          # 뉴스 크롤링
│   │   │   ├── relevance.py        # AI 분석
│   │   │   └── prompts.py          # 프롬프트 관리
│   │   ├── services/               # 비즈니스 로직
│   │   │   ├── news_analysis_service.py  # AI 분석 엔진
│   │   │   ├── naver_api_service.py      # 네이버 API
│   │   │   └── prompt_service.py         # 프롬프트 관리
│   │   ├── models/                 # 데이터 모델
│   │   └── websocket/              # 실시간 통신
├── frontend/                       # React 웹 인터페이스
│   ├── src/pages/                  # 페이지 컴포넌트
│   │   ├── CrawlerPage.js          # 뉴스 수집
│   │   ├── RelevancePage.js        # AI 분석
│   │   ├── PromptsPage.js          # 프롬프트 설정
│   │   └── ResultsPage.js          # 결과 조회
│   └── src/components/             # 공통 컴포넌트
└── results/                        # 결과 파일
    ├── crawling/                   # 수집 결과
    └── relevance/                  # 분석 결과

🔧 사용법

1단계: 업계별 프롬프트 설정

프롬프트 관리 페이지에서 업계에 맞는 분석 기준을 설정합니다:

역할 정의: 당신은 [업계명] 전문 애널리스트입니다.

분류 기준:
1. 자사관련: [회사명] 직접 언급 또는 관련 서비스
2. 경쟁사동향: 주요 경쟁사의 신제품, 전략, 성과
3. 시장트렌드: [업계] 전반의 동향, 성장률, 소비자 변화
4. 규제환경: 관련 법규, 정책 변화, 규제 기관 발표
5. 기술혁신: 새로운 기술, 연구 결과, 혁신 사례
6. 기타: 위 범주에 해당하지 않는 참고 내용

JSON 형식: {"category": "분류명", "confidence": 0.0-1.0, "keywords": ["핵심키워드"]}

2단계: 키워드 기반 뉴스 수집

뉴스 크롤링 페이지에서 업계별 키워드로 뉴스를 수집합니다:

  • 검색 기간: 최대 30일
  • 수집 개수: 1-1000개 자유 설정
  • 키워드 예시: 회사명, 제품명, 기술용어, 업계 트렌드 키워드

3단계: AI 기반 자동 분석

관련성 분석 페이지에서 수집된 뉴스를 자동 분류합니다:

분석 방식 속도 모니터링 추천 상황
배치 처리 ⚡ 매우 빠름 실시간 대량 데이터 (100개 이상)
진행도 추적 빠름 실시간 중간 데이터 (50-200개)
동기 처리 보통 완료 후 소량 데이터 (50개 이하)

4단계: 결과 활용

  • 웹 대시보드: 실시간 분류 결과 확인
  • 엑셀 다운로드: 상세 분석 결과 다운로드
  • 통계 분석: 카테고리별 분포, 관련도 통계

📊 성능 지표

처리 속도 비교 (1000개 기사 기준)

처리 모드 소요 시간 API 요청 수 비용 효율
단일 처리 15-20분 1000회 기본
배치 5개 8-12분 200회 2배 향상
배치 10개 4-6분 100회 3-5배 향상
배치 20개 2-3분 50회 5-7배 향상

지원 AI 모델

  • OpenAI: GPT-4, GPT-4-turbo, GPT-3.5-turbo
  • Anthropic: Claude-3-sonnet, Claude-3-haiku
  • 기타: API 호환 모든 모델 지원

🛠 고급 설정

배치 처리 최적화

{
  "use_batch_processing": true,
  "batch_size": 10,
  "model": "gpt-4.1-nano",
  "max_tokens": 4000
}

프롬프트 템플릿 예시

# 핀테크 업계용 프롬프트
"""
당신은 핀테크 업계 전문 애널리스트입니다.

다음 기준에 따라 뉴스를 분류하세요:
1. 자사관련: 당사 서비스, 제휴, 투자 관련
2. 경쟁사동향: 경쟁사 신규 서비스, 시장 점유율
3. 규제환경: 금융위, 개인정보보호, 전자금융법 관련
4. 기술트렌드: 블록체인, AI, 보안기술 관련
5. 시장전망: 핀테크 시장 규모, 투자 동향
6. 기타: 위 범주에 해당하지 않는 내용

제목: {title}
내용: {content}

JSON 형식으로 응답: {"category": "분류명", "confidence": 0.0-1.0, "key_topics": ["주요키워드"]}
"""

🔍 모니터링 및 분석

실시간 대시보드

  • 처리 진행률: 실시간 진행 상황 표시
  • 분류 통계: 카테고리별 기사 분포
  • 성능 메트릭: 처리 속도, 성공률, 오류율
  • 키워드 분석: 주요 키워드 빈도 분석

결과 분석 도구

  • 트렌드 분석: 시간별 키워드 변화 추이
  • 감정 분석: 긍정/부정/중립 뉴스 비율
  • 영향도 분석: 고신뢰도 뉴스 우선 표시
  • 알림 설정: 중요 뉴스 자동 알림

📝 업데이트 내역

v3.0.0 (범용 업계 지원)

  • 업계별 프롬프트 템플릿: 7개 주요 업계 지원
  • 동적 분류 시스템: 코드 수정 없는 카테고리 변경
  • 다중 AI 모델: OpenAI, Anthropic, 커스텀 모델 지원
  • 성능 최적화: 배치 처리로 3-5배 속도 향상
  • 실시간 모니터링: WebSocket 기반 진행도 추적

v2.0.0 (배치 처리 도입)

  • 배치 처리 시스템: 최대 20개 기사 동시 분석
  • 속도 향상: 기존 대비 현저한 성능 개선
  • 스마트 UI: 배치 크기 조절 및 실시간 가이드
  • 자동 복구: 배치 실패시 단일 처리로 자동 전환

🐛 문제 해결

자주 묻는 질문

Q: 새로운 업계에 적용하려면 어떻게 해야 하나요? A: 프롬프트 관리 페이지에서 새 프롬프트를 생성하고, 해당 업계의 분류 기준과 키워드를 설정하면 됩니다.

Q: 배치 처리가 느려요 A: 배치 크기를 줄이거나(10→5), 네트워크 상태를 확인해보세요. 단일 처리 모드로 변경하는 것도 방법입니다.

Q: 분류 정확도를 높이려면? A: 프롬프트에 더 구체적인 예시를 추가하고, Few-shot 예시를 업계별로 맞춤화하세요.

Q: API 비용을 줄이려면? A: 배치 처리를 사용하고, 더 저렴한 모델(GPT-3.5-turbo)을 선택하거나, 키워드를 더 정확하게 설정해보세요.

📞 지원 및 기여

버그 리포트

  • 이슈 등록: GitHub Issues를 통한 버그 신고
  • 로그 첨부: 백엔드 로그와 함께 리포트 제출
  • 재현 방법: 단계별 재현 방법 상세 기술

기능 요청

  • 새로운 업계 지원: 특정 업계 맞춤 기능 요청
  • AI 모델 추가: 새로운 AI 모델 통합 요청
  • UI/UX 개선: 사용자 경험 개선 제안

개발 참여

  • 프롬프트 템플릿: 업계별 프롬프트 기여
  • 번역 지원: 다국어 지원 기여
  • 성능 최적화: 알고리즘 개선 기여

모든 업계의 뉴스 모니터링이 필요한 곳에서 활용 가능한 범용 시스템입니다! 🚀

📄 라이선스

MIT License - 자유롭게 사용, 수정, 배포 가능합니다.

🙏 감사의 말

이 프로젝트는 다양한 업계의 뉴스 모니터링 요구사항을 충족하기 위해 개발되었습니다. 업계별 맞춤화 제안과 피드백을 환영합니다.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published