Skip to content

Text-abstractive-summarization/Text_abstractive_summarization

Repository files navigation

AI 기반 데일리 뉴스 요약 챗봇 서비스

참조 폴더

  • Crawling-main: N사 포털의 뉴스 기사를 크롤링하는 코드입니다.
  • Explanation_about_code: T5 fine-tuning에 대한 설명 주석이 담겨있는 코드입니다.
  • Flask-main: API의 기반이 되는 Flask 코드입니다.
  • NLP-model-main-scoring: bert score를 측정하는 코드입니다.
  • model_ET5: 최종 모델(epoch:12, data:290,000건)의 학습 과정이 담긴 코드 폴더입니다.

요약

1. 서비스 개요

  • AI 기반 뉴스 요약기 구축 후 다양한 신문사의 기사를 요약하여 전달하는 챗봇 서비스 진행

image

2. 모델 개발

  • 개발 환경: VScode(크롤링), Google Colab(딥러닝 모델), PyCharm(서비스 구현)
  • 주요 사용 라이브러리 PyTorch, Transformers, Sentencepiece(0.1.91), Flask 등
  • 학습 데이터셋(Fine-tuning): AI Hub 문서요약 텍스트(https://aihub.or.kr/aidata/8054) 다운로드 후, 뉴스텍스트 총 30만 건(train, validation 포함) 중에 기사 원본(sentence), 생성요약문(abstractive) 을 추출하여 데이터셋을 구축함(train 29만 건, test 1만 건)

3. 모델 구축

  • 2019년 Google에서 출시한 T5(Text To Text Transfer Transformer) 모델을 이용하여 요약 모델 구축

image

image

  • 생성 요약문 예시

image

4. 모델 성능 비교

image

  • Colab 런타임 24시간 제한으로 인해 데이터를 나누어 Fine-tuning 진행 후 모델을 저장한 뒤 추가 학습 진행

image

5. 서비스 배포

  • 포털에서 뉴스기사를 크롤링하고 Fine-tuning으로 구축한 모델을 통해 요약문을 생성한 뒤 kakao i open builder를 이용하여 사용자에게 챗봇으로 뉴스 기사 요약문 서비스를 배포함

image

6. 서비스 구동 시 필수 요소

  1. kakao 채널 개설
  2. kakao I open builder (승인 요청 후 약 7일 소요)
  3. 성능좋은 GPU 혹은 CPU, RAM까지 갖춰져있는 고성능 PC
  4. 로컬에 모델 저장
  5. crawling.py에 모델 경로 수정

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published