- 프롬프트, 모델 응답, 도구 호출을 포함한 각 롤아웃 트래젝터리를 step별로 살펴봅니다.
- step, 샘플 인덱스, 롤아웃 번호, 실험 이름을 기준으로 트래젝터리를 Filter합니다.
- 여러 트래젝터리를 나란히 비교하여 트레이닝 step 전반의 에이전트 동작을 디버그합니다.
사전 요구 사항
- W&B 계정 및 API 키.
- 롤아웃 트레이싱을 지원하는 VERL 설치 환경. 롤아웃 트레이싱은 verl#2345에서 추가되었습니다.
- 비동기 롤아웃 설정. 트레이싱은 비동기 롤아웃에만 적용되며, 동기 롤아웃은 트레이스되지 않습니다.
Weave 트레이싱 활성화
actor_rollout_ref.rollout.trace.backend=weave: 트레이스 백엔드로 Weave를 선택합니다.actor_rollout_ref.rollout.mode=async: vLLM 또는 SGLang에서 비동기 롤아웃을 활성화합니다. 트레이싱은 동기 롤아웃에는 영향을 미치지 않습니다.trainer.project_name: 트레이스와 메트릭을 log할 프로젝트를 설정합니다.trainer.experiment_name: 실험 이름을 설정합니다.trainer.logger=['console','wandb']: Weave와 함께 wandb 로거를 활성화하여 메트릭과 트레이스가 동일한 프로젝트에 표시되도록 합니다.
weave.init()를 호출할 필요가 없습니다.
트레이스 볼륨 조정
ppo_trainer.yaml 설정 파일에서 다음 필드를 설정하여 볼륨을 제한할 수 있습니다.
max_samples_per_step_per_worker: worker가 각 트레이닝 step에서 트레이스할 고유 샘플 수입니다. 기본값은null이며, 모든 샘플을 트레이스합니다.token2text: 디코딩된prompt_text와response_text를ToolAgentLoop.run출력에 추가하려면True로 설정합니다. 성능을 위해 기본값은False입니다. Weave UI에서 프롬프트와 Completions를 직접 조회하려면 활성화하세요.
트레이스 보기
추가 함수 트레이싱
rollout_trace_op:weave.op에 매핑되는 데코레이터로, 클래스 인스턴스의 메서드를 트레이싱 대상으로 표시합니다. 기본적으로 데코레이터가 적용되는 메서드는 소수에 불과합니다. 맞춤형 에이전트 루프 또는 도구 구현의 메서드에 이 데코레이터를 추가하여 더 많은 세부 정보를 캡처할 수 있습니다.rollout_trace_attr: 트래젝터리 진입을 표시하고 트래젝터리 메타데이터(샘플 인덱스, step, 롤아웃 번호, 실험 이름)를 연결하는 컨텍스트 관리자입니다. 새 에이전트 유형을 도입하는 경우 트레이스가 run과 연결되도록 해당 트래젝터리의 진입점을rollout_trace_attr로 래핑하세요.