极狐GitLab

极狐GitLab Duo 代码建议:从补全到生成

极狐GitLab
2026年8月18日
12850
分享:

极狐GitLab Duo 代码建议:从补全到生成

在 AI 辅助编程逐渐成为标配的今天,研发团队对代码建议工具的需求已经从"有没有"变成了"能不能真正嵌入工作流"。一个理想的 AI 代码助手,不应该只是偶尔弹出几行补全,而应该在工程师熟悉的 IDE 里,根据项目上下文持续提供可信赖的建议,并且把最终判断权始终交还给开发者。

极狐GitLab Duo 代码建议(Code Suggestions)正是围绕这一思路设计的。它把代码补全与基于自然语言的代码生成统一在同一个能力里,直接集成到 VS Code、JetBrains、Visual Studio、Eclipse 与 Neovim 等主流编辑器中,让开发者在不离开编码环境的情况下,就能获得与项目上下文相关的 AI 建议。

01 代码建议不是单一功能,而是补全与生成的组合

很多开发者第一次接触极狐GitLab Duo 代码建议时,会把它简单理解为"自动补全"。实际上,官方文档明确把代码建议拆成两个互补能力:代码补全和代码生成。它们同时工作,不能单独开启其中某一个。

代码补全关注的是"当前行或当前小块代码"。当你在编辑器里输入时,它会根据光标位置、已打开文件、项目依赖等上下文,实时建议接下来最可能需要的代码片段。触发方式很直接——边写边弹,延迟极低,适合快速完成一行或几行代码。

代码生成则更适合"从 0 到 1"的场景。你用一个自然语言注释描述需求,按下回车后,AI 会根据注释、文件上下文、项目使用的框架或库,生成整个函数、方法甚至类。例如,你可以在 Python 文件中写下:

# 创建一个使用 Tornado 的 Web 服务,允许用户登录、运行安全扫描并查看扫描结果。
# 每个操作(登录、运行扫描和查看结果)都应该是 Web 服务中的独立资源。

然后按下回车,极狐GitLab Duo 会基于这段注释生成对应的代码骨架。由于代码生成会携带更大的上下文并调用更大的语言模型,它在复杂任务和大型代码库上的准确率通常高于代码补全。

官方文档给出一个清晰的选型建议:

  • 代码补全:适合快速完成一行或几行代码。

  • 代码生成:适合复杂任务、大型代码库、基于自然语言描述写新代码,或者当前编辑文件少于五行代码时。

理解了这两个模式的边界,开发者才能更有意识地使用提示词,而不是被动等待 AI 弹出建议。

02 安装与启用:把代码建议接进日常 IDE

极狐GitLab Duo 代码建议支持多种编辑器,包括 Visual Studio Code、Visual Studio、JetBrains 系列 IDE、Eclipse 和 Neovim。不同 IDE 的安装步骤略有差异,但核心流程是一致的:安装扩展 → 向极狐GitLab 实例认证 → 验证启用状态。

前提条件

要使用代码建议,需要满足以下基本条件:

  • 订阅层面:代码建议适用于极狐GitLab Duo Core、Pro 或 Enterprise 附加功能,在 JihuLab.com 上也可通过基于用量的极狐GitLab Duo Agent Platform 使用。此外,自极狐GitLab 18.0 起,代码建议已包含在极狐GitLab Duo Core 中。

  • 版本层面:极狐GitLab Duo 要求 17.2 或更高版本。为了获得最佳用户体验和效果,官方建议升级到 18.0 或更高版本。

  • 功能开关:如果使用的是极狐GitLab Duo Core,需要先在实例或群组设置中开启 IDE 功能。

以 VS Code 为例

  1. 在 VS Code 扩展市场安装 极狐GitLab 扩展。

  2. 使用 OAuth 或个人访问令牌向极狐GitLab 实例完成认证。

  3. 打开设置(macOS 上按 Command + ,,Windows/Linux 上按 Control + ,)。

  4. 依次选择 扩展 > 极狐GitLab > 极狐GitLab Duo。

  5. 勾选 极狐GitLab › Duo Code Suggestions: Enabled。

  6. 可选:在 Enabled Supported Languages 中选择需要建议的语言,或在 Additional Languages 里补充其他语言。

以 JetBrains 为例

  1. 安装 极狐GitLab Duo 插件。

  2. 进入 IDE 设置,展开 工具 并选择 极狐GitLab Duo。

  3. 在 Features 中勾选 Enable Code Suggestions 和 Enable GitLab Duo Chat。

  4. 在 Connection 中输入极狐GitLab 实例地址,点击 Verify setup 验证连接。

  5. 如果实例使用了私有 SSL 证书,插件会提示确认证书详情,核对后选择接受即可。

启用后,IDE 状态栏会出现极狐GitLab Duo 图标。图标状态会告诉你当前是否已配置就绪、是否正在加载建议,或者是否发生了错误。这种即时反馈让开发者可以快速判断工具是否处于可用状态,而不需要反复打开浏览器确认。

03 使用方式: Tab 接受、Esc 拒绝、注释驱动生成

代码建议的交互设计非常轻量。当建议出现时:

  • 按 Tab 接受整条建议。

  • 在 macOS 上按 Command + 右方向键,在 Windows/Linux 上按 Control + 右方向键,只接受建议的一部分。

  • 按 Esc 拒绝建议(Neovim 中使用 Control + E)。

如果你希望查看更多候选,在 VS Code 中可以将鼠标悬停在补全建议上,然后按 Option + [ / ](macOS)或 Alt + [ / ](Windows/Linux)在多个建议之间切换,最后按 Tab 应用。

代码生成则依赖注释。根据官方最佳实践,一条好的生成注释应该:

  • 具体而简洁:不要写"帮我写个函数",而要说明函数输入、输出和约束。

  • 说明期望结果:例如"创建一个函数,接收用户 ID 列表并返回去重后的活跃用户集合"。

  • 指定框架或库:如果项目使用 Flask、Spring Boot 或 Vue,要在注释里点明。

  • 注释后留空格或换行:这个空白告诉代码生成器"指令已结束,可以开始生成"。

例如,在一段 Go 代码中,你可以这样写:

// ValidateEmail 使用正则校验邮箱格式,返回错误信息或空字符串。
// 支持的域名后缀至少包含 .com、.cn 和 .net。

按下回车后,极狐GitLab Duo 会根据当前文件的包名、已导入的依赖、项目里其他函数的命名风格,生成一个符合上下文的 ValidateEmail 函数。生成的代码不一定完美,但它已经替你完成了最枯燥的骨架搭建工作。

04 上下文:代码建议为什么能"看懂"你的项目

代码建议的效果很大程度上取决于它能获取多少上下文。官方文档指出,极狐GitLab Duo 代码建议会根据当前打开的文件、光标附近的代码、项目使用的库等信息构建请求。这意味着:

  • 如果你在项目根目录打开整个仓库,而不是只打开单个文件,建议质量会明显更高。

  • 如果你已经通过 git remote add 把项目关联到极狐GitLab 实例,扩展可以更好地理解项目归属和依赖关系。

  • 包含 .git 目录的完整项目路径应被添加到 IDE 工作区中。

为了让生成结果更贴合项目,开发者还可以主动调整代码建议使用的上下文。例如,在大型项目中,把相关文件放在同一窗口、保持依赖文件处于打开状态、避免在临时文件里请求复杂生成,都能提升建议的准确率。

需要强调的是,AI 的输出具有非确定性。相同的输入在不同时间可能得到不同结果。因此,官方明确提醒:代码建议可能生成无关、不完整、存在安全风险或导致流水线失败的代码。代码审查最佳实践仍然适用。

05 人工复核:把 AI 当作配对程序员,而不是替代者

极狐GitLab Duo 代码建议的定位不是取代工程师,而是作为随时在线的配对程序员。它帮你补齐语法细节、生成重复样板、提供实现思路,但最终的逻辑正确性、安全性和可维护性判断,必须由人来完成。

团队可以建立几条简单规则,把代码建议安全地纳入工作流:

  1. 生成即审查:所有由 AI 生成的代码,都必须经过与人工编写代码同等严格的代码评审。

  2. 聚焦边界条件:AI 生成的函数往往主路径正确,但边界处理、错误返回、空值检查容易被忽略,评审时要有意识关注。

  3. 避免直接复制涉密逻辑:不要在注释里写入密码、密钥、内部架构细节或客户数据。

  4. 保持提示词版本化:对于团队反复使用的生成模式,可以把高质量提示词整理到项目 Wiki 或 AI Catalog 中,沉淀为团队资产。

  5. 结合流水线门禁:把单元测试、SAST、密钥检测接入 CI/CD,让 AI 生成代码也必须通过同样的质量关卡。

这种"AI 生成 + 人工复核 + 流水线验证"的三层模式,既享受了 AI 的提效,又守住了代码质量的底线。

06 模型与部署:云托管、私有化与自部署模型

在模型层面,极狐GitLab Duo 代码建议在不同部署形态下提供了灵活选择:

  • JihuLab.com:由极狐GitLab 托管模型,并通过云 AI 网关连接。开发者无需关心模型部署,开箱即用。

  • 私有化部署:同样可以使用极狐GitLab 托管模型加云 AI 网关;如果组织有数据不出域要求,也可以选择自部署模型,由企业自己托管 AI 网关和语言模型,支持极狐GitLab 管理的模型、其他兼容模型或企业自带模型。

版本演进上,官方文档记录了几个关键节点:

  • 16.1 引入对国内 SOTA 模型的支持。

  • 16.3 引入代码生成能力。

  • 16.7 代码建议 GA。

  • 17.11 默认启用国内 SOTA 大模型进行代码补全。

  • 18.1 将国内 SOTA 大模型设为默认模型。

  • 18.2 将代码生成的默认模型改为国内 SOTA 大模型。

这些版本信息对国产化部署和合规要求较高的企业尤其重要,因为它意味着核心推理能力可以在国内模型上完成,而不依赖海外服务。

写在最后

从"自动补全一行代码"到"根据注释生成一个函数",极狐GitLab Duo 代码建议覆盖了开发者日常编码中最常见的两类需求。它不是孤立地挂在某个菜单里,而是直接嵌入 VS Code、JetBrains、Visual Studio、Eclipse 和 Neovim,让 AI 能力出现在开发者最自然的工作位置。

但工具的价值最终取决于使用它的人。只有把握好"补全与生成"的适用场景、把项目上下文准备好、坚持人工复核与流水线门禁,代码建议才能真正从"有趣的玩具"变成"可靠的效率杠杆"。

AI 可以帮你写得更快,但把好代码关的责任,始终在工程师自己手中。