이 노트북은 대화형 노트북입니다. 로컬에서 실행하거나 다음 링크를 사용할 수 있습니다:
서드파티 시스템에서 트레이스 가져오기
conversation_id를, 자식 식별자로 turn_index를 사용합니다.
다음 섹션의 변수는 사용자의 데이터셋, 파일 경로, W&B 프로젝트에 맞게 반드시 수정해야 합니다.
환경 설정
WANDB_API_KEY를 설정해 wandb.login()으로 로그인할 수 있도록 하세요(이 값은 Colab에 시크릿으로 제공하세요).
Colab에 업로드할 파일 이름을 name_of_file에 설정하고, 사용할 W&B 프로젝트를 name_of_wandb_project에 설정하세요.
name_of_wandb_project는 트레이스를 기록할 팀을 지정하기 위해 [TEAM_NAME]/[PROJECT_NAME] 형식으로도 설정할 수 있습니다.weave.init()를 호출해 Weave 클라이언트를 가져오세요.
데이터 로드
conversation_id와 turn_index를 기준으로 정렬하세요.
그러면 대화 턴이 conversation_data 아래 배열로 포함된 2개 열의 pandas 데이터프레임이 생성됩니다.
트레이스를 Weave에 기록하기
- 각
conversation_id마다 부모 Call을 생성합니다. turn_index순으로 정렬된 자식 Call을 생성하기 위해 턴 배열을 순회합니다.
- Weave Call은 Weave 트레이스와 동일합니다. 이 Call에는 부모가 있거나 연결된 자식이 있을 수 있습니다.
- Weave Call에는 feedback 및 메타데이터처럼 다른 항목도 연결할 수 있습니다. 이 예제에서는 inputs와 output만 연결하지만, 데이터가 이를 제공하면 임포트할 때 이러한 항목도 추가할 수 있습니다.
- Weave Call에는
created와finished가 있습니다. 이는 실시간으로 추적되도록 설계되었기 때문입니다. 하지만 여기서는 사후 임포트이므로, 오브젝트를 정의하고 서로 연결한 다음 생성과 종료를 한 번에 처리합니다. - Call의
op값은 Weave가 같은 형태의 Call을 분류하는 방식입니다. 이 예제에서는 모든 부모 Call의 유형이Conversation이고, 모든 자식 Call의 유형이Turn입니다. 필요에 따라 이를 수정할 수 있습니다. - Call에는
inputs와output이 있을 수 있습니다.inputs는 생성 시 정의되고,output은 Call이 종료될 때 정의됩니다.
결과: Weave에 로깅된 트레이스
Conversation 및 Turn 오퍼레이션 아래에 그룹화되어 표시됩니다.
트레이스:


선택 사항: 평가 실행을 위해 트레이스 내보내기

결과
