중간 내용이 잊히는 현상
위치에 따른 주의 효과
중간 내용이 잊히는 현상은(는) CoddyKit의 무료 AI Prompt Engineering 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 AI Prompt Engineering 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. AI Prompt Engineering 강의에는 총 4개의 강의가 포함되어 있습니다.
중간 손실 효과
긴 컨텍스트 모델에서 검색 정확도는 위치에 따라 U자형 곡선을 따릅니다. 컨텍스트의 시작과 끝에 있는 사실은 잘 회상되지만, 중간에 있는 사실은 가장 잘 회상되지 않습니다. 이것이 ‘중간 손실’ 효과입니다.
- 이는 무작위 현상이 아니라 어텐션과 학습의 특성입니다.
- 답이 명확하게 포함되어 있을 때에도 지속됩니다.
위치는 중립적이지 않으므로, 이를 고려하여 설계해야 하는 신뢰성 요소입니다.
중간이 취약한 이유
중간에서는 여러 압력이 겹쳐집니다. 위치 편향은 최근 토큰과 가장 이른 토큰을 선호하고, 학습 데이터에는 ‘답이 시작이나 끝 가까이에 있는’ 패턴이 과도하게 많으며, 내부에 경쟁하는 방해 요소가 너무 많아 각각의 사실에 집중하는 어텐션이 희석됩니다.
모델에서 이 편향을 제거할 수는 없지만, 이에 맞서지 않도록 할 수는 있습니다.
중요한 콘텐츠를 가장자리에 배치하기
가장 먼저 적용할 수 있고 가장 신뢰할 수 있는 완화책은 모델이 반드시 사용해야 하는 내용을 경계에 배치하는 것입니다. 작업 지침과 가장 가치가 높은 근거는 중앙에 묻지 말고 위쪽과 아래쪽 가까이에 두십시오.
- 작업과 핵심 사실을 앞에 배치하십시오.
- 맨 끝에 핵심 지침을 반복하십시오(‘작업 알림: ...’).
context = (
TASK_INSTRUCTION +
KEY_EVIDENCE +
bulk_supporting_material +
TASK_REMINDER # restate at the tail
)관련성에 따른 배치
검색된 청크의 순서를 제어할 수 있다면, 이를 검색 점수 순서대로 앞에서 뒤까지 나열하지 마십시오. 가장 관련성이 높은 청크가 양쪽 가장자리에 오고 가장 관련성이 낮은 청크가 중간을 채우도록 교차 배치하여 U자 곡선을 의도적으로 활용하십시오.
이러한 ‘가장자리 배치’는 중간 위치에서 발생하는 손실의 상당 부분을 회복할 수 있습니다.
def edge_load(chunks):
# chunks sorted by relevance desc
head, tail = [], []
for i, c in enumerate(chunks):
(head if i % 2 == 0 else tail).append(c)
return head + list(reversed(tail))건초 더미 줄이기
중간 손실을 해결하는 가장 저렴한 방법은 중간을 줄이는 것입니다. 적극적인 사전 필터링, 즉 조립 전에 관련 없는 청크를 제거하면 사실이 사라지는 내부 영역이 줄어들고 중요한 내용에 어텐션이 집중됩니다.
15k 토큰의 집중된 프롬프트에는 취약한 중간이 거의 없지만, 600k 토큰 프롬프트는 대부분이 중간입니다.
표지와 색인
모델에 지도를 제공하십시오. 맨 위에 목차를 두고 명확한 섹션 앵커를 추가하면 모델이 원시적인 위치 기반 회상에 의존하지 않고 관련 영역으로 이동할 수 있습니다.
- 섹션에 번호를 매기고 질문에서 해당 번호를 참조하십시오.
- 모델이 검색할 수 있는 SECTION 7: PRICING과 같은 명시적인 앵커를 추가하십시오.
구조는 위치의 신뢰성을 부분적으로 대신합니다.
# Top of prompt
# INDEX: [S1 Overview] [S2 Risks] [S3 Pricing] [S4 Appendix]
# Question: 'Using S3 only, what is the renewal fee?'답변 전에 검색을 강제하기
답변하기 전에 관련 자료가 어디에 있는지 열거하도록 모델에 지시하십시오. 먼저 근거의 위치를 찾게 하면 중간을 건너뛰려는 경향을 상쇄할 수 있습니다.
‘먼저 갱신 수수료를 언급하는 모든 섹션을 앵커와 함께 나열한 다음 답변하십시오.’와 같이 명시적으로 검색하면 직접 질문할 때 놓칠 수 있는 중간의 콘텐츠가 드러납니다.
ask = (
'Step 1: list all anchors mentioning the topic. '
'Step 2: quote the relevant line from each. '
'Step 3: answer using only those quotes.'
)위치를 바꾸어 다시 묻기
중요한 사실이 사각지대에 놓여 회상이 불안정하다면, 해당 사실을 가장자리로 옮겨 호출을 다시 실행하십시오. 여러 사실이 필요한 작업에서는 어떤 사실이 강한 위치를 차지하는지 번갈아 바꾸어 여러 번 실행하고 결과를 조정할 수 있습니다.
위치 순환은 하나의 배치가 불안정할 때 사용할 수 있는 실용적인 견고성 기법입니다.
포괄성을 위한 청크 분할 및 병합
철저한 작업(‘모든 위반 찾기’)에서는 한 번에 거대한 패스로 실행하면 중간의 항목을 놓치게 됩니다. 취약한 중간이 생기지 않을 만큼 작은 윈도우로 나누고, 윈도우를 서로 겹치게 구성하여 각각 실행한 다음 결과를 병합하고 중복을 제거하십시오.
- 겹치는 부분이 있으면 경계에서 놓치는 일을 방지할 수 있습니다.
- 병합 단계에서 중복과 충돌을 조정합니다.
coverage 작업에서는 하나의 거대한 패스보다 여러 개의 작은 패스가 더 유리합니다.
def coverage(doc, win, overlap):
out = []
for w in windows(doc, win, overlap):
out += extract(w)
return dedupe(out)자신만의 U자 곡선 측정하기
이 효과의 심각도는 모델과 프롬프트 형태에 따라 달라집니다. 이를 특성화하십시오. 다양한 깊이에 카나리를 삽입하고 회상률을 그래프로 표시하십시오. 곡선을 사용하여 해당 모델의 안전한 컨텍스트 길이와 가장자리 배치 정책을 결정하십시오.
통념이 아니라 측정된 동작을 기준으로 설계하십시오.
depths = [0.0, 0.25, 0.5, 0.75, 1.0]
recall = {d: probe_canary_at(d) for d in depths}
# Expect a dip around 0.5위치 견고성 플레이북
중간 손실을 극복하려면 건초 더미를 줄이고, 가장 관련성이 높은 콘텐츠를 가장자리에 배치하며, 작업을 끝부분에서 다시 명시하고, 색인을 추가한 뒤 위치를 찾고 답변하도록 검색을 강제하십시오. 다시 물을 때는 위치를 순환하고, 철저한 coverage를 위해 청크 분할 및 병합을 사용하십시오. 무엇보다도 모델의 곡선을 측정하고 그에 맞게 설계하십시오.
빠른 확인
반드시 사용해야 하는 단일 사실과 이를 뒷받침하는 많은 컨텍스트가 있으며, 모델이 때때로 그 사실을 무시한다는 것을 알아차렸습니다.
복습: 위치 기반 어텐션 효과
긴 컨텍스트의 회상은 U자형입니다. 가장자리는 신뢰할 수 있지만 중간은 그렇지 않습니다. 건초 더미를 줄이고, 가장 관련성이 높은 청크를 가장자리에 배치하며, 작업을 끝부분에서 다시 명시하고, 색인을 추가한 뒤 위치를 찾고 답변하도록 검색을 강제하십시오. 다시 물을 때는 위치를 순환하고, 철저한 coverage를 위해 청크 분할 및 병합을 사용하십시오. 균일한 회상을 신뢰하지 말고 모델의 실제 곡선을 측정하여 그에 맞게 배치를 설계하십시오.
자주 묻는 질문
“중간 내용이 잊히는 현상” 강의는 무료인가요?
네 — “중간 내용이 잊히는 현상” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 AI Prompt Engineering 강의 전체를 잠금 해제할 수 있습니다. AI Prompt Engineering 강의에는 총 4개의 강의가 포함되어 있습니다.
“중간 내용이 잊히는 현상”에서 뭘 배우나요?
위치에 따른 주의 효과 브라우저에서 직접 실행하는 실습 코드로 AI Prompt Engineering을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
AI Prompt Engineering을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 AI Prompt Engineering은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.
“중간 내용이 잊히는 현상” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 AI Prompt Engineering 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 AI Prompt Engineering 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- 백만 토큰 컨텍스트 창
- 중간 내용이 잊히는 현상
- 대규모 프롬프트 구조화
- 긴 접두사 캐싱