InfoGrab DocsInfoGrab Docs

GitLab Duo 데이터 사용

요약

GitLab Duo는 생성형 AI로 작업 속도와 생산성을 높이도록 돕습니다. GitLab은 특정 작업에 적합한 대규모 언어 모델(LLM)을 사용합니다. GitLab Duo AI 네이티브 기능은 DevSecOps 플랫폼 전반의 기존 GitLab 기능을 점진적으로 향상하도록 설계되었습니다.

GitLab Duo는 생성형 AI로 작업 속도와 생산성을 높이도록 돕습니다. 각 AI 네이티브 기능은 독립적으로 동작하며, 다른 기능이 작동하는 데 반드시 필요하지는 않습니다.

GitLab은 특정 작업에 적합한 대규모 언어 모델(LLM)을 사용합니다. 사용하는 LLM은 Anthropic Claude, Fireworks AI가 호스팅하는 Codestral, Gemini Enterprise Agent Platform 모델, OpenAI 모델입니다.

점진적 향상#

GitLab Duo AI 네이티브 기능은 DevSecOps 플랫폼 전반의 기존 GitLab 기능을 점진적으로 향상하도록 설계되었습니다. 이 기능들은 실패하더라도 매끄럽게 처리되도록 설계되었으며, 기반 기능의 핵심 동작을 막지 않습니다. 각 기능은 해당 기능 지원 정책이 정의한 기대 동작을 따릅니다.

안정성 및 성능#

GitLab Duo AI 네이티브 기능은 다양한 기능 지원 수준에 있습니다. 이러한 기능의 특성상 사용 수요가 높아져 성능이 저하되거나 예기치 않게 중단될 수 있습니다. GitLab은 이 기능들이 점진적으로 성능을 낮추도록 구축했으며, 남용이나 오용을 완화할 수 있는 제어 수단을 갖추고 있습니다. GitLab은 재량에 따라 언제든지 일부 또는 전체 고객에 대해 베타 기능과 실험 기능을 비활성화할 수 있습니다.

데이터 개인 정보 보호#

GitLab Duo AI 네이티브 기능은 생성형 AI 모델로 동작합니다. GitLab은 모든 개인 데이터를 GitLab 개인 정보 보호 정책에 따라 처리합니다.

이 기능을 제공하기 위해 GitLab 이 사용하는 AI 모델 하위 처리자 목록은 서드파티 하위 처리자를 참고합니다.

데이터 보존#

모델 하위 처리자#

GitLab Duo 요청에 대해 GitLab은 Fireworks AI와 데이터 무보존 정책을 적용합니다. Fireworks AI는 출력이 제공된 직후 모델 입력 데이터와 출력 데이터를 폐기하며, 남용 모니터링을 위해 입력 데이터와 출력 데이터를 저장하지 않습니다. 이 정책의 예외는 GitLab Duo Code Suggestions와 GitLab Duo Agentic Chat에서 프롬프트 캐싱이 켜져 있는 경우입니다. OpenAI 모델에서는 프롬프트 캐싱을 끌 수 없습니다.

Amazon Bedrock 및 Gemini Enterprise Agent Platform에서 호스팅되는 경우를 포함해 일부 Anthropic 모델과 OpenAI 모델은 벤더 측에서 제한적으로 데이터를 보존합니다. 해당 모델에 대한 자세한 내용은 GitLab Duo Agent Platform 지원 AI 모델을 참고합니다.

GitLab#

GitLab Duo Chat과 GitLab Duo Agent Platform은 이전에 논의한 주제로 빠르게 돌아갈 수 있도록 채팅 기록과 워크플로 기록을 보존합니다. 채팅은 GitLab Duo Chat 인터페이스에서 삭제할 수 있습니다. GitLab.com에서는 남용 방지를 위해 채팅 기록과 워크플로 기록을 보존합니다. 고객이 GitLab 지원 티켓을 통해 동의하지 않는 한 GitLab은 그 밖의 입력 데이터와 출력 데이터를 보존하지 않습니다.

GitLab Duo Agent Platform의 확장 로깅을 활성화하면 GitLab은 트레이스 데이터를 보존합니다. AI 기능과 관련된 로깅 정보는 GitLab AI 모델 하위 처리자와의 데이터 무보존 정책과는 별개입니다. 자세한 내용은 GitLab 로그 시스템을 참고합니다.

모델 학습#

GitLab은 생성형 AI 모델을 학습시키지 않습니다.

모든 GitLab AI 모델 하위 처리자는 모델 입력과 출력을 모델 학습에 사용할 수 없습니다. 이 하위 처리자들은 독립적인 법적 의무를 이행하는 경우를 제외하고 고객 콘텐츠를 자체 목적으로 사용하는 것을 금지하는 데이터 보호 계약을 GitLab과 체결하고 있습니다.

텔레메트리#

GitLab Duo는 Snowplow 수집기를 통해 집계되거나 비식별화된 자사 사용 데이터를 수집합니다. 이 사용 데이터에는 다음 지표가 포함됩니다:

  • 고유 사용자 수
  • 고유 인스턴스 수
  • 프롬프트와 접미사 길이
  • 사용된 모델
  • 상태 코드 응답
  • API 응답 시간
  • Code Suggestions는 다음도 수집합니다:
    • 제안이 작성된 언어(예: Python)
    • 사용 중인 에디터(예: VS Code)
    • 표시·수락·거부된 제안 수와 오류가 발생한 제안 수
    • 제안이 표시된 시간

GitLab Model Context Protocol 서버#

다음 내용은 GitLab Self-Managed 인스턴스에서의 GitLab Model Context Protocol(MCP) 서버 사용에 적용됩니다.

GitLab MCP 서버를 사용할 때 GitLab은 어떤 데이터도 전송·저장·보존·처리하지 않습니다. 모든 통신은 사용자 환경의 MCP 클라이언트와 GitLab MCP 서버 사이에서 직접 이루어집니다.

리포지터리 데이터와 메타데이터는 GitLab으로 전송되지 않습니다.

어떤 MCP 클라이언트가 인스턴스에 연결할지는 사용자가 제어합니다. 각 클라이언트의 개인 정보 보호 정책과 데이터 보존 정책이 적용됩니다.

모델 정확성 및 품질#

생성형 AI는 다음과 같은 예기치 않은 결과를 만들 수 있습니다:

  • 낮은 품질
  • 일관성 없는 내용
  • 불완전한 내용
  • 실패하는 파이프라인
  • 안전하지 않은 코드
  • 불쾌하거나 배려 없는 표현
  • 오래된 정보

GitLab은 생성된 콘텐츠의 품질을 높이기 위해 모든 AI 지원 기능을 지속적으로 개선하고 있습니다. 프롬프트 엔지니어링, 이 기능들을 구동할 새로운 AI/ML 모델 평가, 기능에 직접 내장한 새로운 휴리스틱으로 품질을 개선합니다.

시크릿 탐지 및 제거#

히스토리
  • GitLab 17.9에서 도입되었습니다.

GitLab Duo는 플로 실행 중 시크릿 탐지 및 제거를 수행합니다. 상황에 따라 GitLab Duo는 대규모 언어 모델로 코드를 처리하기 전에 API 키, 자격 증명, 토큰 같은 민감한 정보를 자동으로 탐지하고 제거합니다.

GitLab Duo를 사용할 때 코드는 다음과 같은 사전 스캔 보안 워크플로를 거칩니다:

  1. Gitleaks로 코드에서 민감한 정보를 스캔합니다.
  2. 탐지된 시크릿은 요청에서 자동으로 제거됩니다.

시크릿 스캐닝은 다음 상황에서 실행됩니다:

  • 코드 완성 컨텍스트 변환(컨텍스트가 AI로 전송되기 전)
  • AI 컨텍스트 변환
  • 워크플로 도구 결과
  • Agentic Chat 사용자 입력
  • Git 명령 로깅
  • CLI 구성 로깅
Note

웹 인터페이스로 GitLab Duo Chat을 사용할 때는 시크릿 스캐닝이 실행되지 않습니다.

예외: 시크릿 오탐 탐지#

시크릿 오탐 탐지는 옵트인 기능으로, 탐지된 시크릿 주변의 코드 컨텍스트를 포함한 취약점 정보를 분석을 위해 LLM으로 전송합니다. 이는 시크릿 탐지 및 제거 동작에 대한 의도적인 예외입니다.

이 기능은 옵트인이므로 취약점 데이터가 LLM으로 전송되기 전에 그룹 수준과 프로젝트 수준 모두에서 명시적으로 활성화해야 합니다. 이 기능을 활성화하기 전에 조직의 데이터 정책을 검토합니다.

GitLab과 그룹 사용 데이터 공유#

히스토리
  • GitLab 18.9.1에서 도입되었습니다.

서비스 품질 개선에 도움이 되도록 GitLab Duo Agent Platform 기능의 사용 데이터를 GitLab과 공유할 수 있습니다.

데이터 수집을 켜면 네임스페이스의 모든 프로젝트와 하위 그룹에서 발생한 AI 상호 작용이 GitLab에 기록됩니다. 이 데이터는 서비스 개선과 디버깅에만 사용하며, AI 모델 학습에는 사용하지 않습니다.

인스턴스 단위로도 사용 데이터 수집을 켤 수 있습니다

필수 조건:

  • GitLab 18.9.1 이상이어야 합니다.
  • 최상위 그룹의 Owner 권한이 있어야 합니다.
  • GitLab.com에서는 그룹에 GitLab Duo가 활성화되어 있어야 합니다.

그룹의 데이터 수집을 켜려면:

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다.
  2. 왼쪽 사이드바에서 Settings > GitLab Duo를 선택합니다.
  3. Change configuration을 선택합니다.
  4. Data collection에서 Collect usage data 체크박스를 선택합니다.
  5. Save changes를 선택합니다.

Agent Platform 사용 데이터#

데이터 수집을 켜면 다음 데이터가 기록됩니다:

  • GitLab Duo와의 상호 작용에서 오간 전체 프롬프트와 응답 텍스트.
  • 설정을 활성화한 시점에 진행 중이던 세션을 포함한 세션 컨텍스트.
  • 모델 메타데이터(모델 버전, 토큰 수, 지연 시간).
  • 도구 호출과 그 결과.
  • 사용자 피드백과 연결하기 위한 세션 ID.

사용자가 프롬프트에 직접 포함하지 않는 한 다음 정보는 로그에 포함되지 않습니다:

  • 사용자 ID 또는 사용자 이름.
  • 이메일 주소 또는 개인 식별자.
  • 프로젝트 또는 네임스페이스 식별자.

GitLab은 사용자가 프롬프트에 포함한 식별자를 제거하지 않습니다.

프롬프트 캐싱#

프롬프트 캐싱은 캐시된 프롬프트와 입력 데이터를 다시 처리하지 않도록 해 지연 시간을 줄입니다. 프롬프트 캐싱을 켜면 모델 벤더가 프롬프트 데이터를 메모리에 임시로 저장합니다. 캐시된 데이터는 영구 저장소에 기록되지 않습니다.

프롬프트 레지스트리를 사용하는 Agent Platform 기능과 Code Suggestions 모두에서 지원되는 모델에 대해 토큰 캐싱이 자동으로 켜집니다.

프롬프트 캐싱 끄기#

기본적으로 프롬프트 캐싱은 켜져 있습니다. 최상위 그룹 또는 인스턴스 단위로 프롬프트 캐싱을 끌 수 있습니다.

필수 조건:

  • 최상위 그룹의 Owner 권한.
  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다.
  2. 왼쪽 사이드바에서 Settings > GitLab Duo를 선택합니다.
  3. Change configuration을 선택합니다.
  4. Data and privacy 섹션의 Prompt cache에서 Turn on prompt caching 체크박스를 해제합니다.
  5. Save changes를 선택합니다.

필수 조건:

  • 관리자 접근 권한.
  1. 오른쪽 위에서 Admin을 선택합니다.
  2. 왼쪽 사이드바에서 GitLab Duo를 선택합니다.
  3. Change configuration을 선택합니다.
  4. Data and privacy 섹션의 Prompt cache에서 Turn on prompt caching 체크박스를 해제합니다.
  5. Save changes를 선택합니다.

GitLab Duo 데이터 사용

GitLab v19.5
원문 보기

요약

GitLab Duo는 생성형 AI로 작업 속도와 생산성을 높이도록 돕습니다. GitLab은 특정 작업에 적합한 대규모 언어 모델(LLM)을 사용합니다. GitLab Duo AI 네이티브 기능은 DevSecOps 플랫폼 전반의 기존 GitLab 기능을 점진적으로 향상하도록 설계되었습니다.

GitLab Duo는 생성형 AI로 작업 속도와 생산성을 높이도록 돕습니다. 각 AI 네이티브 기능은 독립적으로 동작하며, 다른 기능이 작동하는 데 반드시 필요하지는 않습니다.

GitLab은 특정 작업에 적합한 대규모 언어 모델(LLM)을 사용합니다. 사용하는 LLM은 Anthropic Claude, Fireworks AI가 호스팅하는 Codestral, Gemini Enterprise Agent Platform 모델, OpenAI 모델입니다.

점진적 향상#

GitLab Duo AI 네이티브 기능은 DevSecOps 플랫폼 전반의 기존 GitLab 기능을 점진적으로 향상하도록 설계되었습니다. 이 기능들은 실패하더라도 매끄럽게 처리되도록 설계되었으며, 기반 기능의 핵심 동작을 막지 않습니다. 각 기능은 해당 기능 지원 정책이 정의한 기대 동작을 따릅니다.

안정성 및 성능#

GitLab Duo AI 네이티브 기능은 다양한 기능 지원 수준에 있습니다. 이러한 기능의 특성상 사용 수요가 높아져 성능이 저하되거나 예기치 않게 중단될 수 있습니다. GitLab은 이 기능들이 점진적으로 성능을 낮추도록 구축했으며, 남용이나 오용을 완화할 수 있는 제어 수단을 갖추고 있습니다. GitLab은 재량에 따라 언제든지 일부 또는 전체 고객에 대해 베타 기능과 실험 기능을 비활성화할 수 있습니다.

데이터 개인 정보 보호#

GitLab Duo AI 네이티브 기능은 생성형 AI 모델로 동작합니다. GitLab은 모든 개인 데이터를 GitLab 개인 정보 보호 정책에 따라 처리합니다.

이 기능을 제공하기 위해 GitLab 이 사용하는 AI 모델 하위 처리자 목록은 서드파티 하위 처리자를 참고합니다.

데이터 보존#

모델 하위 처리자#

GitLab Duo 요청에 대해 GitLab은 Fireworks AI와 데이터 무보존 정책을 적용합니다. Fireworks AI는 출력이 제공된 직후 모델 입력 데이터와 출력 데이터를 폐기하며, 남용 모니터링을 위해 입력 데이터와 출력 데이터를 저장하지 않습니다. 이 정책의 예외는 GitLab Duo Code Suggestions와 GitLab Duo Agentic Chat에서 프롬프트 캐싱이 켜져 있는 경우입니다. OpenAI 모델에서는 프롬프트 캐싱을 끌 수 없습니다.

Amazon Bedrock 및 Gemini Enterprise Agent Platform에서 호스팅되는 경우를 포함해 일부 Anthropic 모델과 OpenAI 모델은 벤더 측에서 제한적으로 데이터를 보존합니다. 해당 모델에 대한 자세한 내용은 GitLab Duo Agent Platform 지원 AI 모델을 참고합니다.

GitLab#

GitLab Duo Chat과 GitLab Duo Agent Platform은 이전에 논의한 주제로 빠르게 돌아갈 수 있도록 채팅 기록과 워크플로 기록을 보존합니다. 채팅은 GitLab Duo Chat 인터페이스에서 삭제할 수 있습니다. GitLab.com에서는 남용 방지를 위해 채팅 기록과 워크플로 기록을 보존합니다. 고객이 GitLab 지원 티켓을 통해 동의하지 않는 한 GitLab은 그 밖의 입력 데이터와 출력 데이터를 보존하지 않습니다.

GitLab Duo Agent Platform의 확장 로깅을 활성화하면 GitLab은 트레이스 데이터를 보존합니다. AI 기능과 관련된 로깅 정보는 GitLab AI 모델 하위 처리자와의 데이터 무보존 정책과는 별개입니다. 자세한 내용은 GitLab 로그 시스템을 참고합니다.

모델 학습#

GitLab은 생성형 AI 모델을 학습시키지 않습니다.

모든 GitLab AI 모델 하위 처리자는 모델 입력과 출력을 모델 학습에 사용할 수 없습니다. 이 하위 처리자들은 독립적인 법적 의무를 이행하는 경우를 제외하고 고객 콘텐츠를 자체 목적으로 사용하는 것을 금지하는 데이터 보호 계약을 GitLab과 체결하고 있습니다.

텔레메트리#

GitLab Duo는 Snowplow 수집기를 통해 집계되거나 비식별화된 자사 사용 데이터를 수집합니다. 이 사용 데이터에는 다음 지표가 포함됩니다:

  • 고유 사용자 수
  • 고유 인스턴스 수
  • 프롬프트와 접미사 길이
  • 사용된 모델
  • 상태 코드 응답
  • API 응답 시간
  • Code Suggestions는 다음도 수집합니다:
    • 제안이 작성된 언어(예: Python)
    • 사용 중인 에디터(예: VS Code)
    • 표시·수락·거부된 제안 수와 오류가 발생한 제안 수
    • 제안이 표시된 시간

GitLab Model Context Protocol 서버#

다음 내용은 GitLab Self-Managed 인스턴스에서의 GitLab Model Context Protocol(MCP) 서버 사용에 적용됩니다.

GitLab MCP 서버를 사용할 때 GitLab은 어떤 데이터도 전송·저장·보존·처리하지 않습니다. 모든 통신은 사용자 환경의 MCP 클라이언트와 GitLab MCP 서버 사이에서 직접 이루어집니다.

리포지터리 데이터와 메타데이터는 GitLab으로 전송되지 않습니다.

어떤 MCP 클라이언트가 인스턴스에 연결할지는 사용자가 제어합니다. 각 클라이언트의 개인 정보 보호 정책과 데이터 보존 정책이 적용됩니다.

모델 정확성 및 품질#

생성형 AI는 다음과 같은 예기치 않은 결과를 만들 수 있습니다:

  • 낮은 품질
  • 일관성 없는 내용
  • 불완전한 내용
  • 실패하는 파이프라인
  • 안전하지 않은 코드
  • 불쾌하거나 배려 없는 표현
  • 오래된 정보

GitLab은 생성된 콘텐츠의 품질을 높이기 위해 모든 AI 지원 기능을 지속적으로 개선하고 있습니다. 프롬프트 엔지니어링, 이 기능들을 구동할 새로운 AI/ML 모델 평가, 기능에 직접 내장한 새로운 휴리스틱으로 품질을 개선합니다.

시크릿 탐지 및 제거#

히스토리
  • GitLab 17.9에서 도입되었습니다.

GitLab Duo는 플로 실행 중 시크릿 탐지 및 제거를 수행합니다. 상황에 따라 GitLab Duo는 대규모 언어 모델로 코드를 처리하기 전에 API 키, 자격 증명, 토큰 같은 민감한 정보를 자동으로 탐지하고 제거합니다.

GitLab Duo를 사용할 때 코드는 다음과 같은 사전 스캔 보안 워크플로를 거칩니다:

  1. Gitleaks로 코드에서 민감한 정보를 스캔합니다.
  2. 탐지된 시크릿은 요청에서 자동으로 제거됩니다.

시크릿 스캐닝은 다음 상황에서 실행됩니다:

  • 코드 완성 컨텍스트 변환(컨텍스트가 AI로 전송되기 전)
  • AI 컨텍스트 변환
  • 워크플로 도구 결과
  • Agentic Chat 사용자 입력
  • Git 명령 로깅
  • CLI 구성 로깅
Note

웹 인터페이스로 GitLab Duo Chat을 사용할 때는 시크릿 스캐닝이 실행되지 않습니다.

예외: 시크릿 오탐 탐지#

시크릿 오탐 탐지는 옵트인 기능으로, 탐지된 시크릿 주변의 코드 컨텍스트를 포함한 취약점 정보를 분석을 위해 LLM으로 전송합니다. 이는 시크릿 탐지 및 제거 동작에 대한 의도적인 예외입니다.

이 기능은 옵트인이므로 취약점 데이터가 LLM으로 전송되기 전에 그룹 수준과 프로젝트 수준 모두에서 명시적으로 활성화해야 합니다. 이 기능을 활성화하기 전에 조직의 데이터 정책을 검토합니다.

GitLab과 그룹 사용 데이터 공유#

히스토리
  • GitLab 18.9.1에서 도입되었습니다.

서비스 품질 개선에 도움이 되도록 GitLab Duo Agent Platform 기능의 사용 데이터를 GitLab과 공유할 수 있습니다.

데이터 수집을 켜면 네임스페이스의 모든 프로젝트와 하위 그룹에서 발생한 AI 상호 작용이 GitLab에 기록됩니다. 이 데이터는 서비스 개선과 디버깅에만 사용하며, AI 모델 학습에는 사용하지 않습니다.

인스턴스 단위로도 사용 데이터 수집을 켤 수 있습니다

필수 조건:

  • GitLab 18.9.1 이상이어야 합니다.
  • 최상위 그룹의 Owner 권한이 있어야 합니다.
  • GitLab.com에서는 그룹에 GitLab Duo가 활성화되어 있어야 합니다.

그룹의 데이터 수집을 켜려면:

  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다.
  2. 왼쪽 사이드바에서 Settings > GitLab Duo를 선택합니다.
  3. Change configuration을 선택합니다.
  4. Data collection에서 Collect usage data 체크박스를 선택합니다.
  5. Save changes를 선택합니다.

Agent Platform 사용 데이터#

데이터 수집을 켜면 다음 데이터가 기록됩니다:

  • GitLab Duo와의 상호 작용에서 오간 전체 프롬프트와 응답 텍스트.
  • 설정을 활성화한 시점에 진행 중이던 세션을 포함한 세션 컨텍스트.
  • 모델 메타데이터(모델 버전, 토큰 수, 지연 시간).
  • 도구 호출과 그 결과.
  • 사용자 피드백과 연결하기 위한 세션 ID.

사용자가 프롬프트에 직접 포함하지 않는 한 다음 정보는 로그에 포함되지 않습니다:

  • 사용자 ID 또는 사용자 이름.
  • 이메일 주소 또는 개인 식별자.
  • 프로젝트 또는 네임스페이스 식별자.

GitLab은 사용자가 프롬프트에 포함한 식별자를 제거하지 않습니다.

프롬프트 캐싱#

프롬프트 캐싱은 캐시된 프롬프트와 입력 데이터를 다시 처리하지 않도록 해 지연 시간을 줄입니다. 프롬프트 캐싱을 켜면 모델 벤더가 프롬프트 데이터를 메모리에 임시로 저장합니다. 캐시된 데이터는 영구 저장소에 기록되지 않습니다.

프롬프트 레지스트리를 사용하는 Agent Platform 기능과 Code Suggestions 모두에서 지원되는 모델에 대해 토큰 캐싱이 자동으로 켜집니다.

프롬프트 캐싱 끄기#

기본적으로 프롬프트 캐싱은 켜져 있습니다. 최상위 그룹 또는 인스턴스 단위로 프롬프트 캐싱을 끌 수 있습니다.

필수 조건:

  • 최상위 그룹의 Owner 권한.
  1. 상단 바에서 Search or go to를 선택하고 그룹을 찾습니다.
  2. 왼쪽 사이드바에서 Settings > GitLab Duo를 선택합니다.
  3. Change configuration을 선택합니다.
  4. Data and privacy 섹션의 Prompt cache에서 Turn on prompt caching 체크박스를 해제합니다.
  5. Save changes를 선택합니다.

필수 조건:

  • 관리자 접근 권한.
  1. 오른쪽 위에서 Admin을 선택합니다.
  2. 왼쪽 사이드바에서 GitLab Duo를 선택합니다.
  3. Change configuration을 선택합니다.
  4. Data and privacy 섹션의 Prompt cache에서 Turn on prompt caching 체크박스를 해제합니다.
  5. Save changes를 선택합니다.