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

IntelliJ IDEA 2023.2 新版本,拥抱 AI

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

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

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

  • 将 AI 辅助融入核心 IDE 用户工作流程。

  • 将 AI 功能与代码理解深度集成,这一直是 JetBrains IDE 的强项。

AI 功能由 JetBrains AI 服务提供支持。该服务将作为产品用户的您透明地连接到不同的大语言模型 (LLM),并在许多 JetBrains 产品中启用特定的 AI 驱动功能。该服务发布时支持 OpenAI,并另外托管 JetBrains 创建的许多较小模型。

未来,我们计划将其扩展到更多提供商,让我们的用户能够获得最佳的选项和模型。

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

人工智能特点

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

  • 人工智能聊天

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

图片

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

图片

  • 文档生成

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

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

图片

  • 名称建议

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

图片

  • 提交消息生成

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

图片

如何访问人工智能功能

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

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

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

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

相关文章:

IntelliJ IDEA 2023.2 新版本,拥抱 AI

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

softmax回归

模型 softmax回归是多类分类模型,用于获取每个分类的置信度,置信度计算方式如下 经过全连接层,得到输出O,将O作为softmax的输入 O是输出向量,每个分量表示一个类别,y_hat_i表示i类别的置信度&#xff0…...

.NET 8 Preview 5推出!

作者:Jiachen Jiang 排版:Alan Wang 我们很高兴与您分享 .NET 8 Preview 5 中的所有新功能和改进!此版本是 Preview 4 版本的后续版本。在每月发布的版本中,您将看到更多新功能。.NET 6 和 7 用户可以密切关注此版本,而…...

Spring核心概念、IoC和DI的认识、Spring中bean的配置及实例化、bean的生命周期

初始Spring 一、Spring核心概念1.1IoC(Inversion of Contral):控制反转1.2IoC代码实现1.2DI代码实现 二、bean的相关操作2.1bean的配置2.1.1bean的基础配置2.1.2bean的别名配置2.1.3bean的作用范围配置 2.2bean的实例化 - - 构造方法2.3bean的实例化 - - 实例工厂与…...

git冲突“accept theirs”和“accept yours”

Accept Yours 就是直接选取本地的代码,覆盖掉远程仓库的 Accept Theirs 是直接选取远程仓库的,覆盖掉自己本地的 我们选择Merge,自己手动行进选择、修改。 这里左边部分是你本地仓库的代码,右边部分是远程仓库的代码,中间的res…...

Vision Transformer (ViT)

生成式模型与判别式模型 生成式模型,又称概率模型,是指通过学习数据的分布来建立模型P(y|x),然后利用该模型来生成新的数据。生成式模型的典型代表是朴素贝叶斯模型,该模型通过学习数据的分布来建立概率模型,然后利用该模型来生成新的数据。判别式模型,又称非概率模型,…...

OpenGL Metal Shader 编程:解决图片拉伸变形问题

前面发了一些关于 Shader 编程的文章,有读者反馈太碎片化了,希望这里能整理出来一个系列,方便系统的学习一下 Shader 编程。 由于主流的 Shader 编程网站,如 ShaderToy, gl-transitions 都是基于 GLSL 开发 Shader ,加…...

[SQL挖掘机] - 字符串函数 - concat

介绍: concat函数用于连接字符串的函数。它接受多个字符串作为参数,并将它们按顺序连接起来形成一个新的字符串。 用法: 以下是concat函数的语法: concat(string1, string2, ...)其中,string1, string2, …是要连接的字符串参数。你可以传…...

Rust之所有权

1、所有权的概念: 程序需要管理自己在运行时使用的计算机内部空间。Rust语言采用包含特定规则的所有权系统来管理内存,这套规则允许编译器在编译的过程中执行检查工作,而不会产生任何的运行时开销。 (1)、所有权规则: Rust中的…...

RabbitMQ帮助类的封装

RabbitMQ帮助类的封装 基本部分 public class RabbitMQInvoker {#region Identy private static IConnection _CurrentConnection null;private readonly string _HostName null;private readonly string _UserName null;private readonly string _Password null;#endreg…...

mac 移动硬盘未正常退出,再次链接无法读取(显示)

(1)首先插入自己的硬盘,然后找到mac的磁盘工具 (2)打开磁盘工具,发现自己的磁盘分区在卸载状态;点击无法成功装载。 (3)打开终端,输入 diskutil list查看自…...

短视频账号矩阵系统源码开发部署路径

一、短视频批量剪辑的开发逻辑算法 1.视频剪辑之开发算法 自己研发视频剪辑是指通过对视频素材进行剪切、调整、合并等操作,利用后台计算机算法,进行抽帧抽组抽序进行排列以达到对视频内容进行修改和优化的目的。自己研发的视频剪辑工具可以通过后台码…...

前端 | ( 十一)CSS3简介及基本语法(上) | 尚硅谷前端html+css零基础教程2023最新

学习来源:尚硅谷前端htmlcss零基础教程,2023最新前端开发html5css3视频 系列笔记: 【HTML4】(一)前端简介【HTML4】(二)各种各样的常用标签【HTML4】(三)表单及HTML4收尾…...

Kafka入门到起飞系列 - 副本机制,什么是副本因子呢?

我们一直在讲一个主题会有多个分区,这多个分区可以分布在一台服务器上,也可以分布在多台服务器上,还可以增加分区(Kafka目前只支持分区),这是Kafka提供的一种横向扩展的手段 比如我们创建了一个主题&#x…...

2023年基准Kubernetes报告:6个K8s可靠性失误

云计算日益成为组织构建应用程序和服务的首选目的地。尽管一年来经济不确定性的头条新闻主要集中在通货膨胀增长和银行动荡方面,但大多数组织预计今年的云使用和支出将与计划的相同(45%),或高于计划的(45%)…...

程序员面试系列,k8s常见面试题

原文链接 一、什么是 Kubernetes?解释其主要功能和用途。 Kubernetes(通常简称为K8s)是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。它最初由谷歌开发,并于2014年捐赠给了云原生计算基金会&a…...

docker版jxTMS使用指南:站点的调整

本文讲解4.4版jxTMS中的站点的调整,整个系列的文章请查看:[docker版jxTMS使用指南:docker版jxTMS使用指南:4.4版升级内容 docker版本的使用,请查看:docker版jxTMS使用指南 4.0版jxTMS的说明,请…...

element ui input 深层循环v-model绑定默认数据删除不了的情况

例子&#xff1a; 在项目开发中遇到的&#xff0c;简单记录一下 <el-input style"width: 180px"v-model"item.dataForm"input"handleChangeDataForm($event)"type"number"placeholder"请输入1-2的数值"size"smal…...

GBDT的参数空间与超参数优化

目录 1. 默认参数下的GBDT与其它算法的对比 2. 基于TPE对GBDT进行优化 step1&#xff1a;建立benchmark step2&#xff1a;定义参数init需要的算法 step3&#xff1a;定义目标函数、参数空间、优化函数、验证函数 step4&#xff1a;训练贝叶斯优化器 step5&#xff1a;修…...

多线程练习——抽奖箱

题目&#xff1a; 分析以下需求&#xff0c;并用代码实现&#xff1a; 有一个抽奖池,该抽奖池中存放了奖励的金额,该抽奖池中的奖项为 {10,5,20,50,100,200,500,800,900,2,80,300,700};创建两个抽奖箱(线程)设置线程名称分别为“抽奖箱1”&#xff0c;“抽奖箱2”&#xff0c;随…...

【WiFi帧结构】

文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成&#xff1a;MAC头部frame bodyFCS&#xff0c;其中MAC是固定格式的&#xff0c;frame body是可变长度。 MAC头部有frame control&#xff0c;duration&#xff0c;address1&#xff0c;address2&#xff0c;addre…...

浅谈不同二分算法的查找情况

二分算法原理比较简单&#xff0c;但是实际的算法模板却有很多&#xff0c;这一切都源于二分查找问题中的复杂情况和二分算法的边界处理&#xff0c;以下是博主对一些二分算法查找的情况分析。 需要说明的是&#xff0c;以下二分算法都是基于有序序列为升序有序的情况&#xf…...

ABAP设计模式之---“简单设计原则(Simple Design)”

“Simple Design”&#xff08;简单设计&#xff09;是软件开发中的一个重要理念&#xff0c;倡导以最简单的方式实现软件功能&#xff0c;以确保代码清晰易懂、易维护&#xff0c;并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计&#xff0c;遵循“让事情保…...

MacOS下Homebrew国内镜像加速指南(2025最新国内镜像加速)

macos brew国内镜像加速方法 brew install 加速formula.jws.json下载慢加速 &#x1f37a; 最新版brew安装慢到怀疑人生&#xff1f;别怕&#xff0c;教你轻松起飞&#xff01; 最近Homebrew更新至最新版&#xff0c;每次执行 brew 命令时都会自动从官方地址 https://formulae.…...

Qt 事件处理中 return 的深入解析

Qt 事件处理中 return 的深入解析 在 Qt 事件处理中&#xff0c;return 语句的使用是另一个关键概念&#xff0c;它与 event->accept()/event->ignore() 密切相关但作用不同。让我们详细分析一下它们之间的关系和工作原理。 核心区别&#xff1a;不同层级的事件处理 方…...

Kafka主题运维全指南:从基础配置到故障处理

#作者&#xff1a;张桐瑞 文章目录 主题日常管理1. 修改主题分区。2. 修改主题级别参数。3. 变更副本数。4. 修改主题限速。5.主题分区迁移。6. 常见主题错误处理常见错误1&#xff1a;主题删除失败。常见错误2&#xff1a;__consumer_offsets占用太多的磁盘。 主题日常管理 …...

上位机开发过程中的设计模式体会(1):工厂方法模式、单例模式和生成器模式

简介 在我的 QT/C 开发工作中&#xff0c;合理运用设计模式极大地提高了代码的可维护性和可扩展性。本文将分享我在实际项目中应用的三种创造型模式&#xff1a;工厂方法模式、单例模式和生成器模式。 1. 工厂模式 (Factory Pattern) 应用场景 在我的 QT 项目中曾经有一个需…...

Pydantic + Function Calling的结合

1、Pydantic Pydantic 是一个 Python 库&#xff0c;用于数据验证和设置管理&#xff0c;通过 Python 类型注解强制执行数据类型。它广泛用于 API 开发&#xff08;如 FastAPI&#xff09;、配置管理和数据解析&#xff0c;核心功能包括&#xff1a; 数据验证&#xff1a;通过…...

负载均衡器》》LVS、Nginx、HAproxy 区别

虚拟主机 先4&#xff0c;后7...

Java并发编程实战 Day 11:并发设计模式

【Java并发编程实战 Day 11】并发设计模式 开篇 这是"Java并发编程实战"系列的第11天&#xff0c;今天我们聚焦于并发设计模式。并发设计模式是解决多线程环境下常见问题的经典解决方案&#xff0c;它们不仅提供了优雅的设计思路&#xff0c;还能显著提升系统的性能…...