RAG를 활용할 때 임베딩과 vector search에 대해

LLM을 활용할 때 추가 Context를 제공하기 위해 RAG를 활용합니다. 이 때


  1. RAG를 텍스트 그대로 저장하지 않고 embedding을 한 후에

  2. vector database에 저장하고.

  3. vector database에서 vector search를 통해 내가 원하는 값과 가장 근사한 vector를 가져와서

  4. LLM의 Context로 넣어주게 됩니다.


embedding, vector store, vector search 모두 대충 뜻인지 알 것 같은데 정확하게 이해하기는 어렵습니다. 그래서 이 내용을 잘 설명한 미디엄 글을 가져왔는데요. 요약하자면


  • embedding:

    • 목적: 데이터를 AI 처리에 적합한 형태로 변환하여 유사성과 거리의 표현을 강조합니다.

    • 예시: 거의 비어있는 로션 병을 적은 수의 분류된 병으로 압축하는 것과 유사합니다.

    • 기술 설명: 고효율 AI 알고리즘 처리를 위한 고차원 희소 데이터를 저차원 밀집 표현으로 변환합니다.

  • vector database:

    • 설명: 원본 데이터와 그 벡터화된 형태를 모두 유지하는 저장 솔루션으로, 효율적인 색인 생성 및 검색을 가능하게 합니다.

  • vector search:

    • 장점: 데이터 임베딩 내의 거리 개념을 활용하여 전통적인 키워드 검색보다 우수한 검색 기능을 제공합니다.

    • 기능: 정확한 일치가 아닌 유사성을 기반으로 검색을 수행하여 "고양이"와 "새끼 고양이"와 같은 관련 콘텐츠를 발견할 수 있도록 합니다.


그리고 vector search에는 아래 두가지 방법을 많이 사용합니다


  • 최근접 이웃 (kNN):

    • 개념: 데이터셋 내에서 주어진 쿼리 포인트에 가장 가까운 데이터 포인트를 식별합니다.

    • 사용: 지정된 쿼리와 가장 유사한 항목을 찾음으로써 검색을 용이하게 합니다.

  • 근사 최근접 이웃 (ANN):

    • 이유: 대규모 데이터셋에 대한 k-NN의 확장성 문제를 속도를 위해 일부 정확성을 희생하면서 해결합니다.

    • 메커니즘: 효율적인 근사 최근접 이웃 검색을 위해 공간을 반복적으로 분할하는 하이퍼플레인 사용과 같은 전략을 적용합니다.


자세한 내용은 아래 글을 참고해주세요!


https://kozyrkov.medium.com/what-are-embeddings-vector-databases-vector-search-k-nn-ann-9eb35f715c94

What are: Embeddings? Vector Databases? Vector Search? k-NN? ANN?

Medium

What are: Embeddings? Vector Databases? Vector Search? k-NN? ANN?

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2024년 2월 4일 오전 10:57

댓글 0

    함께 읽은 게시물

    < 쿠팡의 창업자를 직접 보며 배운 것: 리더의 크기가 전부다 >

    1

    ... 더 보기

     • 

    댓글 1 • 저장 21 • 조회 1,702


    Next.js 프로젝트를 AWS EKS에 배포하며 배운 것들

    ... 더 보기

    쿠버네티스를 활용한 클라우드 네이티브 데브옵스 | 존 어런들 - 교보문고

    product.kyobobook.co.kr

    쿠버네티스를 활용한 클라우드 네이티브 데브옵스 | 존 어런들 - 교보문고

     • 

    저장 10 • 조회 1,159


    defer, 에러 핸들링과 비동기에서 어떻게 활용할까?

    d

    ... 더 보기

    defer (async throwing contexts)

    iOYES

    defer (async throwing contexts)

    AI(LLM) 애플리케이션의 발전 속도가 AI 지능(능력)의 발전 속도를 따라가지 못하고 있는 상태가 되었다. 즉, 이제 AI가 부족한 것이 문제가 아니라, AI의 능력을 100% 활용하지 못하고 있는 것이 문제인 상태가 되었다는 이야기.

    조회 536



    서버엔지니어의 시대적 고민

    ... 더 보기