在 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

【C++】手搓AVL树

【C++】手搓AVL树

手搓AVL树 * 手搓AVL树 * github地址 * 0. 前言 * 1. 二叉搜索树的缺陷 * 性能分析 * 2. 什么是AVL树 * 概念与定义 * 平衡因子 * 基本性质 * 为什么AVL树不要求左右子树的高度为0呢? * 3. AVL树的实现 * 整体架构设计 * AVL树的结点定义 * AVL树设计 * AVL树的操作实现 * 插入 * 1. 本质 * 2. 思路简述 * 3. 二叉搜索树的插入逻辑 * 4. 更新平衡因子 * 1. 插入后父节点的平衡因子变化分析 * 2. 平衡因子更新后的三种情况: * 3. 更新平衡因子的最坏情况 * 4. 更新平衡因子的代码实现 * 旋转操作 * 旋转的目的 * 一、左单旋 * 触发条件 * 左单旋原理与核心操作 * 代码实现

By Ne0inhk
C++ 仿函数详解:让对象像函数一样调用

C++ 仿函数详解:让对象像函数一样调用

前言 在 C++ 中,仿函数(Functor) 是指重载了 operator() 的类或结构体的对象,它们的行为类似于普通函数,因此可以像函数一样被调用。仿函数在 STL 算法、回调机制、函数适配器等场景中有着广泛的应用。本文将深入探讨仿函数的概念、优点、使用方式,并结合具体示例进行详细解析。 1. 为什么需要仿函数? 在 C++ 中,我们可以用普通函数或 std::function(C++11 引入)来定义可调用对象,但仿函数相比之下有以下优势: * 状态存储:普通函数无法存储状态,而仿函数可以在对象内部维护状态,例如计数器、阈值等。 * 性能优化:由于仿函数是类的实例,可以通过内联优化减少函数调用的开销。 * 与 STL 兼容:STL 容器和算法广泛使用仿函数,如 std::sort() 可接受仿函数作为自定义排序规则。

By Ne0inhk
【C++篇】树影摇曳,旋转无声:探寻AVL树的平衡之道

【C++篇】树影摇曳,旋转无声:探寻AVL树的平衡之道

文章目录 * 从结构到操作:手撕AVL树的实现 * 一、AVL树介绍 * 1.1 什么是AVL树 * 1.2 平衡因子的定义 * 1.3 平衡的意义 * 1.4 AVL树的操作 * 二、AVL树的节点结构 * 2.1 节点结构的定义: * 三、插入操作 * 3.1 插入操作概述 * 3.2 步骤1:按二叉查找树规则插入节点 * 3.3 步骤2:更新平衡因子 * 3.4 步骤3:旋转操作详解 * 3.4.1 右单旋 * 3.4.2 左单旋 * 3.4.3

By Ne0inhk
基石之力:掌握 C++ 继承的核心奥秘

基石之力:掌握 C++ 继承的核心奥秘

目录 1:继承的概念和定义 1.1:继承的概念 1.2:继承定义 1.2.1:继承的格式 1.2.2:继承基类成员访问方式的变化 2:基类和派生类对象赋值转换 2.1:代码1(派生类对象赋值给基类对象) 2.2:代码2(派生类对象赋值给基类对象的引用) 2.3:代码3(派生类对象赋值给基类对象的指针) 3:继承中的作用域 3.1:代码1 3.2:代码2 3.3:代码3 4:派生类的默认成员函数 4.1:父类和子类均有默认构造函数 4.2:子类没有默认构造函数

By Ne0inhk