RAG2026-5일9차시 · 임베딩 이해17 / 19← 이전목차다음 →MetaContents

9차시. 임베딩 이해

퀴즈 2 — 모델이 바뀌면 인덱스 다시 만들기

임베딩 모델 이름이 저장 때와 다르면 인덱스를 다시 만들어야 하는지 반환하세요.

빈칸 코드에서 시작합니다.

Python
def must_rebuild(saved_model, current_model):
    pass
결과 보기 (예시 풀이)
Python
# 퀴즈 2. 임베딩 모델이 바뀌었으면 인덱스를 다시 만들어야 하는지
# 모델마다 좌표계가 달라서, 저장할 때와 검색할 때의 모델이 같아야 합니다.

def must_rebuild(saved_model, current_model):
    # 이름이 다르면 좌표계가 다르므로 True(다시 만들어야 함)
    return saved_model != current_model

# 인덱스를 저장할 때 적어 둔 모델 이름이라고 가정합니다.
saved = "text-embedding-3-small"

# 확인 1: 같은 모델 → 다시 만들 필요 없음 (False)
print(must_rebuild(saved, "text-embedding-3-small"))

# 확인 2: large로 바꿈 → 차원도 1536에서 3072로 바뀌므로 다시 만듦 (True)
print(must_rebuild(saved, "text-embedding-3-large"))

# 확인 3: 한국어 로컬 모델로 바꿈 → 역시 다시 만듦 (True)
for model in ["text-embedding-3-small", "ko-sroberta-multitask"]:
    action = "다시 만들기" if must_rebuild(saved, model) else "그대로 쓰기"
    print(f"{model}: {action}")

실행 결과

출력
False
True
text-embedding-3-small: 그대로 쓰기
ko-sroberta-multitask: 다시 만들기

채점 기준: 이름이 같으면 False.

관련 교안: 9차시 「7. 임베딩 모델 고르기」

← 이전 절9차시 · 퀴즈 1 — 임계값으로 관련 여부 판단하기다음 절 →9차시 · 정리