TechBridge

벡터 임베딩 세계관 & pgvector 설치 — 임베딩이란 무엇인가

← 목록으로

📋 실습 안내

✏️ CODE EDITOR (JSX)
▶ 실행 버튼을 눌러 코드를 테스트하세요.
👁️ 내 미리보기 내 코드 실행 결과
🎯 완성 미리보기 목표
위 에디터 코드를 수정해서 이 결과물과 똑같이 만들어보세요!
💡 TODO 주석을 채워서 위 결과물처럼 동작하게 만들어보세요
🤖 AI 선생님에게 질문하기 이번 강의 전용
  선생님이 답변 중이에요...
⚠️ 학습 관련 질문만 답변합니다. 관련 없는 질문은 자동으로 학습으로 유도됩니다.
Q1. 벡터 임베딩(Vector Embedding)의 올바른 설명은?
💡 임베딩은 텍스트, 이미지 등 비정형 데이터를 고차원 실수 벡터로 변환한 것입니다. 유사한 의미의 데이터는 벡터 공간에서 가까운 위치에 놓이므로, 수학적 거리 계산으로 유사도를 측정할 수 있습니다.
Q2. PostgreSQL에서 pgvector 확장을 활성화하는 올바른 명령은?
💡 PostgreSQL 확장은 CREATE EXTENSION 명령으로 활성화합니다. IF NOT EXISTS 옵션을 추가하면 이미 설치된 경우 오류 없이 무시됩니다. pgvector의 확장 이름은 "pgvector"가 아닌 "vector"입니다.
Q3. 1536차원 임베딩을 저장하는 올바른 컬럼 정의는?
💡 pgvector에서 벡터 컬럼은 vector(N) 형식으로 정의하며, N은 차원 수를 의미합니다. 차원 수는 사용하는 임베딩 모델에 따라 결정되며 (예: text-embedding-3-small = 1536), 저장 시 반드시 일치해야 합니다.
Q4. L2(유클리드) 거리로 가장 유사한 벡터를 검색하는 연산자는?
💡 pgvector에서 <-> 연산자는 L2(유클리드) 거리를 계산합니다. <=> 는 코사인 거리, <#> 는 음의 내적(inner product)을 반환합니다. L2 거리는 값이 작을수록 유사합니다.
Q5. 다음 중 pgvector를 사용할 때 반드시 지켜야 할 사항은?
💡 벡터 연산 시 차원이 일치하지 않으면 PostgreSQL이 오류를 발생시킵니다. 예를 들어 vector(384) 컬럼에 1536차원 벡터를 삽입하거나 검색하면 "expected 384 dimensions, not 1536" 오류가 납니다. 모델을 변경할 경우 컬럼 타입도 함께 변경해야 합니다.
🎉

퀴즈 통과!

점수: 0점 — 수고하셨습니다!

다음 강의로 →
😅

아쉽네요!

점수: 0점 — 70점 이상이 되어야 통과합니다.