本地部署DeepSeek集成VSCode创建自己的AI助手

文章目录

    • 安装Ollama和CodeGPT
      • 安装Ollama
      • 安装CodeGPT
    • 下载并配置DeepSeek模型
      • 下载聊天模型(deepseek-r1:1.5b)
      • 下载自动补全模型(deepseek-coder:1.3b)
    • 使用DeepSeek进行编程辅助
      • 配置CodeGPT使用DeepSeek模型
      • 开始使用AI助手
    • ✍️相关问答
      • 如何使用DeepSeek进行代码重构建议
      • DeepSeek在代码解释方面的应用实例
      • 如何优化DeepSeek模型在VSCode中的性能
    • 🧐脑图

本地使用DeepSeek集成VSCode创建自己的AI助手,需要安装必要的软件、下载并配置DeepSeek模型,然后使用这些工具进行编程辅助。

安装Ollama和CodeGPT

安装Ollama

  • 下载并安装Ollama:访问Ollama官方网站(https://ollama.com),根据您的操作系统(Windows、macOS或Linux)下载并安装Ollama。安装完成后,打开终端并运行ollama --version命令,验证安装是否成功。
  • 环境变量配置:安装完成后,设置关键环境变量,如OLLAMA_MODELS(模型文件存放目录)、OLLAMA_HOST(Ollama服务监听的网络地址)、OLLAMA_PORT(监听端口)等,以确保Ollama正常运行。

安装CodeGPT

  • 安装CodeGPT插件:打开Visual Studio Code(VSCode),进入扩展市场(快捷键:Ctrl + Shift + X 或 Cmd + Shift + X),搜索“CodeGPT”并点击安装。
  • 配置API密钥:安装CodeGPT后,您需要注册OpenAI账号并获取API密钥。在CodeGPT的设置页面,填写API密钥,以便CodeGPT能够通过OpenAI API进行编程辅助。

下载并配置DeepSeek模型

下载聊天模型(deepseek-r1:1.5b)

  • 下载模型:在VSCode中打开CodeGPT,选择本地LLMs,然后选择Ollama作为本地LLM提供商,选择deepseek-r1:1.5b并点击下载按钮。
  • 验证安装:下载完成后,启动Ollama服务,确保模型已成功加载。您可以通过在终端中运行ollama run deepseek-r1:1.5b来验证。

下载自动补全模型(deepseek-coder:1.3b)

  • 下载模型:在VSCode的终端中运行命令ollama pull deepseek-coder:1.3b下载模型。
  • 配置自动补全:返回CodeGPT,导航至“自动补全模型”部分,选择deepseek-coder:1.3b,以便在编写代码时提供智能自动补全建议。

使用DeepSeek进行编程辅助

配置CodeGPT使用DeepSeek模型

  • 选择本地LLMs:在VSCode中打开CodeGPT设置,选择“本地LLMs”,然后选择Ollama和deepseek-r1:1.5b模型。
  • 配置AI代码自动补全:在“AI代码自动补全”配置页面,选择deepseek-coder:1.3b模型,以便在编写代码时提供实时建议。

开始使用AI助手

  • 实时代码建议和自动补全:在VSCode中编写代码时,DeepSeek将提供实时的代码建议和自动补全功能。您可以使用命令如/fix/refactor/explain等与模型交互,获取代码修复、重构和解释建议。
  • 注意事项:确保API Key的有效性,并注意每个账号每天的API调用次数限制,避免高频率、大量的调用。

通过安装Ollama和CodeGPT,下载并配置DeepSeek模型,您可以在本地VSCode中创建一个强大的AI助手。这个AI助手不仅能帮助您编写代码,还能提供代码优化和重构建议,极大地提升编程效率。

✍️相关问答

如何使用DeepSeek进行代码重构建议

要使用DeepSeek进行代码重构建议,您可以按照以下步骤进行操作:

安装和配置DeepSeek:

确保已经安装了DeepSeek插件。如果没有安装,可以按照以下步骤进行安装:
打开VSCode,按下快捷键 Ctrl + Shift + P(Windows/Linux)或 Command + Shift + P(Mac)打开命令面板。
输入 ext install colourafredi.vscode-deepseek 并按回车键进行安装。
安装完成后,点击VSCode左侧的DeepSeek图标进行配置。您可以选择使用本地部署的DeepSeek R1模型,或者使用其他可用的模型。
使用DeepSeek进行代码重构:

在VSCode中打开您要重构的代码文件。
选中您希望重构的代码片段,右键点击并选择 DeepSeek 相关命令,例如 重构优化。
或者,您可以直接在输入框中输入 DeepSeek: 重构下面代码并告诉我你改动了哪里,然后按回车发送请求。
分析和建议:

DeepSeek会智能分析代码复杂度,包括圈复杂度、认知复杂度和代码重复度等指标。
根据分析结果,DeepSeek会生成重构建议,例如合并逻辑、优化性能、消除冗余代码等。
您可以根据DeepSeek提供的建议手动应用重构,或者让DeepSeek自动应用重构。
示例:

假设以下代码:

def process_user_data(users):result = []for user in users:if user['age'] > 18:if user['status'] == 'active':temp = {}temp['name'] = user['name']temp['id'] = user['id']result.append(temp)return result

选中上述代码片段,右键点击并选择 DeepSeek -> 重构优化。
DeepSeek会分析代码并建议将嵌套的 if 语句重构为更简洁的形式,例如使用列表推导式:

def process_user_data(users):return [{'name': user['name'], 'id': user['id']} for user in users if user['age'] > 18 and user['status'] == 'active']

DeepSeek在代码解释方面的应用实例

DeepSeek在代码解释方面的应用实例主要体现在其智能编程和代码生成能力上。以下是一些具体的应用实例:

代码生成: DeepSeek能够根据用户的需求生成代码示例,帮助程序员更快地编写代码。例如,当程序员需要生成复杂的数据处理代码时,DeepSeek可以提供相应的代码示例,如对列表进行排序并计算平均值的Python代码。

代码优化与调试: DeepSeek可以分析现有代码,提供优化建议和调试帮助。例如,在Java代码中,DeepSeek可以检测到性能瓶颈,并提供优化方案,如使用StringBuilder代替字符串拼接以提高效率。

智能编程: DeepSeek智能编程功能可以一键生成代码,提高开发效率。例如,DeepSeek可以智能生成RESTful API代码或Vue + Vuex状态管理代码,帮助开发者快速搭建应用框架。

如何优化DeepSeek模型在VSCode中的性能

要优化DeepSeek模型在VSCode中的性能,可以参考以下建议:

选择合适的模型: 根据需求选择合适的DeepSeek模型。例如,deepseek-reasoner模型在推理速度和准确性上表现良好,适合编程辅助任务。

本地部署模型: 如果担心隐私或成本问题,可以考虑本地部署DeepSeek模型。本地部署可以减少API调用的延迟,并且不涉及API Key的使用限制。

优化API Key使用: 如果选择使用在线API服务,请注意API Key的使用限制。避免频繁请求无关紧要的问题,以保持高效的使用体验。

利用上下文信息: 在使用DeepSeek进行代码生成时,提供更多的上下文信息可以帮助模型更好地理解您的需求,从而生成更准确的代码。

定期更新插件和模型: 保持VSCode插件和DeepSeek模型的更新,以获得最新的性能改进和功能增强。

🧐脑图

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/69724.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

云原生AI Agent应用安全防护方案最佳实践(上)

当下,AI Agent代理是一种全新的构建动态和复杂业务场景工作流的方式,利用大语言模型(LLM)作为推理引擎。这些Agent代理应用能够将复杂的自然语言查询任务分解为多个可执行步骤,并结合迭代反馈循环和自省机制&#xff0…

解锁云电脑爽玩TGA游戏,ToDesk、海马云等多款云电脑游戏横测

作为一名游戏爱好者,我深入研究了云电脑技术在游戏娱乐中的应用。通过对比传统游戏机与云电脑的成本效益,我发现云电脑以其低成本和灵活性脱颖而出。我以自身为例,分析了云电脑如何满足对游戏体验的高要求。在测评中,我选择了ToDe…

【Android开发】安卓手机APP使用机器学习进行QR二维码识别

前言:本项目是一个 Android 平台的二维码扫描应用,具备二维码扫描和信息展示功能。借助 AndroidX CameraX 库实现相机的预览、图像捕获与分析,使用 Google ML Kit 进行二维码识别。为方便大家了解项目全貌,以下将介绍项目核心代码文件 MainActivity.java 和 AndroidManifes…

uniapp中对于文件和文件夹的处理,内存的查询

目录 移动文件到指定文件夹 新增本地文件夹 设定本地文件过期时间,清除超时文件,释放内存 操作本地文件之----删除 uniapp获取设备剩余存储空间的方法 读取本地文件夹下的文件 移动文件到指定文件夹 function moveTempFile(tempFilePath, targetFo…

qt widget和qml界面集成到一起

将 Qt Widgets 和 QML 界面集成在一起可以利用 QQuickWidget 或 QQuickView。以下是基本步骤: 使用 QQuickWidget 创建 Qt Widgets 项目: 创建一个基于 Widgets 的应用程序。添加 QQuickWidget: 在你的窗口或布局中添加 QQuickWidget。 例如,可以在 QMainWindow 中使用: …

HTML之JavaScript使用JSON

HTML之JavaScript使用JSON JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。JSON是JavaScript对象的字符串表示法,它使用文本表示一个js对象的信息,可以将json字符串转换…

新数据结构(4)——Java继承

基本概念 继承的本质:重复使用已经定义好的方法和域,实现代码的重复利用。 使用继承之后,创建的子类可以方便地调用父类中已经定义的方法。 一个继承的例子: 重载和重写 重载 重载:发生在同一个类里,指…

VMware Workstate 的 Ubuntu18 安装 vmware tools(不安装没法共享)

在共享主机路径后,可以在: /mnt/hgfs/下方找到共享的文件。但没有安装vmware tool时是没法共享的。 如何安装vmware tool,网上版本很多。这里记录一下: VMware Workstation 17 Pro,版本:17.6.0 虚拟机系统…

【每日一题 | 2025】2.3 ~ 2.9

个人主页:GUIQU. 归属专栏:每日一题 文章目录 1. 【2.3】P8784 [蓝桥杯 2022 省 B] 积木画2. 【2.4】P8656 [蓝桥杯 2017 国 B] 对局匹配3. 【2.5】[ABC365D] AtCoder Janken 34. 【2.6】P8703 [蓝桥杯 2019 国 B] 最优包含5. 【2.7】P8624 [蓝桥杯 2015…

ARM Cortex-M3/M4 权威指南 笔记【二】架构

一、架构 1.1 架构简介 Cortex-M3/M4 处理器都基于 ARMv7-M 架构。最初的 ARMv7-M 架构是随着 Cortex-M3 处理器一同引入的,而在 Cortex-M4 发布时,架构中又额外增加了新的指令和特性,改进后的架构有时也被称为 ARMV7E-M。要了解 ARM7-M 和…

Java进阶14 TCP日志枚举

Java进阶14 TCP&日志&枚举 一、网络编程TCP Java对基于TCP协议得网络提供了良好的封装,使用Socket对象来代表两端的通信端口,并通过Socket产生IO流来进行网络通信。 1、TCP协议发数据 1.1 构造方法 方法 说明 Socket(InetAddress address…

【学习笔记】vue-cli中组件间传参的方式

一、父子组件传参 首先创建子组件,子组件的名字为component1.vue <template><div class""><div class""><span>接受父组件:{{name}}</span><el-button type"primary" click"Forward()">打印父组…

jenkins备份还原配置文件

下载ThinBackup插件 方式1 从插件市场直接下载 Manage Jenkins->Manage Plugins->可选插件搜索 注意&#xff1a;有时可能因为网络或者版本问题下载不了&#xff0c;好像是默认下载最新版本&#xff0c;可选择手动安装&#xff01; 方式二 手动安装插件 点击查看手…

剑指 Offer II 019. 最多删除一个字符得到回文

comments: true edit_url: https://github.com/doocs/leetcode/edit/main/lcof2/%E5%89%91%E6%8C%87%20Offer%20II%20019.%20%E6%9C%80%E5%A4%9A%E5%88%A0%E9%99%A4%E4%B8%80%E4%B8%AA%E5%AD%97%E7%AC%A6%E5%BE%97%E5%88%B0%E5%9B%9E%E6%96%87/README.md 剑指 Offer II 019. 最…

基于单片机的电子式单项智能电表设计(论文+源码)

1. 系统整体方案设计 本课题为基于单片机的电子式单项智能电表&#xff0c;在此设计如图2.1所示的系统总体架构&#xff0c;其采用STM32单片机作为主控制器&#xff0c;搭配外设HLW8032模块实现对电压&#xff0c;电流&#xff0c;功率因数&#xff0c;电能消耗等参数进行检测…

C#/.NET/.NET Core技术前沿周刊 | 第 24 期(2025年1.27-1.31)

前言 C#/.NET/.NET Core技术前沿周刊&#xff0c;你的每周技术指南针&#xff01;记录、追踪C#/.NET/.NET Core领域、生态的每周最新、最实用、最有价值的技术文章、社区动态、优质项目和学习资源等。让你时刻站在技术前沿&#xff0c;助力技术成长与视野拓宽。 欢迎投稿、推荐…

CentOS本机配置为时间源

CentOS本机配置为时间源 安装chrony&#xff0c;默认已安装修改配置文件 /etc/chrony.conf客户端配置 安装chrony&#xff0c;默认已安装 yum -y install chrony修改配置文件 /etc/chrony.conf # cat /etc/chrony.conf | grep -Ev "^$|#" server ceph00 iburst dri…

java项目之基于推荐算法的图书购物网站源码(ssm+mybatis+mysql)

风定落花生&#xff0c;歌声逐流水&#xff0c;大家好我是风歌&#xff0c;混迹在java圈的辛苦码农。今天要和大家聊的是一款基于ssm的基于推荐算法的图书购物网站项目。项目源码以及部署相关请联系风歌&#xff0c;文末附上联系信息 。 项目简介&#xff1a; 基于推荐算法的…

使用亚马逊针对 PyTorch 和 MinIO 的 S3 连接器进行模型检查点处理

2023 年 11 月&#xff0c;Amazon 宣布推出适用于 PyTorch 的 S3 连接器。适用于 PyTorch 的 Amazon S3 连接器提供了专为 S3 对象存储构建的 PyTorch 数据集基元&#xff08;数据集和数据加载器&#xff09;的实现。它支持用于随机数据访问模式的地图样式数据集和用于流式处理…

基于 Python(Flask)、JavaScript、HTML 和 CSS 实现前后端交互的详细开发过程

以下是一个基于 Python&#xff08;Flask&#xff09;、JavaScript、HTML 和 CSS 实现前后端交互的详细开发过程&#xff1a; --- ### 一、技术选型 1. **后端**&#xff1a;Python Flask&#xff08;轻量级Web框架&#xff09; 2. **前端**&#xff1a;HTML/CSS JavaScript&…