Deepseek学习笔记

Deepseek R1常见的主要有如下几个常用的参数版本:

1.5B,基本所有电脑都跑的起来,开发的时候小规模调试很方便,你可以用这个来熟悉各种开发语言与其打交道。

7B,对电脑的配置会有一定的要求,通常4090显卡或平果最新的M系列芯片都可以跑,我有一个1650也能勉强跑起来,但明显速度慢很多。

70B,基本能满足企业的应用。成本基本都在百万以内。

671B,传说中的满血版,部署需要大规模硬件投资。常规部署的成本在百万以上,但也有小成本方案,比如8台M4 pro的Mac mini。如果考虑到模型微调这个成本还会成倍增长。

参数的差距会有多大的不同,比如下图我用1.5B,大小写的问题居然就识别不出来。



所以条件足够的话,开发尽量选7B。

模型的知识怎么来的

从官方得到的都是通用大模型,是基于海量的信息训练得来的。如果需要建立垂直领域(或者说某一专业领域)的解决方案,比如医疗,法律或者公司内部文件,可以对模型进行微调或者通过RAG。

RAG个人理解是给大模型之外挂接了一个增量模型。是大模型的一个外部知识库。

它俩的区别可以比作成一个历史考试,前者是闭卷考时,后者是开卷考试。闭卷考试就是经过一个学期的学习,你已经把知识记在了脑子里。而开卷考试,就是你现去查书中去寻找答案。所以你能看到,成绩一般的学了一个学期学生,这么考下来可能跟一个聪明点的小学生开卷考同样的东西,成绩不会差太多。

微调和RAG怎么选

先说一下,这个微调,别看有个微,其牵扯到的资源和成本可不少。

说回考试的例子,如果你想通过闭卷考时那么就需要长时间的学习,但如果是闭卷考时,在了解一定的技巧之上那么你也能顺利的通过考试。可以看到这两种方式的时间成本差异是很大的。

此外模型的微调需要的硬件成本巨高,而且需要大量的专业内知识数据,以及大量的时间(以周甚至月记)。而且微调比较黑盒,结果难以预测。

RAG方案可以快速的给大模型挂接知识,成本低见效快。

即使是你两三个文档的更新,RAG也照样能接待,但微调的话可能合不上成本。

通常对于有海量固定知识的情况适用于模型微调,但是因为其时间很长成本高,很难获取最新的知识,所以可以通过模型微调加RAG补充最新或者经常变化的那部分来解决。

RAG是目前大多数企业采用的方式,当然缺点是如果是海量数据(PB以上)那么会有性能问题。所以常规的方案还是海量数据用模型微调,增量或者经常变化的数据或者信息用RAG。

从另一个角度我问了下豆包,10GB(我也问了100GB的)的资料,微调和RAG哪个更适合,答案是RAG,尤其资料是经常变化的。但到什么级别必须得用微调,这个需要考虑的因素很多,在数据量上没有一个固定的答案。

成熟的应用

公司内的问答。可以把公司内的数据通过RAG读取,然后供所有员工查询。

开发文档规范审查,比如你创建的数据库,是否符合命名规范。

个人知识库,把自己多年沉淀的文档输入知识库,方便自己随时查询。

对于一个程序员:告诉我一个功能怎么实现,或者给我生成一个文档。

对于一个文员:给我生成一篇文章。

对于自媒体:给我写一个关于某某某的文案。

对于我写这篇文章:学习各个知识点,帮我验证一些自己的理解。

总之关于AI的潜力开发空间是很大的,了解了它之后你才会知道在什么场合他能帮到你。

个人怎么玩

不管是苹果还是Windows,先下载Ollama,然后在Ollama里下载对应的Deepseek,这个操作完成后,就可以在命令行下玩问答。但如前面所说,如果是1.5B,那么不要对回答期望太高,如果部署了7B,那么勉强可玩。以上你要是想做开发什么的,足够了。



进一步想玩RAG来搭建个人知识库,可以下载一个anything LLM。这个工具的优点是操作有UI,不需要敲复杂的指令。需要注意的是在ollma里不仅需要pull一个R1模型,还需要pull一个embed模型,然后在anything LLM里配置好就可以了。如果你想尝试本地deepseek能干啥,个人知识库怎么搭建,用这个就够了。



如果你想进阶折腾一下,想大概了解下更专业点的方案,那么在这个基础上就可以自己去折腾RAG方案,比如RAGFLOW或者Dify。这个要下载和配置很多东西,没有点经验的话,按照网络上你能搜到的能搜索到的方法都不一定能走的通。而且又Git又docker的,没点方法有些步骤搞不定。

至于微调的话这个实在太复杂,不建议个人在自己的设备上折腾。

Deepseek学习笔记的更多相关文章

  1. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  2. PHP-自定义模板-学习笔记

    1.  开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2.  整体架构图 ...

  3. PHP-会员登录与注册例子解析-学习笔记

    1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...

  4. 2014年暑假c#学习笔记目录

    2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...

  5. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

  6. seaJs学习笔记2 – seaJs组建库的使用

    原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...

  7. CSS学习笔记

    CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...

  8. HTML学习笔记

    HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...

  9. DirectX Graphics Infrastructure(DXGI):最佳范例 学习笔记

    今天要学习的这篇文章写的算是比较早的了,大概在DX11时代就写好了,当时龙书11版看得很潦草,并没有注意这篇文章,现在看12,觉得是跳不过去的一篇文章,地址如下: https://msdn.micro ...

  10. ucos实时操作系统学习笔记——任务间通信(消息)

    ucos另一种任务间通信的机制是消息(mbox),个人感觉是它是queue中只有一个信息的特殊情况,从代码中可以很清楚的看到,因为之前有关于queue的学习笔记,所以一并讲一下mbox.为什么有了qu ...

随机推荐

  1. HTML5 转

    贴个图:

  2. 关于TFDMemtable的使用场景【1】提供快速查询

    建立内存表非常easy.看代码: begin createZipTable; FillZipCodeData; end: procdure CreateZipCodeTable; var Defs, ...

  3. 2012R2免登录操作

    由于许多程序系统,需要等服务器系统起来登录后才让运行.对于远程等一些操带来不方便.查资料: 如何在WINDOWSSERVER2012R2的登陆界面,启动特定的第三方软件? 服务器平台 Operatin ...

  4. Python复制单个文件为多个脚本

    编写背景: 由于线上用户反馈媒体添加页加载时间很长,猜测是由于本地视频/图片数量过多引起,于是编写此脚本以便快速生成大量测试视频 代码如下: # coding=utf-8 import os impo ...

  5. Spring Cloud Config分布式配置中心

    一.Spring Cloud Config分布式配置中心作用:可以通过修改在git仓库中的配置文件实现其它所有微服务的配置文件的修改 二.结构图

  6. 说说 Java 的执行流程?

    Java 的执行流程 Java 的执行流程包括多个阶段,从源码编写到最终程序的执行,涉及到编译.类加载.字节码执行.垃圾回收等多个环节.下面将详细介绍 Java 程序的执行流程. 1. 编写源代码 开 ...

  7. 全局搜索——Lucene.Net与盘古分词的实现思路

    一.Lucene.Net 1.Lucene.Net介绍: Lucene.Net是一个C#开发的开源全文索引库(自带的有索引管理.分词.查询) Lucene.Net.Index 提供索引管理,词组排序. ...

  8. Web客户端开发

    Web开发工具 从高层次来看,可以将客户端工具放入以下三大类需要解决的问题中: 安全网络 - 在代码开发期间有用的工具. 转换 - 以某种方式转换代码的工具,例如将一种中间语言转换为浏览器可以理解的 ...

  9. HarmonyOS运动开发:如何监听用户运动步数数据

    前言 在开发运动类应用时,准确地监听和记录用户的运动步数是一项关键功能.HarmonyOS 提供了强大的传感器框架,使得开发者能够轻松地获取设备的运动数据.本文将深入探讨如何在 HarmonyOS 应 ...

  10. 数据库问题之“字符编码问题 Cause: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x8E\x81\xE7\x88...' for column 'product_name' at row 41”

    1)表1和表2的产品名称[数据库字段]字符编译方式不一致 ①问题 org.springframework.jdbc.UncategorizedSQLException: Error updating ...