W&B workspace는 차트를 사용자 지정하고 모델 결과를 탐색할 수 있는 개인용 샌드박스입니다. W&B workspace는 Tables 와 Panel sections 로 구성됩니다:
Tables : 프로젝트에 로깅된 모든 run이 프로젝트 테이블에 나열됩니다. run을 켜고 끄고, 색상을 변경하고, 테이블을 확장해 각 run의 notes, 설정, summary 메트릭을 확인하세요.
Panel sections : 하나 이상의 panels 를 포함하는 섹션입니다. 새 패널을 만들고 정리한 다음, Reports로 내보내 workspace의 스냅샷을 저장하세요.
Workspace에는 두 가지 주요 범주가 있습니다: 개인 Workspace 와 저장된 뷰 입니다.
개인 Workspace: 모델과 데이터 시각화를 심층적으로 분석할 수 있도록 맞춤 설정 가능한 Workspace입니다. Workspace 소유자만 변경 사항을 편집하고 저장할 수 있습니다. 팀원은 개인 Workspace를 볼 수 있지만, 다른 사람의 개인 Workspace는 변경할 수 없습니다.
저장된 뷰: 저장된 뷰는 Workspace의 협업용 스냅샷입니다. 팀의 누구나 저장된 Workspace 뷰를 보고, 편집하고, 변경 사항을 저장할 수 있습니다. 저장된 Workspace 뷰를 사용해 실험, Runs 등을 검토하고 논의하세요.
다음 이미지는 Cécile-parker의 팀원들이 만든 여러 개인 Workspace를 보여줍니다. 이 프로젝트에는 저장된 뷰가 없습니다:
맞춤형 Workspace 뷰로 팀 협업을 향상하세요. 저장된 뷰를 만들어 원하는 차트와 데이터 설정을 정리하세요.
개인 워크스페이스 또는 저장된 뷰로 이동합니다.
워크스페이스를 편집합니다.
워크스페이스 오른쪽 상단의 액션 ( ) 메뉴를 클릭합니다. 그런 다음 Save as a new view 를 클릭합니다.
새로 저장한 뷰는 워크스페이스 내비게이션 메뉴에 표시됩니다.
저장된 변경 사항은 저장된 뷰의 이전 상태를 덮어씁니다. 저장하지 않은 변경 사항은 유지되지 않습니다. W&B에서 저장된 워크스페이스 뷰를 업데이트하려면 다음 단계를 따르세요:
저장된 뷰로 이동합니다.
워크스페이스 내 차트와 데이터에 원하는 대로 변경합니다.
변경 사항을 확정하려면 저장 버튼을 클릭합니다.
워크스페이스 뷰 업데이트를 저장하면 확인 대화상자가 표시됩니다. 앞으로 이 안내를 표시하지 않으려면 저장을 확인하기 전에 다음부터 이 모달을 표시하지 않기 옵션을 선택하세요.
더 이상 필요 없는 저장된 뷰를 삭제합니다.
삭제하려는 저장된 뷰로 이동합니다.
뷰 오른쪽 상단의 메뉴 ( ) 버튼을 선택합니다.
Delete view 를 선택합니다.
삭제를 확인하여 워크스페이스 메뉴에서 해당 뷰를 제거합니다.
Workspace URL을 직접 공유해 사용자 지정한 Workspace를 팀과 공유하세요. Workspace 프로젝트에 액세스할 수 있는 모든 사용자는 해당 Workspace의 저장된 뷰를 볼 수 있습니다.
새 워크스페이스의 기본 설정 대신 기존 워크스페이스와 동일한 설정으로 워크스페이스를 만들려면 _워크스페이스 템플릿_을 사용하세요.
W&B는 Workspace에 다음 기본 설정을 적용합니다:
기본적으로 W&B에서는 워크스페이스에 빈 섹션을 표시하지 않습니다. 이 설정을 변경하면 워크스페이스에 빈 섹션을 표시할 수 있습니다.
기본적으로 W&B는 plot 제목을 기준으로 패널을 알파벳순으로 정렬하지 않습니다. 이 설정을 바꾸면 plot 제목을 기준으로 패널을 알파벳순으로 정렬할 수 있습니다.
기본적으로 W&B는 메트릭 이름의 첫 번째 접두사를 기준으로 패널을 섹션으로 구성합니다. 예를 들어 Workspace에 메트릭 a/b/c/d와 a/e/f가 포함되어 있으면 W&B는 이 메트릭들을 a라는 섹션으로 구성합니다. Workspace에 메트릭 a/b/c/d와 e/f/g가 포함되어 있으면 W&B는 이 메트릭들을 a 및 e라는 섹션으로 구성합니다.
기본 섹션 구성을 마지막 접두사를 기준으로 그룹화하도록 변경할 수도 있습니다. 예를 들어 Workspace에 메트릭 a/b/c/d와 a/e/f가 포함되어 있으면 W&B는 이 메트릭들을 d 및 f라는 섹션으로 구성합니다. Workspace에 메트릭 a/b/c/d와 e/f/g가 포함되어 있으면 W&B는 이 메트릭들을 d 및 g라는 섹션으로 구성합니다.
기본적으로 새 Workspace에서는 선형 플롯에 다음 기본 설정을 사용합니다:
스무딩 기본값 유형 Time weight EMA 가중치 0 스무딩 후 원본 표시 끔
데이터 기본값 포인트 집계 full fidelity
그룹화 기본값 차트에서 그룹화 사용 켬 그룹 집계 평균
표시 환경설정 기본값 run 이름에 색상 적용 켬 전체 run 이름 표시 끔 툴팁에 X 범위 표시 끔 툴팁 run 기본값 차트 간 확대/축소 동기화 끔 강조 표시된 run만 표시 끔
아무 Workspace나 열거나 새 Workspace를 만듭니다.
Workspace 오른쪽 상단에서 Settings 버튼을 클릭합니다.
패널에서 Workspace layout 을 선택합니다.
원하는 대로 Workspace 설정을 구성합니다.
워크스페이스 상단에서 Undo 및 Redo 화살표 아이콘 옆의 액션 ( ) 메뉴를 클릭합니다.
개인 워크스페이스 템플릿 저장 을 클릭합니다.
템플릿 설정을 검토한 다음 저장 을 클릭합니다.
새 워크스페이스는 기본 설정 대신 이 설정을 사용합니다.
워크스페이스 템플릿의 현재 설정을 확인하려면 다음 단계를 따르세요.
아무 페이지에서나 오른쪽 상단의 사용자 아이콘을 선택합니다. 드롭다운에서 User Settings 를 선택합니다.
개인 워크스페이스 템플릿 섹션으로 이동합니다. 워크스페이스 템플릿을 사용 중이면 해당 설정이 표시됩니다. 그렇지 않으면 이 섹션에는 아무 정보도 표시되지 않습니다.
워크스페이스 템플릿을 업데이트하려면 다음과 같이 하세요.
아무 워크스페이스나 엽니다.
워크스페이스 설정을 수정합니다. 예를 들어, 포함할 run 개수를 11로 설정합니다.
변경 사항을 템플릿에 저장하려면 Undo 및 Redo 화살표 아이콘 근처의 액션 ( ) 메뉴를 클릭한 다음 개인 워크스페이스 템플릿 업데이트 를 클릭합니다.
설정을 확인한 다음 업데이트 를 클릭합니다. 템플릿이 업데이트되고, 이를 사용하는 모든 워크스페이스에 다시 적용됩니다.
워크스페이스 템플릿을 삭제하고 기본 설정으로 되돌리려면 다음 단계를 따르세요.
아무 페이지에서나 오른쪽 상단의 사용자 아이콘을 선택합니다. 드롭다운에서 User Settings 를 선택합니다.
개인 워크스페이스 템플릿 섹션으로 이동합니다. 워크스페이스 템플릿 설정이 표시됩니다.
Settings 옆의 휴지통 아이콘을 클릭합니다.
Dedicated Cloud 및 Self-Managed에서는 v0.70 이상에서 워크스페이스 템플릿 삭제를 지원합니다. 이전 Server 버전에서는 대신 기본 설정 을 사용하도록 워크스페이스 템플릿을 업데이트하세요.
wandb-workspaces 는 W&B 워크스페이스와 Reports를 프로그래밍 방식으로 다루기 위한 Python 라이브러리입니다.
wandb-workspaces 를 사용해 워크스페이스를 프로그래밍 방식으로 정의할 수 있습니다. wandb-workspaces 는 W&B 워크스페이스와 Reports를 프로그래밍 방식으로 다루기 위한 Python 라이브러리입니다.
다음과 같은 워크스페이스 속성을 정의할 수 있습니다:
패널 레이아웃, 색상, 섹션 순서를 설정합니다.
기본 x축, 섹션 순서, 접힘 상태 등의 워크스페이스 설정을 구성합니다.
섹션 내 패널을 추가하고 사용자 지정해 워크스페이스 뷰를 정리합니다.
URL을 사용해 기존 워크스페이스를 불러오고 수정합니다.
기존 워크스페이스의 변경 사항을 저장하거나 새 뷰로 저장합니다.
단순한 표현식을 사용해 run을 프로그래밍 방식으로 필터링, 그룹화, 정렬합니다.
색상, 표시 여부 등의 설정으로 run의 모양을 사용자 지정합니다.
한 워크스페이스의 뷰를 다른 워크스페이스로 복사해 인테그레이션 및 재사용에 활용합니다.
wandb 외에 wandb-workspaces도 설치해야 합니다:
pip install wandb wandb-workspaces
프로그래밍 방식으로 Workspace 뷰를 정의하고 저장하기
import wandb_workspaces.reports.v2 as ws
workspace = ws.Workspace( entity = "your-entity" , project = "your-project" , views = [ ... ])
workspace.save()
existing_workspace = ws.Workspace.from_url( "workspace-url" )
existing_workspace.views[ 0 ] = ws.View( name = "my-new-view" , sections = [ ... ])
existing_workspace.save()
한 Workspace의 저장된 뷰를 다른 Workspace로 복사하기
old_workspace = ws.Workspace.from_url( "old-workspace-url" )
old_workspace_view = old_workspace.views[ 0 ]
new_workspace = ws.Workspace( entity = "new-entity" , project = "new-project" , views = [old_workspace_view])
new_workspace.save()
wandb-workspace examples 에서 다양한 workspace API 예제를 참조하세요.