在 VSCode 中本地运行 DeepSeek,打造强大的私人 AI

在 VSCode 中本地运行 DeepSeek,打造强大的私人 AI

        本文将分步向您展示如何在本地安装和运行 DeepSeek、使用 CodeGPT 对其进行配置以及开始利用 AI 来增强您的软件开发工作流程,所有这些都无需依赖基于云的服务。 

步骤 1:在 VSCode 中安装 Ollama 和 CodeGPT

        要在本地运行 DeepSeek,我们首先需要安装Ollama,它允许我们在我们的机器上运行 LLM,以及CodeGPT,它是集成这些模型以提供编码辅助的 VSCode 扩展。

安装 Ollama

Ollama 是一个轻量级平台,可以轻松运行本地 LLM。

下载Ollama

访问官方网站:https://ollama.com

  • 下载适合您的操作系统(Windows、macOS 或 Linux)的安装程序。
  • 验证安装
    安装后,打开终端并运行:

ollama --version 

如果 Ollama 安装正确,它将显示已安装的版本。

在 Visual Studio Code 中安装 CodeGPT

打开 VSCode并导航到扩展市场(Ctrl + Shift + X 或 macOS 上为 Cmd + Shift + X)。

搜索“CodeGPT”并点击安装。

或者您可以在此处创建一个免费帐户:https://codegpt.co

安装 Ollama 和 CodeGPT 后,我们现在可以下载并配置 DeepSeek 以开始在本地使用 AI 进行编码。 

第 2 步:下载并设置模型

现在您已经成功安装了 Ollama 和 CodeGPT,现在是时候下载您将在本地使用的模型了。

  • 聊天模型:deepseek-r1:1.5b,针对较小的环境进行了优化,可以在大多数计算机上顺利运行。
  • 自动补全模型:deepseek-coder:1.3b。该模型利用中间填充 (FIM)技术,可以在您编写代码时提供智能自动补全建议。它可以预测并建议函数或方法的中间部分,而不仅仅是开头或结尾。

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

要开始使用聊天模型:

  • VSCode中打开CodeGPT
  • 导航到侧边栏中的“本地 LLM”部分。
  • 从可用选项中,选择Ollama作为本地 LLM 提供商。
  • 选择模型deepseek-r1:1.5b
  • 点击下载按钮。模型将自动开始下载。

下载完成后,CodeGPT 将自动安装模型。安装完成后,您就可以开始与模型进行交互了。

现在,您可以轻松地查询有关代码的模型。只需在编辑器中突出显示任何代码,使用#符号将额外文件添加到查询中,然后利用强大的命令快捷方式,例如: 

/fix — 用于修复错误或建议改进代码。
/refactor — 用于清理和改进代码结构。
/Explain — 获取任何一段代码的详细解释。
这种聊天模型非常适合帮助解决特定问题或获取有关代码的建议。

下载自动完成模型 (deepseek-coder:base)

为了增强代码自动完成功能:

在 VSCode 中打开终端。
运行以下命令来提取deepseek-coder:base模型:

ollama pull deepseek-coder:base

此命令将自动完成模型下载到您的本地机器。
下载完成后,返回CodeGPT并导航到自动完成模型部分。
从可用模型列表中选择deepseek-coder:base 。

选择后,您就可以开始编码。在您输入时,模型将开始提供实时代码建议,帮助您轻松完成函数、方法甚至整个代码块。 

步骤 3:享受无缝本地和私人人工智能编码

        设置模型后,您现在可以享受使用这些强大工具的全部好处,而无需依赖外部 API。通过在您的机器上本地运行所有内容,您可以确保完全的隐私和对编码环境的控制。无需担心数据离开您的计算机,一切都保持安全和私密。

如果您喜欢此文章,请收藏、点赞、评论,谢谢,祝您快乐每一天。   

Read more

Java分治算法题目练习(快速/归并排序)

Java分治算法题目练习(快速/归并排序)

分治算法 * 颜色分类 * 排序数组(快排) * 数组中第K个最大元素 * 最小的K个数 * 排序数组(归并) * 交易逆序对的总数 * 翻转对 * 计算右侧小于当前元素的个数 使用快速排序和归并排序进行解决问题,因为这两个都是采用归并的思想 颜色分类 题目解析:将其数组中0放在左边,1放在中间,2放在右边 在双指针算法中有一个移动零的题目,就是将所有0元素移动到右边,但是非0元素相对位置不改变 那题使用双指针将其数组分为三部分,因此这题也可以将其数组分块 left表示为0区域最右侧,i遍历数组,right表示2区域最左侧 使用这三个指针将这个数组分为了4部分 classSolution{publicvoidsortColors(int[] nums){//可以将其数组分为三部分//[0,left]:全是0//[left+1,i-1]全都是1//[i,right-1]待扫描//[right,n-1]全是2int left =-1;int i =0;

By Ne0inhk
【C++:哈希表封装】用哈希表封装unordered_map和unordered_set

【C++:哈希表封装】用哈希表封装unordered_map和unordered_set

🔥艾莉丝努力练剑:个人主页 ❄专栏传送门:《C语言》、《数据结构与算法》、C/C++干货分享&学习过程记录、Linux操作系统编程详解、笔试/面试常见算法:从基础到进阶、测试开发要点全知道 ⭐️为天地立心,为生民立命,为往圣继绝学,为万世开太平 🎬艾莉丝的简介: 🎬艾莉丝的C++专栏简介: C++的两个参考文档  老朋友(非官方文档):cplusplus 官方文档(同步更新):C++ 官方参考文档 set和multiset的参考文档:set、multiset map和multimap的参考文档:map、multimap unordered_set和unordered_multiset的参考文档:unordered_set、unordered_multiset unordered_map和unordered_multimap的参考文档: unordered_map、unordered_

By Ne0inhk
HDFS数据块机制深度解析:块大小设计与存储哲学

HDFS数据块机制深度解析:块大小设计与存储哲学

HDFS数据块机制深度解析:块大小设计与存储哲学 * 引言:块——HDFS存储的核心抽象 * 一、HDFS默认块大小 * 1.1 版本演进与默认值 * 1.2 查看和验证块大小 * 1.3 配置文件中的设置 * 二、为什么HDFS采用块存储? * 2.1 核心设计思想 * 2.2 详细解析:为什么块存储如此重要? * **2.2.1 减少寻址开销,提升I/O效率** * **2.2.2 支持超大文件,超越单机限制** * **2.2.3 简化存储设计,降低元数据复杂度** * **2.2.4 便于数据复制,增强容错性** * **2.2.5 支持数据本地性,

By Ne0inhk