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

Body: 선택적 Source와 Reference

~25 min · sources, retrieval, selectivity

Level 0Window Watcher
0 XP0/50 lessons0/13 achievements
0/100 XP to next level100 XP to go0% complete

Body는 지금 쓰는 만큼만

body는 spine이랑 tail 사이 층이야. 이번 turn에 다루는 소스 파일, retrieval로 끌어온 문서, 아직 쓸모 있는 최근 tool 결과가 여기 들어가. 골라 담는 게 핵심이고. repo나 지식베이스를 통째로 body에 올리는 것 — 이 층이 막으려는 게 정확히 그거야.

출처를 붙여둬

body에 올리는 건 전부 짧은 머리말을 달아두면 좋아. 어디서 왔는지, 언제 올렸는지, 왜 여기 있는지. 모형이 이걸로 사실의 위치를 잡고, 낡았거나 상관없는 자료는 덜 믿거든. 나중에 이 prompt를 뜯어볼 사람한테도 도움이 되고.

Body는 바뀌라고 있는 거야

spine이랑 달리 body는 원래 바뀌는 층이야. 새 질문이 오면 새 자료를 올려. attention이 안 가게 된 옛 자료는 내려보내고. body가 계속 그대로면 보통은 워크플로가 한꺼번에 너무 많이 올려놓고 정작 필요할 때 갈아 끼우질 않는다는 신호야.

body는 지금 쓰는 만큼이지 자료 창고가 아니야. CPU cache처럼 다뤄 — 필요할 때 올리고, 낡으면 내려.

Code

출처 붙인 body 구획·xml
<sources>
  <file path="backend/auth.py" loaded="this-turn" reason="task references auth flow">
    ... contents ...
  </file>
  <retrieval doc="OAuth RFC 6749" relevance=0.91 loaded="this-turn">
    ... excerpt ...
  </retrieval>
</sources>
Body 채우는 패턴·python
def build_body(task):
    body = []
    for path in task.required_files:
        body.append({"kind": "file", "path": path, "text": read(path)})
    for q in task.retrieval_queries:
        for hit in retrieve(q, top_k=3):
            body.append({"kind": "retrieval", "doc": hit.id, "text": hit.text})
    return body

External links

Exercise

code review 워크플로에 쓸 body 구획을 설계해봐. 소스 파일 항목 하나, retrieval 항목 하나. 둘 다 출처랑 여기 있는 이유를 달아서.
Hint
사실이 어디서 왔는지를 모형이 짐작해야 하는 상황이면, 그 prompt는 표시가 빠진 거야.

Progress

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

댓글 0

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

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