컴플라이언스를 위한 데이터 정리
컴플라이언스를 위한 데이터 정리
이 가이드는 데이터가 LangSmith Cloud 서버에 도달한 후 사용할 수 있는 다양한 기능을 다뤄서 개인정보 보호 목표를 달성하는 데 도움을 줘요.
출처: 문서
본문
데이터 보존
LangSmith는 컴플라이언스 및 스토리지 관리를 돕기 위한 자동 데이터 보존 기능을 제공해요. 데이터 보존 정책은 두 가지 수준에서 구성할 수 있어요:
- 워크스페이스 수준: 필요한 권한이 있는 엔터프라이즈 고객은 확장 보존(extended retention)을 워크스페이스 기본값으로 설정하고 보존 기간을 커스터마이즈할 수 있어요 (2026년 9월 14일 기준 최대 180일). 확장 보존 정책 커스터마이즈를 참고하세요.
- 프로젝트 수준: 필요한 권한이 있는 고객은 추적 프로젝트별 기본 보존 계층을 설정해 기본 보존(14일) 또는 확장 보존(180일) 중에서 선택할 수 있어요. 프로젝트 수준 기본 보존 변경을 참고하세요.
데이터 보존 구성 및 관리에 대한 자세한 정보는 데이터 보존 개념 문서를 참고하세요.
확장 보존 정책 커스터마이즈
이 기능은 Enterprise 요금제 고객에게 제공돼요. 셀프 호스팅 엔터프라이즈 고객은 워크스페이스 수준 구성 섹션을 참고하세요.
Enterprise 고객은 특정 컴플라이언스 요구 사항을 충족하기 위해 워크스페이스 수준에서 트레이스의 확장 데이터 보존 기간을 커스터마이즈할 수 있어요. 2026년 9월 14일부터 SaaS 고객의 최대 장기 트레이스 보존 기간은 180일이에요. 조직의 요구에 따라 최대치 아래로 보존 기간을 조정할 수 있어요. 보존 기간 변경은 새 트레이스에만 적용돼요.
보존 기간 변경은 새 트레이스에만 적용돼요. 기존 트레이스는 영향을 받지 않아요.
확장 보존 구성하기
조직 관리자 및 운영자(organization:manage)는 모든 워크스페이스의 보존을 구성할 수 있어요. 워크스페이스 관리자는 자신의 워크스페이스를 구성할 수 있어요(workspaces:manage). 전체 권한 참조는 조직 및 워크스페이스 작업을 참고하세요.
UI:
LangSmith UI에서:
- 페이지 하단의 Settings로 이동하세요.
- 왼쪽 메뉴에서 Usage configuration을 선택하세요.
- 구성하려는 워크스페이스를 목록에서 찾으세요.
- 해당 워크스페이스의 Data retention policy 열 아래 값을 클릭하세요.
- workspace usage configurations 모달에서 Extended - All traces are retained for 옵션의 드롭다운으로 확장 정책을 커스터마이즈하세요. SaaS 고객의 사용 가능한 기간: 30일, 60일, 90일, 120일, 150일, 180일 (2026년 9월 14일 기준 최대). 셀프 호스팅 배포는 이 상한의 적용을 받지 않아요.
- Save를 선택하세요.
API:
현재 설정을 읽으려면:
조직 수준 (organization:manage)
curl -X GET "https://api.smith.langchain.com/api/v1/orgs/ttl-settings" \
-H "x-api-key: ***"
워크스페이스 수준 (workspaces:manage)
curl -X GET "https://api.smith.langchain.com/api/v1/ttl-settings" \
-H "x-api-key: ***"
보존 기간을 업데이트하려면 트레이스에 대해 resource_type을 "run"으로, ttl_days를 원하는 기간으로 설정하세요. SaaS 고객의 사용 가능한 기간: 30, 60, 90, 120, 150, 180일 (2026년 9월 14일 기준 최대).
조직 수준 (organization:manage)
curl -X PUT "https://api.smith.langchain.com/api/v1/orgs/ttl-settings" \
-H "x-api-key: ***" \
-H "Content-Type: application/json" \
-d '{"resource_type": "run", "ttl_days": 90}'
워크스페이스 수준 (workspaces:manage)
curl -X PUT "https://api.smith.langchain.com/api/v1/ttl-settings" \
-H "x-api-key: ***" \
-H "Content-Type: application/json" \
-d '{"resource_type": "run", "ttl_days": 90}'
셀프 호스팅을 위한 워크스페이스 수준 확장 보존
셀프 호스팅 Enterprise 고객도 시스템 전체 TTL 설정 대신 워크스페이스 수준 확장 보존 구성을 사용할 수 있어요. 이는 환경 변수 변경 없이 여러 워크스페이스에 걸쳐 데이터 보존을 더 세밀하게 제어할 수 있게 해줘요.
블롭 스토리지를 사용한다면 구성한 각 커스텀 보존 기간에 대해 수명 주기 규칙을 반드시 추가해야 해요. 예를 들어 워크스페이스를 90일 보존으로 설정하면 블롭 데이터가
ttl_90d/접두사에 기록되므로, 자동으로 정리되려면 일치하는 수명 주기 규칙이 필요해요. 자세한 내용과 예시는 블롭 스토리지 TTL 구성을 참고하세요.
셀프 호스팅 배포에서 이를 구성하려면 레거시 시스템 전체 접근 방식은 셀프 호스팅 TTL 문서를 참고하거나 지원팀에 문의하세요.
트레이스 삭제
API를 사용해 트레이스 삭제를 완료할 수 있어요. API는 트레이스를 삭제하는 두 가지 방법을 지원해요:
- 트레이스 ID 및 세션 ID로: 트레이스 ID 목록과 해당 세션 ID를 제공해 특정 트레이스를 삭제 (요청당 최대 1000개의 트레이스)
- 메타데이터로: 지정된 메타데이터 키-값 쌍 중 하나라도 일치하는 워크스페이스의 트레이스를 삭제
자세한 내용은 API 사양을 참고하세요.
모든 트레이스 삭제는 피드백, 집계, 통계와 같은 관련 엔터티를 모든 데이터 스토리지에서 삭제해요.
삭제 타임라인
트레이스 삭제는 비사용량 시간대에 처리되며 즉각적이지 않아요. LangChain은 주말에 삭제 작업을 실행해요. 삭제 확인은 없어요—제거되었는지 확인하려면 데이터를 다시 조회해야 해요.
특정 트레이스 삭제
단일 세션의 트레이스 ID로 특정 트레이스를 삭제하려면:
session_id는 삭제하려는 트레이스의 프로젝트 ID예요. LangSmith UI의 추적 프로젝트 페이지에서 찾을 수 있어요.
curl -X POST "https://api.smith.langchain.com/api/v1/runs/delete" \
-H "x-api-key: ***" \
-H "Content-Type: application/json" \
-d '{
"trace_ids": ["trace-id-1", "trace-id-2", "trace-id-3"],
"session_id": "session-id-1"
}'
예시 삭제
API를 통해 데이터셋 예시를 셀프 서비스로 삭제할 수 있으며, 데이터 보존 요구 사항에 따라 소프트 및 하드 삭제 방법을 모두 지원해요.
하드 삭제는 지정된 예시의 모든 버전에서 입력, 출력 및 메타데이터를 데이터셋 전체 기록에 걸쳐 영구적으로 제거해요.
예시 삭제는 두 단계 프로세스예요
대량 작업의 경우 예시 삭제는 두 단계 프로세스를 따르는 데요:
1. 메타데이터로 예시 검색하기
워크스페이스의 모든 데이터셋에서 일치하는 메타데이터를 가진 모든 예시를 찾으세요.
as_of는 타임스탬프로 명시적으로 지정해야 해요.as_of날짜 이전에 생성된 예시만 반환돼요.
curl -X GET "https://api.smith.langchain.com/api/v1/examples?as_of=2024-01-01T00:00:00Z" \
-H "x-api-key: ***" \
-H "Content-Type: application/json" \
-d '{
"metadata": {
"user_id": "user123",
"environment": "staging"
}
}'
이것은 워크스페이스의 모든 데이터셋에서 메타데이터에 user_id: "user123" 또는 environment: "staging"이 있는 예시를 반환해요.
2. 예시 하드 삭제하기
예시 ID를 얻었으면 삭제 요청을 보내세요. 이렇게 하면 해당 예시에 대한 데이터셋의 모든 버전에서 입력, 출력 및 메타데이터가 0으로 설정돼요.
POST /v1/platform/datasets/examples/delete/
- 요청 본문에
example_ids(예시 ID 목록)와hard_delete(부울)를 지정하세요.
curl -X POST "https://api.smith.langchain.com/v1/platform/datasets/examples/delete/" \
-H "x-api-key: ***" \
-H "Content-Type: application/json" \
-d '{
"example_ids": ["example-id-1", "example-id-2", "example-id-3"],
"hard_delete": true
}'
삭제 유형
소프트 삭제 (기본값)
- 데이터셋에 입력/출력이 NULL인 tombstoned 항목을 생성.
- 과거 데이터를 보존하고 데이터셋 버전 관리를 유지.
- 데이터셋의 현재 버전에만 영향.
하드 삭제
- 모든 데이터셋 버전에서 입력, 출력 및 메타데이터를 영구적으로 제거.
- 컴플라이언스가 모든 버전에 걸쳐 0으로 설정을 요구할 때 완전한 데이터 제거.
- 요청 본문에
"hard_delete": true설정.