Vector Search

2024. 2. 9. 15:57·LLM

* 이 글은 패스트캠퍼스 [The RED : 프롬프트 엔지니어링, LLM(ChatGPT) 기반의 AI 서비스 개발] 강의를 듣고 작성되었습니다.

 

프롬프트 엔지니어링에서 답변을 위해서 적절한 컨텍스트를 제공하는 것이 가장 중요합니다. 적절한 컨텍스트를 제공하는 방법이 벡터 서치입니다. 벡터 서치에 사용되는 개념은 아래와 같습니다.

 

Embedding

  • 텍스트를 실수의 집합인 벡터로 만드는 것
  • 단어가 어느 차원에 위치하는지 표현
  • 단어가 유사한 의미를 가지면 근처에 위치하도록 함

Vector Search

  • 임베딩 스페이스에서 서로 유사한 것들끼리 찾도록 함
  • 각 요소간의 거리를 distance 혹은 similarity라고 함
  • Semantic Search는 의미 기반 서치를 의미

ANN

차원이 커지면서 고차원의 벡터를 비교하는 데 속도의 문제가 발생합니다. 이를 해결하기 위해 모든 벡터를 비교하지 않고 근사값을 찾는 ANN(Approximate Nearest Neighbor) 방법을 사용할 수 있습니다. 이 때, 속도와 정확도가 모두 향상될 수는 없어 검색에는 속도와 성능의 트레이드 오프가 존재합니다.

 

Hybrid Search

  • 키워드 검색을 통해 DB에서 후보 데이터 검색
  • 후보 데이터가 어떤 ID 갖고 있는지 확인
  • 사용자가 요청한 내용과 유사한 ID를 벡터 서치로 가져옴

 

'LLM' 카테고리의 다른 글

Positional Embedding  (0) 2024.02.11
Tuning  (0) 2024.02.09
프롬프트 엔지니어링  (0) 2024.02.09
Attention  (0) 2024.01.22
Word Embedding  (0) 2024.01.20
'LLM' 카테고리의 다른 글
  • Positional Embedding
  • Tuning
  • 프롬프트 엔지니어링
  • Attention
봄프로
봄프로
Data Scientist
  • 봄프로
    To be professional
    봄프로
    • 분류 전체보기 (59)
      • LLM (16)
      • Data Science (24)
      • ADP (8)
      • Domain (8)
      • Etc (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 인기 글

  • 태그

    YOLO
    KBI
    오블완
    티스토리챌린지
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
봄프로
Vector Search
상단으로

티스토리툴바