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 代碼助手推薦,歡迎在評論區交流!


🌟 你的支持是我持續創作的動力,歡迎點贊、收藏、分享!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/895863.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/895863.shtml
英文地址,請注明出處:http://en.pswp.cn/news/895863.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

2025.2.20總結

今晚評測試報告,評到一半,由于看板數據沒有分析完,最后讓我搞完再評. 盡管工作了多年的同事告訴我,活沒干完,差距比較大,沒資格評報告,但還是本著試試的態度,結果沒想到評審如此嚴苛…

ok113i——交叉編譯音視頻動態庫

提示:buildroot支持ffmpeg和SDL,但博主的ffmpeg是按下面方法編譯通過,SDL使用buildroot直接編譯也通過; 1. 下載ffmpeg源碼 下載鏈接:https://github.com/FFmpeg/FFmpeg/tags 根據版本需要自行下載壓縮包&#xff0c…

什么叫不可變數據結構?

不可變數據結構(Immutable Data Structures)是指一旦創建之后,其內容就不能被修改的數據結構。這意味著任何對不可變數據結構的“修改”操作實際上都會返回一個新的數據結構,而原始數據結構保持不變。 一、不可變數據結構的核心特點 不可變性:一旦創建后,數據結構的內容…

深度學習之圖像分類(一)

前言 圖像回歸主要是對全連接進行理解 而圖像分類任務主要是對卷積的過程進行理解 這一部分會介紹一些基礎的概念 卷積的過程(包括單通道和多通道) 理解一個卷積神經網絡工作的過程 以及常見的模型的類別和創新點 圖像分類是什么 定義 圖像分類是指將輸…

AutoDock CrankPep or ADCP進行蛋白質多肽對接

需求描述 使用AutoDock CrankPep or ADCP進行蛋白質多肽對接 硬件及系統配置 自用電腦型號如下: 電腦:Precision Tower 7810 (Dell Inc.) CPU : Intel Xeon CPU E5-2686 v4 2.30GHz GPU: NVIDIA GeForce GTX 1070 Linux版本&a…

Django 5實用指南(二)項目結構與管理

2.1 Django5項目結構概述 當你創建一個新的 Django 項目時,Django 會自動生成一個默認的項目結構。這個結構是根據 Django 的最佳實踐來設計的,以便開發者能夠清晰地管理和維護項目中的各種組件。理解并管理好這些文件和目錄結構是 Django 開發的基礎。…

LabVIEW利用CANopen的Batch SDO寫入

本示例展示了如何通過CANopen協議向設備寫入Batch SDO(批量服務數據對象)。Batch SDO允許用戶在一次操作中配置多個參數,適用于設備的批量配置和參數設置。此方法能夠簡化多個參數的寫入過程,提高設備管理效率。 主要步驟&#xf…

WPF9-數據綁定進階

目錄 1. 定義2. 背景3. Binding源3.1. 使用Data Context作為Binding的源3.2. 使用LINQ檢索結果作為Binding的源 4. Binding對數據的轉換和校驗4.1. 需求4.2. 實現步驟4.3. 值轉換和校驗的好處4.3.1. 數據轉換的好處 4.4. 數據校驗的好處4.5. 原理4.5.1. 值轉換器原理4.5.2. 數據…

大數據治理:數字時代的關鍵密碼

大數據治理:數字時代的關鍵密碼 在信息技術飛速發展的今天,數字化浪潮席卷全球,深刻地改變著我們的生活和工作方式。數據,作為數字化時代的核心資產,正以前所未有的速度增長和積累。據國際數據公司(IDC&am…

LeetCode 1299.將每個元素替換為右側最大元素:倒序遍歷,維護最大值,原地修改

【LetMeFly】1299.將每個元素替換為右側最大元素:倒序遍歷,維護最大值,原地修改 力扣題目鏈接:https://leetcode.cn/problems/replace-elements-with-greatest-element-on-right-side/ 給你一個數組 arr ,請你將每個…

機器學習面試題匯總

1. 基礎知識 什么是監督學習和無監督學習? 監督學習是基于已標注的訓練數據來學習預測模型;無監督學習則是在沒有標簽的數據上進行學習,尋找數據的結構或模式。什么是過擬合和欠擬合? 過擬合是指模型在訓練數據上表現很好,但在測試數據上表現差。欠擬合是指模型在訓練數據…

【SQL教程|07】sql中條件查詢where用法示例

SQL WHERE 條件查詢教程 在SQL中,WHERE 條件用于在 SELECT 語句后過濾結果集,只返回符合條件的記錄。它幫助我們從大量數據中提取所需的信息。以下是使用 WHERE 條件的逐步指南。 1. 基本語法 SELECT [字段] FROM [表] WHERE [條件];SELECT&#xff1a…

力扣 跳躍游戲 II

貪心算法,存下每一步的最遠,去達到全局的最小跳躍次數。 題目 從題中要達到最少次數,肯定是每一步盡可能走遠一點。但注意j被限制了范圍,這種不用想每一步遍歷時肯定選最大的num[i],但要注意,題中是可以到…

如何查看 Linux 服務器的 MAC 地址:深入解析與實踐指南

💝💝💝歡迎來到我的博客,很高興能夠在這里和您見面!希望您在這里可以感受到一份輕松愉快的氛圍,不僅可以獲得有趣的內容和知識,也可以暢所欲言、分享您的想法和見解。 推薦:kwan 的首頁,持續學…

Linux驅動學習(二)--字符設備

設備分類 字符設備塊設備網絡設備 內核結構圖&#xff1a; 字符設備號 字符設備號是32位的無符號整型值 高12位&#xff1a;主設備號低20位&#xff1a;次設備號 查看設備號 cat /proc/devices 設備號構造 直接使用宏MKDEV #define MKDEV(ma,mi) (((ma) << MINORBITS…

開發小技巧分享 02:xml解析工具

1.百度詞條 可擴展標記語言 (Extensible Markup Language, XML) &#xff0c;標準通用標記語言的子集&#xff0c;可以用來標記數據、定義數據類型&#xff0c;是一種允許用戶對自己的標記語言進行定義的源語言。 XML是標準通用標記語言 可擴展性良好,內容與形式分離,遵循嚴格的…

ffmpeg configure 研究1-命令行參數的分析

author: hjjdebug date: 2025年 02月 14日 星期五 17:16:12 CST description: ffmpeg configure 研究1 ./configure 命令行參數的分析 文章目錄 1 configure 對命令行參數的分析,在4019行1.1 函數名稱: is_in1.2. 函數名稱: enable1.3. 函數名稱: set_all 2 執行退出判斷的關鍵…

Linux操作系統:從分布式計算到容器化的實踐

Linux集群與高可用性技術&#xff1a;從分布式計算到容器化的實踐 摘要 隨著云計算和大數據技術的飛速發展&#xff0c;Linux集群和高可用性技術已成為現代IT架構的核心組成部分。本文以幽默風趣的方式&#xff0c;深入探討了Linux集群技術&#xff08;如Hadoop、Spark等分布…

python和pycharm 和Anaconda的關系

好的&#xff0c;下面我會詳細說明 Python、PyCharm 和 Anaconda 三者的關系&#xff0c;并逐一解釋它們的功能和作用。 1. Python&#xff08;編程語言&#xff09; 定義&#xff1a;Python 是一種高級編程語言&#xff0c;設計簡潔&#xff0c;易于學習&#xff0c;且功能強…

STM32 外部中斷和NVIC嵌套中斷向量控制器

目錄 背景 外部中斷/事件控制器(EXTI) 主要特性 功能說明 外部中斷線 嵌套向量中斷控制器 特性 ?中斷線&#xff08;Interrupt Line&#xff09; 中斷線的定義和作用 STM32中斷線的分類和數量 優先級分組 搶占優先級&#xff08;Preemption Priority&#xff09; …