UpstageLayoutAnalysisLoader

문서 로더

다양한 형식의 문서를 LangChain으로 로드하는 방법을 다룬다.

AI
RAG
LangChain
저자

Kwangmin Kim

공개

2024년 12월 31일

UpstageLayoutAnalysisLoader 는 Upstage AI에서 제공하는 문서 분석 도구로, LangChain 프레임워크와 통합되어 사용할 수 있는 문서 로더입니다.

주요 특징: - PDF, 이미지 등 다양한 형식의 문서에서 레이아웃 분석 수행 - 문서의 구조적 요소(제목, 단락, 표, 이미지 등)를 자동으로 인식 및 추출 - OCR 기능 지원 (선택적)

UpstageLayoutAnalysisLoader는 단순한 텍스트 추출을 넘어 문서의 구조를 이해하고 요소 간 관계를 파악하여 보다 정확한 문서 분석을 가능하게 합니다.

설치

langchain-upstage 패키지를 설치 후 사용합니다.

pip install -U langchain-upstage

API Key 설정

.env 파일에 UPSTAGE_API_KEY 키를 설정합니다.

참고 - Upstage 개발자 문서를 참조하세요.

1 환경 설정

# API KEY를 환경변수로 관리하기 위한 설정 파일
from dotenv import load_dotenv

# API KEY 정보로드
load_dotenv()
# LangSmith 추적을 설정합니다. https://smith.langchain.com
# !pip install langchain-teddynote
from langchain_teddynote import logging

# 프로젝트 이름을 입력합니다.
logging.langsmith("CH07-DocumentLoader")

2 UpstageLayoutAnalysisLoader

주요 파라미터 - file_path: 분석할 문서 경로 - output_type: 출력 형식 [(기본값)‘html’, ‘text’] - split: 문서 분할 방식 [‘none’, ‘element’, ‘page’] - use_ocr=True: OCR 사용 - exclude=["header", "footer"]: 헤더, 푸터 제외

from langchain_upstage import UpstageLayoutAnalysisLoader

# 파일 경로
file_path = "./data/SPRI_AI_Brief_2023년12월호_F.pdf"

# 문서 로더 설정
loader = UpstageLayoutAnalysisLoader(
    file_path,
    output_type="html",
    split="element",
    use_ocr=True,
    exclude=["header", "footer"],
)

# 문서 로드
docs = loader.load()

# 결과 출력
for doc in docs[:3]:
    print(doc)
docs[11]

Subscribe

Enjoy this blog? Get notified of new posts by email: