当前位置: 首页 > news >正文

重磅IntelliJ IDEA 2023.2 新版本即将发布,拥抱 AI

d7b92b3d7c0b2c3b23477c61bfbff369.jpeg

IntelliJ IDEA 近期连续发布多个EAP版本,官方在对用户体验不断优化的同时,也新增了一些不错的功能,尤其是人工智能助手补充,AI Assistant,相信在后续IDEA使用中,会对开发者工作效率带来不错的提升。

以下是官方对AI Assistant的介绍和说明:

生成式人工智能和大型语言模型正在迅速改变软件开发工具的格局,将这项技术集成到我们的产品中的决定对我们来说是理所当然的。我们构建人工智能助手功能的方法主要集中在两个方面:

  • 将 AI 辅助融入核心 IDE 用户工作流程。
  • 将 AI 功能与代码理解深度集成,这一直是 JetBrains IDE 的强项。

AI 功能由 JetBrains AI 服务提供支持。该服务将作为产品用户的您透明地连接到不同的大语言模型 (LLM),并在许多 JetBrains 产品中启用特定的 AI 驱动功能。该服务发布时支持 OpenAI,并另外托管 JetBrains 创建的许多较小模型。未来,我们计划将其扩展到更多提供商,让我们的用户能够获得最佳的选项和模型。

我们还计划支持本地和本地模型。对于本地模型,支持的功能集很可能是有限的。

1 人工智能特点

当前的 EAP 版本提供了一个功能示例,表明了我们前进的方向:

  • 人工智能聊天

使用AI Assistant工具窗口与 LLM 进行对话、提出问题或迭代任务。IDE 将提供一些特定于项目的上下文,例如项目中使用的语言和技术。一旦您对结果感到满意,请使用“在插入符号处插入片段”功能将 AI 生成的代码放入编辑器中,或者直接复制它。

a67e5d4f83121f552080420bf96d0f99.jpeg图片

要向 AI 询问特定代码片段,请在编辑器中选择它,然后从AI 操作菜单(可在编辑器上下文菜单中使用或使用Alt+Enter快捷键访问)调用操作。使用选择操作的新聊天允许您提供自己的提示或请求。您可以根据需要选择“解释代码”、“建议重构”或“查找潜在问题”来输入其他标准 AI 帮助提示。程序汪

927899e0755453e1ccff2f34dbf2fba7.jpeg图片
  • 文档生成

如果您需要使用 LLM 生成声明文档,请调用AI 操作菜单并选择生成文档操作。目前 Java、Kotlin 和 Python 支持此功能。

对于 Java 和 Kotlin,当您使用生成文档注释存根的标准方法时,建议生成文档:type /**。IDE 将生成注释的静态已知部分(例如@paramJava 中的标签),AI 将为您生成实际的文档文本。

9a736d548bd3e328cc7daf7520792bf2.jpeg图片

  • 名称建议

当您重命名 Java、Kotlin 或 Python 声明时,AI 将根据其内容建议声明的名称选项。可以在“设置”|“设置”中关闭此功能。工具| 人工智能助手。

5e9d8afba73fe05a9fb4822299e3a0fb.jpeg图片
  • 提交消息生成

提交消息对话框现在有一个使用 AI Assistant 生成提交消息按钮。单击它将您的更改的差异发送到 LLM,这将生成一条描述您的更改的提交消息。

c71e2c9085ba35ef426cf48554cc46a0.jpeg图片

2 如何访问人工智能功能

要访问 AI 功能,您需要使用 JetBrains 帐户登录 JetBrains AI 服务。您可以从AI助手工具窗口登录,也可以从“设置|登录”登录。工具|人工智能助手。

请注意,JetBrains AI 服务可能无法立即向所有人开放。我们会先让一定数量的用户进入,一旦达到最大容量,剩余的用户将被添加到等待列表中。在接下来的几周内,我们将逐步邀请更多的人试用该产品。

目前,对 AI 服务的访问仅限于提供 OpenAI 服务的地区。AI服务在EAP周期内免费使用。我们将在稍后提供许可和定价模型。

最后需要说明,由于OpenAi的区域限制,所以,中国大陆地区现在无法使用该功能,只能期待后续放开。


http://www.lryc.cn/news/94844.html

相关文章:

  • JavaWeb_SpringCloud微服务_Day1-eureka, ribbon, nacos
  • 数据科学领域常用python库
  • 【Android关键字】startActivityForResult/onActivityResult/setResult方法的使用
  • PyTorch深度学习实战(5)——计算机视觉
  • 遥感目标检测(1)--R3Det
  • 使用 vue3-tel-input电话组件时,为什么通过v-model绑定的默认值无效而 通过:value绑定有效?
  • 【运维工程师学习二】OS系统管理
  • 【前端技巧】CSS常用知识碎片(九)
  • SQL 上升的温度
  • Matlab实现最优化(附上多个完整仿真源码)
  • es下载历史的tar文件
  • 顺畅下载chatglm2-6b的模型文件
  • go语言 socket: too many open files 错误分析
  • 分布式搜索--elasticsearch
  • UE5《Electric Dreams》项目PCG技术解析 之 PCGCustomNodes详解(一)
  • 500万PV的网站需要多少台服务器?
  • 拖动排序功能的实现 - 使用HTML、CSS和JavaScript
  • 【STM32MP135 - ST官方源码移植】第三章:OPTEE源码移植教程
  • 云主机安全-私有密钥安全认证
  • 《Web安全基础》02. 信息收集
  • ffmpeg根据原始视频的帧率进行提取视频帧
  • 从零搭建秒杀服务
  • 数据库应用:CentOS 7离线安装PostgreSQL
  • 【PHP面试题42】Laravel依赖注入实现的原理是怎么样的
  • 如何在本地组策略编辑器中启用或禁用剪贴板历史记录
  • 如何与ChatGPT愉快地聊天
  • 使用Gradio库进行交互式数据可视化:Timeseries模块介绍
  • CONTAINER = ALL是ALTER USER语句的默认值
  • 华为发布大模型时代AI存储新品
  • 5G网络功能介绍