본문 바로가기
인공지능/생성형 AI

[생성형 AI] 초보자도 쉽게 이해하는 벡터DB 개념

by 클레어몬트 2025. 3. 10.

ㅇ벡터 DB(Vector DataBase): 데이터를 벡터(Vector)로 변환하여 저장하고, 이를 빠르게 검색할 수 있도록 설계된 DB


주로 AI, 머신러닝, RAG(Retrieval-Augmented Generation)에서 유사한 데이터 검색에 사용된다

 

💡 쉽게 말하면?

일반적인 데이터베이스(SQL, NoSQL)는 키워드 기반 검색을 하지만, 벡터 DB는 "유사한 의미"를 가진 데이터를 검색한다!

 

 


그렇다면 벡터(Vector)란?

  • 벡터는 숫자로 이루어진 배열(예: [0.2, -0.5, 0.8, ...])로, 텍스트, 이미지, 오디오 등의 데이터를 수치화하여 표현한 것이다!
  • 같은 의미를 가진 데이터는 "벡터 값이 비슷하다"

📝 예제: "강아지"와 "개"는 비슷한 의미이므로 벡터 값도 유사함

"강아지" → [0.12, 0.87, 0.45, ...]
"개"     → [0.14, 0.89, 0.40, ...]
"컴퓨터" → [-0.75, 0.23, -0.90, ...]  (전혀 다른 의미)
 

 

✅ 벡터 DB는 이런 벡터 값을 기반으로 "가장 유사한 데이터"를 빠르게 찾는 역할을 한다!


벡터 DB의 필요성

❌ 기존 검색 방식의 한계

일반적인 데이터베이스(SQL, NoSQL)는 키워드 기반 검색을 사용함.
즉, 정확한 단어를 입력해야 검색됨.

💬 예시)
❌ "바다에 사는 동물" 검색 시 "돌고래"가 나오지 않을 수 있음!
(키워드 "바다 동물"이 포함되지 않기 때문)

✅ 하지만 벡터 DB를 활용하면?

  • 텍스트의 의미를 기반으로 검색 가능 → "바다에 사는 동물"을 검색하면 "돌고래", "고래", "해파리" 같은 관련 데이터도 검색됨
  • 이미지, 오디오 같은 비정형 데이터도 검색 가능 → 비슷한 이미지 찾기, 음성 검색 등 가능!

벡터 DB의 주요 기능

유사한 데이터 검색 (Nearest Neighbor Search, NNS)
빠른 검색 속도 (고차원 데이터 처리 최적화)
텍스트, 이미지, 오디오 등 다양한 데이터 저장 가능

(활용 예시)

  • AI 챗봇(RAG 기반 검색) → 문서를 벡터로 변환 후, 질문과 가장 관련 있는 문서 검색
  • 이미지 검색 → 특정 이미지와 비슷한 이미지 찾기
  • 음성 인식 → 입력된 음성과 유사한 발음을 검색
  • 추천 시스템 → 사용자의 검색/구매 내역과 비슷한 제품 추천

대표적인 벡터 DB 종류

🔹 FAISS(Facebook AI Similarity Search) → Facebook 개발, 빠른 벡터 검색
🔹 Pinecone → 클라우드 기반 벡터 DB, 실시간 검색 지원
🔹 Weaviate → 오픈소스 벡터 DB, 자연어 검색 최적화
🔹 Milvus → AI 최적화 벡터 DB, 대규모 데이터 검색에 강함
🔹 ChromaDB → RAG와 연동하기 쉬운 벡터 DB


 

 

 

[정리]

벡터DB는 일반 SQL/NoSQL DB와 달리, "유사한 의미"를 찾을 수 있는 DB!
텍스트, 이미지, 오디오 등을 벡터(Vector)로 변환하여 저장하고 검색!
AI, RAG(검색+생성), 추천 시스템, 이미지 검색 등에 필수적인 기술!

 

📌 한마디로 "벡터 데이터베이스는 AI가 '비슷한 의미'를 이해하고 검색할 수 있도록 도와주는 DB"

 

 

 

 

 

 

참고 및 출처: 인공지능을 위한 선형대수(Khan Academy)

#SK, #SKALA, #SKALA1기