JetBrains,一家以开发IntelliJ IDEA而闻名的软件开发公司,已通过其早期访问计划(EAP)为其所有基于 IntelliJ 的 IDE 和.NET 工具推出了一种新的 AI 助手。这一重大发布旨在通过将生成式AI和大语言模型(LLM)集成到 JetBrains 产品中来改变软件开发工具的格局。
AI 助手被无缝集成到核心 IDE 用户的工作流中,并增强代码理解能力,这一直是 JetBrains IDE 的强项。AI 功能由 JetBrains AI 服务提供支持,该服务将用户连接到不同的 LLM,并在 JetBrains 产品内启用特定的 AI 功能。在发布时,该服务支持 OpenAI,并托管了由 JetBrains 创建的多个小模型。JetBrains 计划将来将支持更多的供应商,让用户能够有更多的可选项和可用模型。
AI 助手提供了一系列功能,其中一个关键功能是 AI Chat,用户可以通过它与 LLM 对话,可以提问或迭代任务。例如,如果开发人员需要重构某个方法,他们可以通过从上下文菜单中选择 AI Chat 来请求重构建议:AI Actions > Suggest Refactoring。该功能提供了更高水准的辅助,使得重构过程更高效、更不容易出错。
另一个功能是文档生成。用户可以使用 LLM 为声明的内容生成文档,目前支持 Java、Kotlin 和 Python。当用户重命名 Java、Kotlin 或 Python 声明时,AI 将根据声明的内容建议名称选项,这一功能叫作 Name Suggestions。
AI 助手还提供了提交消息生成功能。提交消息对话框现在有一个“使用 AI 助手生成提交消息”的按钮,用户可以点击它,将变更的差异发送给 LLM,LLM 将生成用于描述变更的提交消息。
然而,AI 助手也存在一些限制。JetBrains 计划支持本地模型,但本地模型支持的功能可能会受到限制。此外,目前只有 OpenAI 服务可用的地区才能访问 AI 服务。
在 EAP 期内,AI 服务是免费使用的,JetBrains 表示将在以后提供许可和定价模型。这意味着一旦 EAP 结束,使用 AI 服务将会产生成本。
另外需要注意的是,JetBrains AI 服务可能不会立即对所有人开放。JetBrains 会先让一定数量的用户使用,一旦达到最大容量,其他用户将被添加到等待队列中。在未来几周内,JetBrains 将逐渐邀请更多的人体验该产品。
JetBrains 强调了对用户隐私的承诺,在用户使用 AI 功能时,IDE 需要将请求和代码发送给 LLM 供应商。在数据收集和使用政策方面,JetBrains AI 服务会收集与 AI 功能使用相关的两种数据:行为数据和细节数据。这两种类型的数据收集都由用户完全控制。来自 JetBrains AI 服务的数据被发送给第三方语言模型供应商(如 OpenAI),这意味着这些数据也会在这些供应商的服务器上被处理(根据供应商的政策)。用户和 JetBrains 都无法控制第三方数据处理。JetBrains 确保收集的数据不用于训练生成代码或文本的 ML 模型或向其他用户公开。数据存储时间有限,不超过一年。
最近的LinkedIn调查问卷显示,尽管数据隐私仍然是一些人关注的问题,但开发人员对这项技术的普遍反应是积极的。近期,在TeqNation和DevBCN共同举办的一场题为“AI编码助手之战”的演讲中,CINQ ICT首席技术官Bouke Nijhuis对比了 TabNine、Github Copilot 和 ChatGPT,并说:
我认为这是编程的未来。将来,你不一定要独自开发软件,你可以与你的配对 AI 程序员一起完成工作。
目前,JetBrains 希望能够听到用户对新功能的反馈,包括成功故事、AI 未能达到预期效果的情况以及其他 AI 可能为用户提供帮助的场景。开发人员可以通过点击 AI 助手工具窗口中的“分享反馈”参与问卷调查,并通过向YouTrack报告问题来分享想法和建议。
原文链接:
https://www.infoq.com/news/2023/07/jetbrains-unveils-ai-assistant/
领取专属 10元无门槛券
私享最新 技术干货