Trajectory
2026년 7월 16일
- Trajectory = 에이전트가 목표를 달성하기까지 거친 모든 사고·도구 호출·관찰의 시퀀스. "이 답이 어떻게 나왔는가"를 시간 순으로 정렬한 기록.
- 평가·디버깅·재현·학습의 단위가 된다 — 단순 input/output보다 훨씬 정보가 풍부.
표준 형태
JSON
왜 보존해야 하나
- 사후 디버깅 — 같은 입력에 다른 출력이 나왔을 때 분기점을 찾는 유일한 단서.
- 회귀 평가 —
expected_trajectory와 실제를 비교해 "도구를 올바르게 골랐나" 측정. - 자기 학습 — Reflexion은 실패한 trajectory를 다음 시도 메모리로 사용.
- 사용자에게 근거 제공 — "왜 이렇게 답했나"를 보여줄 수 있다.
수집 방법
- Observability 시스템(OpenTelemetry, LangSmith)에서 트레이스로 자동 수집.
- 또는 그래프 상태에 명시적으로 push.
Python
Trajectory-based Evaluation
Python
- 최종 답뿐 아니라 경로의 효율성도 평가 가능.
압축
- trajectory가 길어지면 단기 메모리가 폭주.
- 요약·청크 단위로 압축해 다음 턴 컨텍스트로 넣는다.
사용자 노출
- 일부 에이전트(특히 Cursor·Devin류)는 trajectory를 UI에 그대로 펼친다 → 신뢰감.
- 단, 내부 사고가 그대로 보여 보안·UX 측면에서 조정 필요.
관련
- ReAct 패턴 — trajectory의 텍스트 표현.
- Reflexion — 실패 trajectory를 다음 시도에 활용.
- Evaluation · LLM-as-Judge — trajectory를 평가.
- Observability — 자동 수집 인프라.