메타데이터 추출 사용 패턴
메타데이터 추출 사용 패턴
Metadata Extractor 모듈로 LLM을 사용해 메타데이터 추출을 자동화하는 방법을 알아봐요.
출처: 문서
본문
우리의 metadata extractor 모듈은 다음과 같은 "피처 추출기(feature extractors)"를 포함해요:
SummaryExtractor- 노드 집합에 대한 요약을 자동으로 추출QuestionsAnsweredExtractor- 각 노드가 답할 수 있는 질문 집합을 추출TitleExtractor- 각 노드의 컨텍스트에 대한 제목을 추출EntityExtractor- 각 노드 콘텐츠에 언급된 개체(즉, 장소·사람·사물의 이름) 추출
그런 다음 Metadata Extractor들을 노드 파서와 연결(chaining)할 수 있어요:
from llama_index.core.extractors import (
TitleExtractor,
QuestionsAnsweredExtractor,
)
from llama_index.core.node_parser import TokenTextSplitter
text_splitter = TokenTextSplitter(
separator=" ", chunk_size=512, chunk_overlap=128
)
title_extractor = TitleExtractor(nodes=5)
qa_extractor = QuestionsAnsweredExtractor(questions=3)
# assume documents are defined -> extract nodes
from llama_index.core.ingestion import IngestionPipeline
pipeline = IngestionPipeline(
transformations=[text_splitter, title_extractor, qa_extractor]
)
nodes = pipeline.run(
documents=documents,
in_place=True,
show_progress=True,
)
또는 인덱스에 삽입할 수도 있어요:
from llama_index.core import VectorStoreIndex
index = VectorStoreIndex.from_documents(
documents, transformations=[text_splitter, title_extractor, qa_extractor]
)
자료 (Resources)
- SEC Documents Metadata Extraction
- LLM Survey Extraction
- Entity Extraction
- Marvin Metadata Extraction
- Pydantic Metadata Extraction