Gemini Developer API의 제로 데이터 보존(Zero data retention)

Gemini Developer API의 제로 데이터 보존(Zero data retention)

이 페이지는 Gemini Developer API에서 흔히 "제로 데이터 보존(zero data retention)"이라고 부르는 내용의 세부 사항을 정리한 거예요.

출처: 원문

본문

학습 제한 (Training restriction)

Gemini API 이용약관에 명시된 대로, 유료 서비스(Paid Services)를 사용할 때 Google은 여러분의 프롬프트(관련 시스템 지시어, 캐시된 콘텐츠, 이미지·비디오·문서 같은 파일 포함)나 응답을 제품 개선에 사용하지 않아요. 유료 서비스의 정의는 여기에 있어요.

고객 데이터 보존과 제로 데이터 보존 달성

고객 데이터는 일반적으로 다음과 같은 시나리오와 조건에서 제한된 기간 동안 보존돼요. 제로 데이터 보존을 달성하려면 고객이 각 영역에서 특정 조치를 취하거나 특정 기능을 피해야 해요:

  • 남용 모니터링을 위한 프롬프트 로깅: Gemini API 추가 이용약관에 따라, 유료 서비스의 경우 Google은 금지된 사용 정책 위반 감지만을 위해 제한된 기간 동안 프롬프트와 응답을 로그로 남겨요. 만약 워크로드가 보장된 제로 데이터 보존이나 엔터프라이즈 데이터 처리 계약을 요구한다면 Vertex AI를 사용하세요. 자세한 내용은 Gemini Enterprise Agent Platform과 제로 데이터 보존을 참고해요.
  • Google 검색 접지(Grounding with Google Search): Gemini API 추가 이용약관에 따라, Google은 접지된 결과(grounded results)와 검색 제안을 만들기 위해 프롬프트, 맥락 정보, 생성 출력을 30일 동안 저장해요. 이 저장 정보는 접지를 지원하는 시스템의 디버깅과 테스트에 사용될 수 있어요. Google 검색 접지를 사용한다면 이 정보 저장을 비활성화할 방법이 없어요.
  • Google 지도 접지(Grounding with Google Maps): Gemini API 추가 이용약관에 따라, Google은 접지된 결과를 만들기 위해 프롬프트, 맥락 정보, 생성 출력을 30일 동안 저장해요. 이 저장 정보는 서비스 문제 시 디버깅 같은 신뢰성 엔지니어링에만 사용될 수 있어요. Google 지도 접지를 사용한다면 이 정보 저장을 비활성화할 방법이 없어요.
  • Interactions API: Interactions API는 다중 턴 대화를 위해 대화의 활성 상태를 관리해요. 기본적으로 Interactions API는 상태 저장을 활성화해요. 제로 데이터 발자국을 보장하려면 API 요청에서 store 매개변수를 명시적으로 false로 설정해 기본 상태 보존을 거부(opt out)해야 해요.
  • Live API: 이 상태 저장형 API는 대화 상태를 저장해 실시간 재연결을 가능하게 해요. 제로 데이터 보존을 달성하려면 SessionResumptionConfig를 구성하지 마세요. 세션 핸들이 생성되면 대화 상태(텍스트, 오디오, 비디오 포함)가 최대 24시간 동안 보존돼요.
  • File API 저장소: File API는 대용량 자산 업로드를 허용해요. 파일은 사용자가 삭제하거나 만료될 때까지 저장(hot-rest) 상태로 유지돼요. File API 사용은 ZDR 로깅과 독립적이므로, 제로 데이터 발자국을 보장하려면 사용자가 파일을 직접 삭제해야 해요.
  • 명시적 컨텍스트 캐싱(Explicit Context Caching): cached_content 필드를 사용해 대용량 데이터셋(긴 비디오나 문서 라이브러리 등)을 수동으로 캐시할 수 있어요. 이 요청들의 로그는 ZDR 삭제 정책을 따르지만, 캐시된 컨텍스트 자체는 사용자가 정의한 ttl이나 expire_time으로 저장돼요. 절대적인 제로 데이터 발자국을 원한다면 cached_content 기능을 사용하지 마세요.
  • 암묵적 인메모리 캐싱(Implicit In-Memory Caching): 기본적으로 Gemini 모델은 개발자의 지연 시간과 비용을 줄이기 위해 데이터를 메모리에서 캐시해요. 이 데이터는 엄격히 RAM에만 있고(디스크 저장 아님), 프로젝트 수준으로 격리되며, 24시간 TTL을 가져요. 이것은 제로 데이터 보존을 위반하지 않아요.

다음 단계 (What's next)

더 알아보기 (Learn more)