Help us learn about your current experience with the documentation. Take the survey.

GitLab Duo 数据使用

GitLab Duo 使用生成式 AI 来帮助提高你的开发速度和生产力。每个 AI 原生功能都是独立运行的,不需要其他功能也能正常工作。

GitLab 根据具体任务选择合适的大型语言模型(LLMs)。这些 LLM 包括 Anthropic ClaudeFireworks AI 托管的 CodestralGoogle Vertex AI 模型

渐进式增强

GitLab Duo AI 原生功能作为对 DevSecOps 平台上现有 GitLab 功能的渐进式增强而设计。这些功能设计为优雅降级,不应阻止底层核心功能的运行。请注意,每个功能都受相关 功能支持策略 中定义的预期功能约束。

稳定性与性能

GitLab Duo AI 原生功能处于不同的 功能支持级别。由于这些功能的特性,使用需求可能很高,这可能导致性能下降或功能意外停机。我们已构建这些功能以实现优雅降级,并设置了控制措施来防止滥用或误用。GitLab 可随时自行决定禁用 beta 和实验性功能,适用于部分或所有客户。

数据隐私

GitLab Duo AI 原生功能由生成式 AI 模型驱动。任何个人数据的处理都符合我们的 隐私声明。你也可以访问 子处理器页面 查看我们用于提供这些功能的子处理器列表。

数据保留

以下反映了 GitLab AI 模型 子处理器 当前的保留期限:

除了 Fireworks AI 提示缓存 外,GitLab 已与 Anthropic、Fireworks AI 和 Google 达成了零日数据保留协议,用于 GitLab Duo 请求。Anthropic、Fireworks AI(在禁用提示缓存时)和 Google 在提供输出后立即丢弃模型输入和输出数据;输入和输出数据不用于滥用监控。模型输入和输出绝不会用于模型训练。

所有这些 AI 提供商都与 GitLab 签订了数据保护协议,禁止他们出于自身目的使用客户内容,除非是为了履行其独立的法律义务。

GitLab Duo Chat 和 GitLab Duo Agent Platform 分别保留聊天历史和工作流历史,帮助你快速回到之前讨论的话题。你可以在 GitLab Duo Chat 界面中删除聊天记录。除非客户通过 GitLab 支持工单 提供同意,否则 GitLab 不会保留输入和输出数据。了解更多关于 AI 功能日志记录 的信息。

Fireworks AI 提示缓存默认启用,以改善代码建议的延迟。有关更多信息以及如何选择退出提示缓存,请参阅 代码建议提示缓存文档

训练数据

GitLab 不训练生成式 AI 模型。

有关我们 AI 子处理器 的更多信息,请参阅:

遥测数据

GitLab Duo 通过 Snowplow 收集器收集聚合或匿名的第一方使用数据。这些使用数据包括以下指标:

  • 独立用户数量
  • 独立实例数量
  • 提示和后缀长度
  • 使用的模型
  • 状态码响应
  • API 响应时间
  • 代码建议还收集:
    • 建议的语言(例如 Python)
    • 使用的编辑器(例如 VS Code)
    • 显示、接受、拒绝或出现错误的建议数量
    • 建议显示的持续时间

模型准确性与质量

生成式 AI 可能产生意外结果,例如:

  • 低质量
  • 不连贯
  • 不完整
  • 产生失败的流水线
  • 不安全的代码
  • 攻击性或不敏感的内容
  • 过时的信息

GitLab 正在积极改进我们所有的 AI 辅助功能,以提升生成内容的质量。我们通过提示工程、评估新的 AI/ML 模型来驱动这些功能,以及直接在这些功能中构建新颖的启发式算法来提高质量。

密钥检测与脱敏

GitLab Duo 包含由 Gitleaks 驱动的密钥检测和脱敏功能。它在使用大型语言模型处理代码之前,自动检测并移除代码中的敏感信息,如 API 密钥、凭据和令牌。此安全功能对于遵守数据保护法规(如 GDPR)尤为重要。

使用 GitLab Duo 时,你的代码会经历一个预扫描安全工作流程:

  1. 使用 Gitleaks 扫描代码中的敏感信息。
  2. 自动检测到的任何密钥都会从请求中移除。

GitLab Duo 自托管

当你使用 GitLab Duo 自托管 和自托管 AI 网关时,你不会与 GitLab 共享任何数据。

GitLab 自托管管理员可以使用 Service Ping 向 GitLab 发送使用统计信息。这与 遥测数据 是分开的。