프로그래밍/LLM

[Day 3] LLM & RAG 실전 챌린지 - 인덱싱, 저장하기, 쿼리

31weeks 2025. 9. 7. 19:41
728x90
반응형

2.4 인덱싱

 

1) 인덱싱이란?

  • 문서 객체로 구성된 특정 형태의 데이터 구조

2) 벡터 저장소 인덱스

  • 라마인덱스에서 가장 널리 사용되는 인덱스 유형
  • 문서를 노드 단위로 분할한 뒤, 각 노드의 텍스트를 벡터화 하여 LLM이 쿼리를 보다 효율적으로 처리할 수 있도록 준비

* 벡터 임베딩 : 텍스트의 의미를 수치화하여 벡터로 표현하는 기술, 의미적으로 유사한 단어나 문장은 임베딩 공간에서 물리적으로 가까운 위치에 맵핑된다.

  • 장점 : 효율적인 검색, 의미론적 검색, 다양한 쿼리 전략 지원

3) Top-K 검색

  • 벡터 저장소 인덱스를 활용하여 쿼리를 수행하고 의미적으로 가장 유사한 상위 K개의 임베딩 결과를 반환하는 검색 방식

2.5 저장하기

  • 문서를 인덱싱 하면 쿼리를 실행할 준비가 완료되지만 모든 텍스트에 대해 임베딩을 생성하는 작업은 시간이 오래 걸릴 수 있으므로, 처리속도를 높이고 비용을 절감하기 위해, 한번 생성된 임베딩을 저장해 두고 재사용하는 방법

2.6 쿼리

 

1) 쿼리 엔진

  • 모든 쿼리의 기초, 라마인덱스에서 쿼리를 처리하는 핵심 구성요소

2) 검색

  • 입력된 쿼리와 가장 관련있는 문서를 인덱스에서 검색

3) 후처리

  • 검색된 노드를 선택적으로 재정렬, 변환, 필터링하는 단계

4) 응답 합성

  • 쿼리, 가장 관련있는 데이터가 프롬프트와 결합되어 LLM으로 전송되며, 이를 통해 적절한 응답 생성

5) 커스터마이징

  • 라마인덱스는 쿼리 처리과정에서 검색기, 후처리, 응답합성 등의 구성요소를 직접 설정할 수 있는 저수준 구성 API를 제공함
  • 이를 통해서 단순한 기본 설정을 넘어서, 각 처리단계릐 동작 방식을 세부적으로 조정할 수 있음

 

 

쿼리엔진

 

728x90
반응형