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

IntelliJ IDEA 接入 AI 编程助手(Copilot、DeepSeek、GPT-4o Mini)

IntelliJ IDEA 接入 AI 编程助手(Copilot、DeepSeek、GPT-4o Mini)

📊 引言

近年来,AI 编程助手已成为开发者的高效工具,它们可以加速代码编写、优化代码结构,并提供智能提示。本文介绍如何在 IntelliJ IDEA 中集成 DeepSeek、GPT-4o Mini、GitHub Copilot,并探索 本地 AI 编程助手 方案,帮助开发者在不同场景下提升编程效率。


👨‍💻 1. GitHub Copilot 集成

Copilot 是由 GitHub 和 OpenAI 推出的 AI 代码补全工具,它可以根据上下文智能生成代码片段。
GitHub Copilot 免费版 vs 付费版对比。

功能免费版付费版
代码补全每月 2,000 次代码补全建议无限制代码建议
Copilot Chat每月 50 条聊天消息无限制聊天消息
AI 模型选择可选择 Claude 3.5 Sonnet 或 GPT-4o额外提供 o1-preview 和 o1-mini 模型
跨文件编辑支持支持
Copilot 扩展生态系统访问支持支持
拉取请求摘要不支持支持
组织范围的策略管理不支持支持
审核日志不支持支持
增加的 GitHub 模型速率限制不支持支持
Copilot 知识库不支持支持
大语言模型微调不支持支持

1.1 安装 GitHub Copilot 插件

  1. 打开 IntelliJ IDEA,进入 File > Settings(Windows)或 Preferences(Mac)。
  2. Plugins 搜索 GitHub Copilot
  3. 点击 Install 并重启 IDEA。

在这里插入图片描述

1.2 配置 GitHub Copilot

  1. 进入 Settings > GitHub Copilot,登录 GitHub 账户。
  2. 启用 Copilot SuggestionsCopilot Chat
  3. 在代码编辑器中尝试输入 /** 或函数定义或者注释,Copilot 会自动补全。

在这里插入图片描述

需要个人 Github 账号开启 Copilot,插件下载完成后按照指引进行登录 Github 并进行功能授权验证,验证完成后即可体验 Github Copilot。

1.3 Copilot 代码辅助示例

代码自动补全(通过注释理解我们需要写的代码逻辑进行补全)。

在这里插入图片描述
可选择指定代码文件点击 Copilot Chat 进行对话代码推理分析,优化我们的代码或者帮我们完成描述的需求。

请添加图片描述


🤖 2. DeepSeek 集成

DeepSeek 是国产 AI 编程助手,支持类代码补全,具备更强的中文理解能力。DeepSeek 需要通过 API 方式接入或本地部署。这里介绍一款插件 CodeGPT,一款人工智能代码助手,已经支持集成市面上常见的大模型,我们通过它接入 DeepSeek。

2.1 安装 CodeGPT 插件

  1. 在 IDEA 插件市场 搜索 CodeGPT
  2. 安装插件并重启。

2.2 配置 API Key 或本地部署

如果使用本地部署,需要运行本地模型,并配置请求地址(具体步骤可参考【DeepSeek + Ollama 本地部署全流程】),下面主要演示 API Key 配置场景。

1.进入 Settings > Tools > CodeGPT > Providers,选择 Custom OpenAI

在这里插入图片描述
2.配置 Custom OpenAI,选择 OpenAI(DeepSeek接口有考虑 OpenAI 兼容,所有大致参数可不变),输入DeepSeek的 API Key(可从 DeepSeek API 官网获取)。

在这里插入图片描述
填写 DeepSeek 上创建的 API Key。

在这里插入图片描述
3.通过 Custom OpenAI 这种方式需要手动填写 DeepSeek API 地址,可以参考官方文档:https://api-docs.deepseek.com/zh-cn/

在这里插入图片描述
按照官网对应的URL进行填写:https://api.deepseek.com/chat/completions
在这里插入图片描述
注意请求的 Headers 可不用变更,需要将 Body 中的 model 修改为:deepseek-reasoner,保存即可。
deepseek-chat 模型已全面升级为 DeepSeek-V3,接口不变。 通过指定 model=‘deepseek-chat’ 即可调用 DeepSeek-V3。
deepseek-reasoner 是 DeepSeek 最新推出的推理模型 DeepSeek-R1。通过指定 model=‘deepseek-reasoner’,即可调用 DeepSeek-R1。

在这里插入图片描述
注意由于当前DeepSeek现在已经停止API接口服务充值,新用户需要等待后续恢复之后再尝试使用。

🛠️ 3. GPT-4o Mini 集成

GPT-4o Mini 是 OpenAI 推出的轻量级 GPT-4o 版本,通过 CodeGPT 插件接入 IntelliJ IDEA,并且是 免费 使用的(每月有次数限制)。

3.1 安装 CodeGPT 插件

  1. 在 IDEA 插件市场 搜索 CodeGPT
  2. 安装插件并重启。

3.2 配置 GPT-4o Mini

  1. 进入 Settings > Tools > CodeGPT > Providers,选择 CodeGPT。
  2. 填写 CodeGPT 的 API Key (CodeGPT官网)
  3. Chat 模型选择 GPT-4o Mini 。启用 Enable Code AssistantEnable code completions 选项。
    在这里插入图片描述

3.3 GPT-4o Mini 智能分析代码示例

使用后觉得效果很不错。

在这里插入图片描述


🔄 4. AI 代码助手对比分析

工具特点适用场景
GitHub Copilot云端 AI 代码补全适合日常开发,智能推荐代码
DeepSeek强中文理解能力,需 API适合国内开发者,支持 API 调用
GPT-4o Mini免费使用,通过 CodeGPT 插件接入适合初学者或轻量 AI 辅助
Ollama + DeepSeek本地模型运行适合私有部署,保护代码隐私

📈 总结

本文介绍了 IntelliJ IDEA 接入 AI 编程助手 的多种方式,包括 GitHub Copilot、DeepSeek、GPT-4o Mini,以及 本地 AI 部署方案。开发者可根据 需求、安全性、网络环境 选择合适的 AI 助手。

如果你有更好的 AI 代码助手推荐,欢迎在评论区交流!


🌟 你的支持是我持续创作的动力,欢迎点赞、收藏、分享!

相关文章:

IntelliJ IDEA 接入 AI 编程助手(Copilot、DeepSeek、GPT-4o Mini)

IntelliJ IDEA 接入 AI 编程助手(Copilot、DeepSeek、GPT-4o Mini) 📊 引言 近年来,AI 编程助手已成为开发者的高效工具,它们可以加速代码编写、优化代码结构,并提供智能提示。本文介绍如何在 IntelliJ I…...

【金三银四】分享数据库笔试题及答案~~

你是否在面试中遇到过关于数据库的笔试题?如何高效地准备这些题目,提升自己的竞争力?本文将为你整理一些经典的数据库笔试题及其答案,助你备战面试。 金三银四马上来了,测试年限较短难免会碰到笔试题,最近…...

3.1 AI Agent产品管理革命:从愿景定义到用户价值交付的全链路方法论

AI Agent产品管理革命:从愿景定义到用户价值交付的全链路方法论 引言:AI时代产品经理的范式跃迁 Gartner预测,到2026年75%的AI项目失败将归因于产品管理缺失。本文揭示AI Agent产品经理的六大核心能力模型,通过GitHub Sentinel等案例,展示如何将大模型技术转化为可持续商…...

MySQL常见错误码及解决方法(1130、1461、2003、1040、2000、1049、1062、1129、2002、1690等)

目录 【问题1】、FATAL: error 1130: Unknown error 1130 【问题2】、FATAL: error: 1461 【问题3】、ERROR 2003 (HY000): Cant connect to MySQL server on "" (113) 【问题4】、FATAL: error 2003: Cant connect to MySQL server on 172.19.111.151 (111) 【问…...

Rhel Centos环境开关机自动脚本

Rhel Centos环境开关机自动脚本 1. 业务需求2. 解决方法2.1 rc.local2.2 rc.d2.3 systemd2.4 systemd附着的方法2.5 tuned 3. 测试 1. 业务需求 一台较老的服务器上面业务比较简单,提供一个简单的网站,但已经没有业务的运维人员. 想达到的效果: 由于是非标准的apache或者nginx…...

2D 游戏艺术、动画和光照

原文:https://unity.com/resources/2d-game-art-animation-lighting-for-artists-ebook 笔记 用Tilemap瓷砖大小为1单元,人物大小在0.5~2单元 PPU :单位像素 pixels per unit 2160 4K分辨率/ 正交相机size*2 完整屏幕显示像素点 有骨骼动…...

基于SSM+uniapp的鲜花销售小程序+LW示例参考

1.项目介绍 系统角色:管理员、商户功能模块:用户管理、商户管理、鲜花分类管理、鲜花管理、订单管理、收藏管理、购物车、充值、下单等技术选型:SSM,Vue(后端管理web),uniapp等测试环境&#x…...

【第3章:卷积神经网络(CNN)——3.1 CNN的基本结构与工作原理】

嘿,小伙伴们,今天咱们来聊聊深度学习里的一大明星——卷积神经网络(CNN)。这东西在图像识别、视频处理等领域简直不要太火,甚至人脸识别、物体检测这些高大上的应用,都离不开它的身影。废话不多说,咱们这就开聊! 一、CNN是什么东东? 在人工智能领域,卷积神经网络(…...

java原子操作类实现原理

文章目录 AtomicLong实现原理递增和递减操作代码总结 LongAdder实现原理实现原理LongAdder 代码分析构造方法sum方法reset方法sumThenReset方法longValue方法add 方法longAccumulate 方法 总结 JUC 包提供 了一系列的原子性操作类,这些类都是使用非阻塞算法 CAS 实现…...

网络安全-攻击流程-传输层

传输层攻击主要针对OSI模型的第四层,涉及TCP和UDP协议的安全漏洞。以下是常见攻击类型及其流程,以及防御措施: 1. SYN洪水攻击(TCP半连接攻击) 攻击流程: 目标选择:确定目标服务器的IP地址和开…...

【R语言】回归分析

一、线性回归分析 1、lm()函数 lm()函数是用于拟合线性模型(Linear Models)的主要函数。线性模型是一种统计方法,用于描述一个或多个自变量(预测变量、解释变量)与因变量(响应变量)之间的关系…...

在分布式场景下可以使用synchronized加锁么?

首先说结论,在分布式系统中,单纯使用 Java 中的 synchronized 关键字是无法满足需求的,下面从 synchronized 的作用原理、在分布式场景下的局限性以及替代方案等方面详细分析。 一、synchronized 的作用原理 在 Java 中,synchron…...

LeetCodehot 力扣热题100 从前序与中序遍历序列构造二叉树

初始版本 这段代码实现了根据前序遍历和中序遍历重建二叉树。下面我将详细解释每一行的作用&#xff0c;并逐步讲解算法的思路和运行步骤。 代码及注释 class Solution {public:// buildTree 函数用来根据前序遍历(pre)和中序遍历(in)重建二叉树TreeNode* buildTree(vector<…...

Day45(补)【软考】2022年下半年软考软件设计师综合知识真题-计算机软件知识1

文章目录 2022年下半年软考软件设计师综合知识真题第1章 计算机系统基础知识(12/38)计算机软件知识1-6/6哲学概念及收敛思维&#xff1a;是Python程序语言中&#xff0c;处理异常的结构集合&#xff0c;和这个集合之外的结构的区分&#xff0c;考Python集合之外的结构 哲学概念…...

luoguP8764 [蓝桥杯 2021 国 BC] 二进制问题

luogu题目传送门 题目描述 小蓝最近在学习二进制。他想知道 1 到 N 中有多少个数满足其二进制表示中恰好有 K 个 1。你能帮助他吗? 输入格式 输入一行包含两个整数 N 和 K。 输出格式 输出一个整数表示答案。 输入输出样例 输入 #1 7 2 输出 #1 3 说明/提示 对于…...

图形渲染(一)——Skia、OpenGL、Mesa 和 Vulkan简介

1.Skia —— 2D 图形库 Skia 是一个 2D 图形库&#xff0c;它的作用是为开发者提供一个高层次的绘图接口&#xff0c;方便他们进行 2D 图形渲染&#xff08;比如绘制文本、形状、图像等&#xff09;。Skia 本身不直接管理 GPU 或进行底层的渲染工作&#xff0c;而是通过 底层图…...

浏览器打开Axure RP模型

1&#xff0c;直接使用chrome打开&#xff0c;提示下载插件 2&#xff0c;需要做一些操作 打开原型文件&#xff0c;找到resources\chrome\axure-chrome-extension.crx文件&#xff0c;这就是我们需要的Chrome插件。 将axure-chrome-extension.crx文件后缀名改为axure-chrome…...

【计算机网络】数据链路层数据帧(Frame)格式

在计算机网络中&#xff0c;数据帧&#xff08;Frame&#xff09; 是数据链路层的协议数据单元&#xff08;PDU&#xff09;&#xff0c;用于在物理介质上传输数据。数据帧的格式取决于具体的链路层协议&#xff08;如以太网、PPP、HDLC 等&#xff09;。以下是常见数据帧格式的…...

平面与平面相交算法杂谈

1.前言 空间平面方程&#xff1a; 空间两平面如果不平行&#xff0c;那么一定相交于一条空间直线&#xff0c; 空间平面求交有多种方法&#xff0c;本文进行相关讨论。 2.讨论 可以联立方程组求解&#xff0c;共有3个变量&#xff0c;2个方程&#xff0c;而所求直线有1个变量…...

web集群(LVS-DR)

LVS是Linux Virtual Server的简称&#xff0c;也就是Linux虚拟服务器, 是一个由章文嵩博士发起的自由软件项 目&#xff0c;它的官方站点是 www.linuxvirtualserver.org。现在LVS已经是 Linux标准内核的一部分&#xff0c;在 Linux2.4内核以前&#xff0c;使用LVS时必须要重新编…...

边缘计算医疗风险自查APP开发方案

核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...

通过Wrangler CLI在worker中创建数据库和表

官方使用文档&#xff1a;Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后&#xff0c;会在本地和远程创建数据库&#xff1a; npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库&#xff1a; 现在&#xff0c;您的Cloudfla…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

mongodb源码分析session执行handleRequest命令find过程

mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程&#xff0c;并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令&#xff0c;把数据流转换成Message&#xff0c;状态转变流程是&#xff1a;State::Created 》 St…...

基于Flask实现的医疗保险欺诈识别监测模型

基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施&#xff0c;由雇主和个人按一定比例缴纳保险费&#xff0c;建立社会医疗保险基金&#xff0c;支付雇员医疗费用的一种医疗保险制度&#xff0c; 它是促进社会文明和进步的…...

【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例

文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...

Keil 中设置 STM32 Flash 和 RAM 地址详解

文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)

设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile&#xff0c;新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...

Ascend NPU上适配Step-Audio模型

1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统&#xff0c;支持多语言对话&#xff08;如 中文&#xff0c;英文&#xff0c;日语&#xff09;&#xff0c;语音情感&#xff08;如 开心&#xff0c;悲伤&#xff09;&#x…...

【HTTP三个基础问题】

面试官您好&#xff01;HTTP是超文本传输协议&#xff0c;是互联网上客户端和服务器之间传输超文本数据&#xff08;比如文字、图片、音频、视频等&#xff09;的核心协议&#xff0c;当前互联网应用最广泛的版本是HTTP1.1&#xff0c;它基于经典的C/S模型&#xff0c;也就是客…...