본문 바로가기
C.W.K.
Stream
Lesson 05 of 10 · published

프롬프트 안에서 출처 인용하기

~14 min · context, citations, grounding

Level 0수련생
0 XP0/100 lessons0/14 achievements
0/120 XP to next level120 XP to go0% complete

출처를 가리키지 못하는 답은 믿음을 요구할 뿐이야

근거 없는 답은 자신감으로 신뢰를 얻으려는 속임수와 다르지 않아. 사용자가 문장마다 어느 청크에서 왔는지 확인할 수 있으면 두 가지가 달라져. 인용한 청크에 실제로 그 내용이 없는 환각을 찾아낼 수 있고, 답을 얼마나 믿을지도 근거에 맞춰 조절할 수 있어. 인용은 장식이 아니라 검증 장치야.

청크에 안정적인 이름을 줘

각 청크는 프롬프트 안에서 chunk-7이나 실제 document_id처럼 실행마다 흔들리지 않는 ID를 받아야 해. 종합 프롬프트에는 모든 사실 주장이 대괄호로 감싼 ID로 끝나야 한다고 명시해. 여러 청크가 같은 주장을 받치면 ID를 모두 적고, 어느 청크에도 근거가 없다면 그 사실도 분명히 표시하게 해.

제공업체가 지원하는 인용 기능

Anthropic의 Citations 기능은 응답과 함께 구조화된 인용을 돌려주며, 출력의 어느 구간이 입력의 어느 구간을 근거로 삼았는지 연결해. OpenAI와 Gemini에서는 이 연결을 애플리케이션 계층에서 처리해. 구조화 인용 기능이 있으면 먼저 쓰고, 없다면 대괄호 ID 방식으로 돌아가면 돼.

Code

인용을 요구하는 종합 프롬프트·markdown
# System
Answer using only <context>.
Every factual claim must end with [<chunk-id>] referencing a chunk in <context>.
If no chunk supports a claim, prepend "Unverified: " to the sentence.

# User
Question: {{q}}

<context>
[chunk-1] ...
[chunk-2] ...
[chunk-3] ...
</context>

External links

Exercise

RAG 종합 프롬프트에 대괄호 ID 인용을 넣어봐. 인용한 청크에 해당 주장이 실제로 없으면 실패로 표시하는 검증기도 코드로 작성해.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.