
코딩 에이전트가 중요해질수록 평가의 초점은 최종 답변만으로는 부족해집니다. 실제로 어떤 파일을 읽었고, 어떤 판단을 했으며, 어떤 명령을 실행했는지까지 봐야 에이전트의 능력과 한계를 이해할 수 있습니다.
SynthTraces는 바로 그 과정을 합성 데이터로 만드는 최소 코드베이스입니다. Julien Chaumond가 공개한 이 프로젝트는 Pi를 사용해 코딩 에이전트 세션 트레이스를 생성합니다.1 핵심은 “좋은 답변 모음”이 아니라, 에이전트가 작업을 진행하는 흐름 자체를 기록하는 데 있습니다.
SynthTraces가 만드는 것: 코딩 에이전트 세션 트레이스
SynthTraces의 한 세션은 두 모델이 역할을 나눠 진행합니다. HF Inference Providers로 제공되는 오픈 모델은 코딩 에이전트 역할을 맡고, read, write, edit, bash 같은 도구를 사용합니다. 반대로 llama.cpp로 실행되는 소형 로컬 모델은 인간 사용자 역할을 맡아 질문을 이어갑니다.1
이 구조가 흥미로운 이유는 단순히 질문과 답변을 합성하는 데 그치지 않기 때문입니다. 코딩 에이전트가 코드베이스를 읽고, 필요한 정보를 찾고, 답을 구성하는 과정을 세션 단위로 남깁니다. 즉 SynthTraces가 만드는 것은 대화 데이터라기보다 “작업 기록”에 가깝습니다.
프로젝트는 에이전트 모델 20개, 사용자 모델 3개, 코드베이스 20개, 시작 질문 20개를 조합해 총 24,000개 세션을 만들 수 있는 매트릭스를 제시합니다.1 작은 코드베이스지만, 반복 가능한 방식으로 다양한 에이전트 실행 흔적을 만들 수 있다는 점이 핵심입니다.
데이터는 어떻게 생겼나
Hugging Face의 synthtraces 데이터셋에는 세션별 JSONL 파일이 저장됩니다. 예시 세션 파일 경로에는 sessions/transformers.js/가 포함되어 있으며, 해당 세션은 2026-06-03T12:35:15.061Z 타임스탬프의 사용자 메시지로 시작합니다.2
이 세션에서는 사용자가 저장소의 주요 작성자를 묻고, 어시스턴트 모델 huggingface/zai-org/GLM-5.1이 시간순으로 답합니다.2 답변 메타데이터에는 입력 토큰 수, 출력 토큰 수, 캐시 토큰 수가 함께 기록됩니다.2
예시 답변에서 어시스턴트는 Transformers.js 저장소의 주요 작성자를 커밋 수 기준으로 요약하며, Joshua Lochner가 1,817개 커밋을 작성한 것으로 기록합니다.2 또한 Transformers.js를 브라우저 또는 JavaScript 런타임에서 머신러닝 모델을 실행하는 Hugging Face JavaScript 라이브러리로 설명합니다.2
이런 구조의 장점은 명확합니다. 결과만 남는 것이 아니라, 질문과 답변, 모델 정보, 시간순 흐름, 토큰 사용량 같은 분석 가능한 단서가 함께 남습니다. 에이전트를 평가하려는 입장에서는 “무엇을 답했는가”뿐 아니라 “어떤 조건에서 어떻게 답했는가”를 볼 수 있습니다.
왜 트레이스가 중요한가
에이전트 트레이스는 단순 로그가 아닙니다. Hugging Face 블로그는 에이전트가 코드베이스를 검색하고, 실패하고, 방향을 바꾸는 과정 자체를 의사결정의 밀도 높은 기록으로 봅니다.3
이 기록은 크게 세 가지 실용적 가치로 이어집니다.
첫째, 에이전트 학습 데이터가 될 수 있습니다. 최종 정답만 학습하는 것이 아니라, 문제를 풀어가는 절차를 데이터로 다룰 수 있습니다.
둘째, 실패 패턴을 찾는 진단 데이터가 됩니다. 최근 연구도 대량의 실행 트레이스에서 반복되는 행동 패턴을 찾아 성능 개선에 활용하는 문제를 다룹니다.4
셋째, 사람이나 다른 에이전트가 나중에 “왜 이런 결정이 내려졌는지”를 추적하는 기억층이 될 수 있습니다. 코드 변경이나 답변의 결과만 남을 때보다, 판단 과정이 함께 남을 때 디버깅과 검토가 쉬워집니다.
SynthTraces에서 배울 점
SynthTraces의 의미는 거대한 프레임워크를 제공한다는 데 있지 않습니다. 오히려 작고 반복 가능한 방식으로 코딩 에이전트의 세션 트레이스를 만들 수 있다는 점이 중요합니다.
코딩 에이전트를 평가하거나 튜닝하려는 팀이라면 먼저 실행 과정을 남겨야 합니다. 어떤 모델이 어떤 질문을 받았고, 어떤 도구를 사용했으며, 어떤 답변을 만들었는지 기록되어야 비교와 개선이 가능합니다.
SynthTraces는 그 출발점을 보여줍니다. 에이전트 시대의 데이터는 단순한 입출력 쌍을 넘어, 작업의 흐름과 판단의 흔적까지 포함해야 한다는 점입니다.
1GitHub - julien-c/synthtraces
2Datasets: julien-c / synthtraces - transformers.js session
3Software Forgets: Agent Traces Are the Memory
4Insights Generator: Systematic Corpus-Level Trace Diagnostics for LLM Agents
이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.
