11차시. Retriever 기초 실습
퀴즈 1 — 조각에 [1]부터 번호 붙여 문맥 만들기
조각 리스트에 [1]부터 번호를 붙여 하나의 문자열로 만드세요.
빈칸 코드에서 시작합니다.
def build_context(chunks):
pass결과 보기 (예시 풀이)
def build_context(chunks):
# 번호를 붙인 줄을 하나씩 모아 둘 리스트입니다.
lines = []
# enumerate(..., start=1)로 번호를 0이 아니라 1부터 셉니다.
# 모델이 쓰는 인용 번호 [1]과 맞추려는 것입니다.
for i, text in enumerate(chunks, start=1):
lines.append(f"[{i}] {text}")
# 줄바꿈으로 이어 붙여 문자열 하나로 돌려줍니다.
return "\n".join(lines)
# 조각이 두 개일 때: [1], [2]가 붙는지 봅니다.
chunks = ["상품 수령 후 7일 이내에 환불을 신청할 수 있습니다.",
"상품 불량은 30일 이내에 교환할 수 있습니다."]
print(build_context(chunks))
print("---")
# 조각이 하나일 때: [1]로 시작하는지 봅니다.
print(build_context(["운영 시간은 평일 09:00 ~ 18:00 입니다."]))
print("---")
# 조각이 없을 때: 빈 문자열이 나오는지 봅니다.
print(repr(build_context([])))
실행 결과
[1] 상품 수령 후 7일 이내에 환불을 신청할 수 있습니다.
[2] 상품 불량은 30일 이내에 교환할 수 있습니다.
---
[1] 운영 시간은 평일 09:00 ~ 18:00 입니다.
---
''채점 기준: 번호는 1부터. 인용 검사와 맞아야 한다.