텍스트 분할 (Text Spliter)

2025. 5. 8. 00:11·ML_DL/MUJAKJUNG (무작정 시리즈)
목차
  1. 한문장 정리
  2. 라이브러리 설치
  3. 문장 분할
  4. 분할 결과 확인
  5. 결과
728x90
반응형

한문장 정리

텍스트 데이터를 어떻게 분할해야 활용에 용이한지 확인한다. 

라이브러리 설치

  • LangChain의 text_spliter 활용
  • pdf 파일은 PyMuPDF 활용
  • spacy에서는 'ko_core_news_sm' 모델 활용
pip install pymupdf langchain langchain_community spacy
spacy download ko_core_news_sm

문장 분할

from langchain.document_loaders import PyMuPDFLoader
from langchain.text_splitter import CharacterTextSplitter, RecursiveCharacterTextSplitter, SpacyTextSplitter

# PDF 텍스트 추출
loader = PyMuPDFLoader("./경복궁.pdf")
document = loader.load()

# Spliter 정의
character_text_spliter = CharacterTextSplitter(chunk_size=200, separator=" ", chunk_overlap=50)
spacy_text_splitter = SpacyTextSplitter(chunk_size=200, pipeline="ko_core_news_sm", chunk_overlap=50)
recursive_text_spliter = RecursiveCharacterTextSplitter(chunk_size=200, chunk_overlap=50)

# 텍스트 분할
character_splitted_document = character_text_spliter.split_documents(document)
spacy_splitted_document = spacy_text_splitter.split_documents(document)
recursive_splitted_document = recursive_text_spliter.split_documents(document)

분할 결과 확인

Spliter 종류 결과
CharacterTextSplitter 경복궁은 조선 왕조 제일의 법궁이다. 북으로 북악산을 기대어 자리 잡았고 정문인 광화
문 앞으로는 넓은 육조거리(지금의 세종로)가 펼쳐져, 왕도인 한양(서울) 도시 계획의 중
심이기도 하다. 1395년 태조 이성계가 창건하였고, 1592년 임진 왜란으로 불타 없어졌다
가, 고종 때인 1867년 중건 되었다. 흥선대원군이 주도한 중건 경복궁은 500여 동의
==========================================
고종 때인 1867년 중건 되었다. 흥선대원군이 주도한 중건 경복궁은 500여 동의 건
물들이 미로같이 빼곡히 들어선 웅장한 모습 이었다. 
궁궐 안에는 왕과 관리들의 정무 시설, 왕족들의 생활 공간, 휴식을 위한 후원 공간이 조
성되었다. 또한 왕비의 중궁, 세자의 동궁, 고종이 만든 건청궁 등 궁궐안에 다시 여러 
작은 궁들이 복잡하게 모인 곳이기도
RecursiveCharacterTextSplitter 경복궁은 조선 왕조 제일의 법궁이다. 북으로 북악산을 기대어 자리 잡았고 정문인 광화
문 앞으로는 넓은 육조거리(지금의 세종로)가 펼쳐져, 왕도인 한양(서울) 도시 계획의 중
심이기도 하다. 1395년 태조 이성계가 창건하였고, 1592년 임진 왜란으로 불타 없어졌다
==========================================
가, 고종 때인 1867년 중건 되었다. 흥선대원군이 주도한 중건 경복궁은 500여 동의 건
물들이 미로같이 빼곡히 들어선 웅장한 모습 이었다. 
궁궐 안에는 왕과 관리들의 정무 시설, 왕족들의 생활 공간, 휴식을 위한 후원 공간이 조
성되었다. 또한 왕비의 중궁, 세자의 동궁, 고종이 만든 건청궁 등 궁궐안에 다시 여러
SpacyTextSplitter 경복궁은 조선 왕조 제일의 법궁이다.

북으로 북악산을 기대어 자리 잡았고 정문인 광화
문 앞으로는 넓은 육조거리(지금의 세종로)가 펼쳐져, 왕도인 한양(서울) 도시 계획의 중
심이기도 하다.

1395년 태조 이성계가 창건하였고, 1592년 임진 왜란으로 불타 없어졌다
가, 고종 때인 1867년 중건 되었다.
===========================================
흥선대원군이 주도한 중건 경복궁은 500여 동의 건
물들이 미로같이 빼곡히 들어선 웅장한 모습 이었다. 


궁궐 안에는 왕과 관리들의 정무 시설, 왕족들의 생활 공간, 휴식을 위한 후원 공간이 조
성되었다.

또한 왕비의 중궁, 세자의 동궁, 고종이 만든 건청궁 등 궁궐안에 다시 여러 
작은 궁들이 복잡하게 모인 곳이기도 하다.

결과

  • 위 실험 결과, SpacyTextSplitter를 사용한 문장 분할이 가장 정확한 모습을 보인다.
  • PDF에 포함된 텍스트를 확인하고, 해당 내용의 언어를 기반으로 문장을 분할하여 활용한다.
  • chunk_size와 chunk_overlap은 embedding이나 LLM에 따라 달리 설정하여 활용한다.
저작자표시 (새창열림)

'ML_DL > MUJAKJUNG (무작정 시리즈)' 카테고리의 다른 글

[PDF 기반 퀴즈 생성기] 개선하기 (시간 단축)  (0) 2025.05.10
[PDF 기반 퀴즈 생성기] 구현하기 (feat. Streamlit, RAG)  (0) 2025.05.07
[PDF 기반 퀴즈 생성기] 구성하기  (0) 2025.05.02
[LangChain] 모델 파라미터 설정  (0) 2025.04.09
[LangChain] 챗봇 구성하기  (0) 2025.04.03
  1. 한문장 정리
  2. 라이브러리 설치
  3. 문장 분할
  4. 분할 결과 확인
  5. 결과
'ML_DL/MUJAKJUNG (무작정 시리즈)' 카테고리의 다른 글
  • [PDF 기반 퀴즈 생성기] 개선하기 (시간 단축)
  • [PDF 기반 퀴즈 생성기] 구현하기 (feat. Streamlit, RAG)
  • [PDF 기반 퀴즈 생성기] 구성하기
  • [LangChain] 모델 파라미터 설정
swwho
swwho
일상을 데이터화하다
  • swwho
    하루한장
    swwho
  • 전체
    오늘
    어제
    • 분류 전체보기 (188)
      • ML_DL (39)
        • MUJAKJUNG (무작정 시리즈) (18)
        • 딥러닝 공부하기 (21)
      • 데이터사이언스 (1)
        • EDA (1)
        • 데이터과학을 위한 통계 (0)
      • 데이터엔지니어링 (2)
      • 논문리뷰 (2)
        • Computer Vision (2)
      • Python 활용하기 (12)
      • 코딩테스트 (127)
        • Python (109)
        • MySQL (14)
      • Git (3)
      • MySQL 활용하기 (0)
      • 일상 이야기 (1)
  • 블로그 메뉴

    • 홈
    • 태그
  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.3
swwho
텍스트 분할 (Text Spliter)
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.