目录
一. Deepseek输出商用化产品需要哪些框架 以及框架间的关系
2).为什么需要配置OLLAMA_HOST及OLLAMA_ORIGINS?
前言
内容较长,推荐蹲坑时阅读
DeepSeek作为一款强大的深度学习平台,正在为开发者提供高效、灵活的AI解决方案。无论你是想构建一个图像分类系统,还是开发一个自然语言处理应用,DeepSeek都能帮助你快速实现目标。本文将详细介绍如何将DeepSeek集成到自己的项目中,并提供丰富的资源和示例代码,帮助你从入门到精通
本文主要是讲述 我对deepseek的亲身实操 和调研内容 主要有deepseek的本地部署 和api的调用 ollma和RAG中的fity的调研 以及要完整的实现一个功能化齐全 可商用化的产品 需要哪些 技术 等等
——————————————
一. Deepseek输出商用化产品需要哪些框架 以及框架间的关系
目前deepseek支持本地部署 和在官网使用deep seek的api两种模式 现在deepseek网页版的使用 经常性的出现服务器繁忙,请稍后再试的情况
可以自己搭建一个本地的deepseek解决这个问题
1.deepseek部署需求
1). deepseek的本地部署需要安装Ollama,那么什么是Ollama呢? 在这里面又是充当什么角色 ? 发挥什么作用呢?知道了Ollama的前沿后身 到底要怎么使用Ollama呢?接下来我们一 一解答
Ollama是一个开源的本地大模型运行工具,它旨在简化大型语言模型(LLM)的安装、运行和管理,支持多种模型架构,并提供与 OpenAI 兼容的 API 接口,适合开发者和企业快速搭建私有化 AI 服务。
部署环境搭建:Ollama 负责将 DeepSeek 模型安装到本地设备上,为 DeepSeek 模型提供运行环境,就像是为 “超级大脑” DeepSeek 搭建了一个舒适的 “家”。它支持在 Windows、macOS 和 Linux 等多种操作系统上运行,让用户可以在自己熟悉的系统环境中部署 DeepSeek。
模型管理:Ollama 提供命令行工具,方便用户下载、加载和切换不同的 DeepSeek 模型或其他支持的模型。用户可以轻松地根据自己的需求选择合适的模型版本,并且能够方便地进行模型的更新和删除等操作。
模型运行支持:Ollama 允许用户在本地设备上运行 DeepSeek 模型,无需依赖云端服务。这不仅保证了数据的隐私性,因为所有数据都在本地处理,不会上传到云端,而且在没有网络连接的情况下也能正常使用,提高了模型使用的稳定性和自主性。
提供接口与集成:Ollama 提供了与 OpenAI 兼容的 API 接口以及命令行工具、Python SDK 等,便于与其他应用程序或前端工具集成3。例如,可以与 ChatBox、Open-WebUI 等前端工具结合,为用户提供更丰富、更直观的交互体验,让用户能够方便地与 DeepSeek 模型进行对话和交互。
2).ollama的安装命令及ollama添加环境变量
我们可以访问 Ollama 进入 Ollama 官网下载 Ollama ,下载时有三个系统的安装包可选择,这里只需要选择下载我们电脑对应的操作系统版本即可,这里我选择的是windows的
有的小伙伴可能会出现不了下载不了的情况,哪有的小伙伴就说了 这还没开始第一步 就已经夭折了吗? 哈哈 其实我也出现了 这种情况 怎么解决呢 ?使用加速器 玩过steam游戏的小伙伴对此应该不陌生 对的 我们使用加速器 跟加速游戏的那个加速器 是一样的
使用奇游加速器可以直接下载 Ollama 新用户可以白嫖一下 使用时长 不是新用户的 想办法成为新用户
先搜索deepseek 进行加速后 右侧会出现ollama一键下载,Ollama 安装包下载完成后直接双击安装即可,安装速度还是比较快的。
Ollama 安装完成后需要打开电脑的 CMD ,也就是命令提示符,只需要在电脑下方的搜索框中输入 cmd 即可打开。
打开后在命令提示符窗口中输入 ollama help 并按回车键,这个操作是为了验证这个软件是否安装成功,如果没有报错的话则表示这个软件安装成功。
Ollama这算是安装好了 使用前还要将环境变量配置一下(这里我就讲一下Windows的)
Windows系统
步骤1:右键“此电脑” → 属性 → 高级系统设置 → 环境变量 → 用户变量 → 新建变量。
步骤2:添加关键变量(如OLLAMA_HOST和OLLAMA_ORIGINS),保存后需彻底重启Ollama服务(通过任务管理器终止进程后重新启动)。
实战技巧:若模型路径含空格,需使用双引号包裹路径值(如"E:\AI Models\Ollama")。
2).为什么需要配置OLLAMA_HOST及OLLAMA_ORIGINS?
1.突破本地限制:局域网访问
默认情况下,Ollama仅监听127.0.0.1:11434,仅允许本机访问。通过设置OLLAMA_HOST=0.0.0.0:端口号,可将服务绑定到所有网络接口,实现局域网内多设备共享模型资源。
2.解决跨域问题:Web UI集成
浏览器安全策略会阻止跨域请求,例如使用Open WebUI或LobeChat等前端工具时。配置OLLAMA_ORIGINS=*(允许所有来源)或指定域名列表(如http://localhost:3000,http://yourdomain.com"),可解除跨域限制。
2.安装AI大脑deepseek-r1模型
回到 Ollama 网址中,在网页上方搜索框中输入 Deepseek-r1,这个 Deepseek-r1 就是我们需要本地部署的一个模型。
点击 Deepseek-r1 后会进入详情界面,里面有多个参数规模可供选择,从 1.5b 到 671b 都有
需注意的是,这里我们需要根据自己电脑的硬件配置来选择模型大小,下面是一个模型大小配置参考表格,大家可根据自己的电脑配置来自行选择,当然了,部署的本地模型越大,使用的深度求索效果就越好。
这里可以参考一下deepseek的推荐,如果是本地的话,一般都是1.5b或者7b开始选择,都会有些纠结,哪个更适合自己,如下:
1.5B vs 7B 在定制化中的表现
能力 | 1.5B 模型 | 7B 模型 |
微调数据需求 | 数据量少(百级样本) | 需要更多数据(千级样本) |
学习复杂模板能力 | 只能记住简单格式(如通知、函) | 可掌握复杂结构(如工作方案、红头文件) |
术语一致性 | 可能混淆相似术语(如“批复” vs “复函”) | 能精准区分专业词汇 |
资源消耗 | 微调仅需 6-8GB 显存 | 微调需 16-24GB 显存 |
如果只是一些集成显卡的,特别是笔记本,虽然号称有AI功能,但实际性能还是比较差的,可以参考一下:
场景 | 1.5B 模型 | 7B 模型 |
纯CPU推理速度 | 约10-15 tokens/秒 | 约3-5 tokens/秒(需量化) |
GPU加速效果 | Arc显卡支持有限,提升不明显 | 同上,可能因显存带宽不足导致卡顿 |
内存占用(FP16) | ~3GB | ~14GB(需共享显存或内存) |
量化后内存占用(4-bit) | ~1GB | ~4GB |
公文写作质量 | 格式基本正确,但内容较简略 | 逻辑更严谨,可生成复杂方案/红头文件 |
选择好模型规模后,复制右边的一个命令。
命令复制完成后回到命令提示符窗口,将刚刚复制的命令粘贴到命令提示符窗口中并按回车键即可下载模型。
模型下载完成后,我们就直接可以在命令提示符面板中使用它了
以后如果我们需要再次使用 Deepseek 这个模型的话,我们可以直接打开命令提示符窗口,只需要再次在命令符提示窗口中输入上面复制的指令即可
3.可视化图文交互界面 Chatbox
虽然我们可以在本地正常使用 Deepseek 这个模型了,但是这个 AI 工具的面板是非常简陋的,很多人使用不习惯,这时我们就可以通过 Chatbox 这个可视化图文交互界面来使用它。
点击 Chatbox AI官网:办公学习的AI好助手,全平台AI客户端,官方免费下载 进入 Chatbox 官网,Chatbox 虽然有本地客户端,但我们也可以直接使用网页版。
进入 Chatbox 网页版本后点击使用自己的 API Key 或本地模型。
点击后会进入模型提供方选择界面,这里选择 Ollama API 。
这里需要注意的是,为了能够 Ollama 能远程链接,这里我们最好看一下 Chatbox 提供的教程,根据这个教程操作一下。
这个教程还是非常简单的,如果是 Windows 操作系统则只需要配置一下环境变量即可,配置完环境变量后需重启一下 Ollama 程序。
重启 Ollama 程序后,我们需要将 Chatbox 设置界面关闭并重新打开,重新打开 Chatbox 设置界面后即可选择 Deepseek 模型了,选择后 Deepseek 模型后点击保存即可。
接下来只需要在 Chatbox 中新建对话即可使用 Deepseek 模型了,以下图为例,上方是它的思考过程,下方是它给出的答案。
Chatbox 可视化图文交互界面还有一个特点就是可以创建专属智能体,只需点击我的搭档即可创建,此功能是 Deepseek 官方暂时还没有的功能。
如果使用Chatbox觉得比较简单,那能不能生成一个本地属于自己的知识库,喂数据,让回复内容符合自己的需求,生成自己相关想要的专业数据,这样就方便多了。
4.搭建本地知识库
DeepSeek是基于公开数据训练的,如何让DeepSeek和我们本地的数据结合,成为我们的私人助理,网上已经有很多现成的方案。我们选择了比较常见的三种方案,评测同样问题的回答是否和本地数据有紧密的关联,目前只做了比较初级的评测,先把结果和大家分享一下。
方案一:Cherry Studio + 硅基流动
具体搭建方案参见
熊猫Jay:5 分钟用满血 DeepSeek R1 搭建个人 AI 知识库(含本地部署)460 赞同 · 135 评论文章编辑
上面这篇文章介绍的步骤非常详细,半个小时就可以搞定。搭建个人知识库以后,需要把各种文档转成向量化的数据库,填充到本地的知识库,这样才能起到真正的效果。向量化的知识库是存储在本地电脑的AppData\Roaming\CherryStudio\Data,不用担心数据的隐私。
Cherry Studio支持多个独立的知识库,我们可以把不同的信息分别存储,比如工作相关的信息创建一个知识库,个人生活相关的数据放在另一个知识库,这样在进行信息查找的时候更有针对性。不过目前支持导入的文档格式:pdf, docx, pptx, xlsx, txt, md,都是文本格式,如果不是这些格式的文件怎么导入呢?需要把这些数据先转换成文本格式,然后再导入。对于下列这些文件,我们总结了对应的方法。
- 各种图片
如果数量不多的话,可以单个文件打开,使用电脑打印机的功能,把图片打印成PDF。如果数量比较多的话,需要第三方工具批量处理。 - 源代码
无论什么格式的源码,比如C,ASM,Python等,通过脚本工具批量修改文件名,添加.txt后缀,然后添加目录一次性添加到知识库。 - 微信聊天记录
在电脑上使用第三方工具,把微信聊天记录导出到CSV格式,使用Excel工具打开再保存成Excel格式。经过评测,MemoTrace(https://wwcj.lanzouw.com/b00rn0qovi)工具可以导出所有文本聊天记录,图片和文件导出的话需要VIP账号。 - 电子邮件
如果使用的是Outlook客户端的话,可以在Outlook里选中多个文件,然后在文件选项下选择另存为txt文件。
完善了本地知识库以后,就可以在对话的时候选择不同的知识库进行对话了。
5.RAG-深度求索
ok啊 小伙伴根据上面的操作 之后 是不是发现了一个问题 自己搭建的deepseek比网页版的deepseek好像更慢 更蠢了 这还怎么敢接入到自己的平台使用呢
出现这个问题的原因 一是选择的模型 二是没有使用RAG-深度求索 三是。。。我还不知道 但是肯定还有 先搁置着 我调研完了 再写
1).什么是RAG呢?
RAG是深度解析 也就是深度检索(Retrieval)+生成(Generration)深度检索 就好使用ES 一样,程序员对此应该不陌生,讲一段文字按照字段 词等等 做成一个个小向量去进行搜索 这样搜出的内容更加精确,那么搜出来的内容一大堆要怎么将其组装成一段人能看懂的语言呢这就用到了生成, 这个生成呢 我的理解就是 我们学习英语的时候 要遵循 主谓宾 宾补 等等 这种将输出的文字
塞到模板里面 输出让人能够看懂 说简单点 就是将输入的文本 转换成 ai能看懂的语言 然后 ai进行查询 将查到的内容转换成人能看懂得语言
2).核心技术是什么
知识库搭建+检索模型+生成模型+自我学习
知识库搭建字如其名 就是将知识分门类 语义检索 用AI理解“酸甜”可能指“糖醋”或“番茄味”(更智能)。工具:Elasticsearch(传统搜索)、BERT(语义理解),生成模型 根据检索结果生成回答,比如用大模型(如GPT)组织语言,确保回答自然且符合用户需求,自我学习 会根据用户的反馈 自我强化学习 输出更合适的内容
3).热门的RAG框架
热门的RAG框架开源的有很多 Haystack, LIamaLndex,LangChain, Dify, Falss
我用的是Dify 因为很多都是python开发 我呢是java开发出身 所以为了降低python的使用率 提高控制 我是用Dify 因为 他有可视化页面 Dify Cloud | Dify 这是dify的操作文档 有两种部署方式 一个是云服务 一个是本地部署 云服务 的话有消息次数限制 本地部署对服务其有要求 具体的 我就不过多介绍了 你们可以直接参考官网
6.Dify的使用
讲到这里还要很多小伙伴 不是很清楚 deepseek 和RAG之间的关系 其实 把deepseek比做成大脑 RAG 就是脑容量的存贮 一个合格的ai 需要 脑力 和 存储的知识
dify的使用有云服务 和自控制的两个版本
使用dify可以多元化的进行开发 比如做一个小助手 ai应用程序 根据自己的喜好自行在dify的可视化页面上 创建应用 我讲一下 如何 添加到自己的平台应用上
1).将 Dify Chatbot 集成到您的 Wix 网站
Wix 是一个流行的网站创建平台,允许用户通过拖放功能直观地设计他们的网站。通过利用 Wix 的 iframe 代码功能,您可以将 Dify 聊天机器人无缝集成到您的 Wix 网站。
此功能不仅限于聊天机器人集成,使您能够在 Wix 页面中显示来自外部服务器和其他来源的内容。示例包括天气小部件、股票行情、日历或任何自定义 Web 元素。
本指南将引导您完成使用 iframe 代码将 Dify 聊天机器人嵌入您的 Wix 网站的过程。同样的方法也可用于将 Dify 应用程序集成到其他网站、博客或网页中。
假设您已经创建了一个 Dify AI 应用程序,请按照以下步骤获取 iFrame 代码片段:
-
登录您的 Dify 帐户
-
选择要嵌入的 Dify 应用程序
-
点击右上角的 “Publish” 按钮
-
在发布页面上,选择“嵌入站点”选项
-
-
选择适当的样式并复制显示的 iFrame 代码。例如:
-
登录您的 Wix 网站并打开您要编辑的页面
-
单击页面左侧的蓝色 (Add Elements) 按钮
+
-
选择 Embed Code(嵌入代码),然后单击 Embed HTML(嵌入 HTML)以将 HTML iFrame 元素添加到页面
-
在框中,选择选项
HTML Settings
Code
-
粘贴您从 Dify 应用程序获取的 iFrame 代码片段
-
单击 Update 按钮以保存和预览您的更改
以下是用于嵌入 Dify Chatbot 的 iFrame 代码片段示例:
<span style="color:#141d2e"><span style="background-color:#feffff"><span style="background-color:rgb(var(--tint-3))"><code id=":r4:"><span style="color:var(--shiki-token-keyword)"><</span><span style="color:var(--shiki-foreground)">iframe src</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">“https://udify.app/chatbot/ez1pf83HVV3JgWO4”</span><span style="color:var(--shiki-foreground)"> style</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">“width: 100%;高度:100%;最小高度: 700px“</span><span style="color:var(--shiki-foreground)"> frameborder</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">”0“</span><span style="color:var(--shiki-foreground)"> allow</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">”microphone“><</span><span style="color:var(--shiki-token-string)">/iframe</span><span style="color:var(--shiki-token-keyword)">></span></code></span></span></span>

⚠️ 确保 iFrame 代码中的地址以 HTTPS 开头。HTTP 地址将无法正确显示。
您可以调整 Dify Chatbot 的按钮样式、位置和其他设置。
修改 iFrame 代码中的属性以自定义 Chatbot 按钮的外观。例如:style
<span style="color:#141d2e"><span style="background-color:#feffff"><span style="background-color:rgb(var(--tint-3))"><code id=":r5:"><span style="color:var(--shiki-token-keyword)"><</span><span style="color:var(--shiki-foreground)">iframe src</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">“https://udify.app/chatbot/ez1pf83HVV3JgWO4”</span><span style="color:var(--shiki-foreground)"> style</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">“width: 100%;高度:100%;最小高度: 700px“</span><span style="color:var(--shiki-foreground)"> frameborder</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">”0“</span><span style="color:var(--shiki-foreground)"> allow</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">”microphone“><</span><span style="color:var(--shiki-token-string)">/iframe</span><span style="color:var(--shiki-token-keyword)">></span>
<span style="color:var(--shiki-token-comment)"># 添加 2 像素宽的纯黑色边框 border: border: 2px solid #000</span>
<span style="color:var(--shiki-token-function)">→</span>
<span style="color:var(--shiki-token-keyword)"><</span><span style="color:var(--shiki-foreground)">iframe src</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">“https://udify.app/chatbot/ez1pf83HVV3JgWO4”</span><span style="color:var(--shiki-foreground)"> style</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">“width: 80%;身高:80%;最小高度:500px;边框:2px 纯色 #000;”</span><span style="color:var(--shiki-foreground)"> frameborder</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">“0”</span><span style="color:var(--shiki-foreground)"> allow</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">“麦克风”</span><span style="color:var(--shiki-foreground)">><</span><span style="color:var(--shiki-token-string)">/iframe</span><span style="color:var(--shiki-token-keyword)">></span></code></span></span></span>
此代码向聊天机器人界面添加 2 像素宽的纯黑色边框。
通过修改属性中的值来调整按钮的位置。例如:position
style
<span style="color:#141d2e"><span style="background-color:#feffff"><span style="background-color:rgb(var(--tint-3))"><code id=":r6:"><span style="color:var(--shiki-token-keyword)"><</span><span style="color:var(--shiki-foreground)">iframe src</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">“https://udify.app/chatbot/ez1pf83HVV3JgWO4”</span><span style="color:var(--shiki-foreground)"> style</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">“width: 100%;高度:100%;最小高度: 700px“</span><span style="color:var(--shiki-foreground)"> frameborder</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">”0“</span><span style="color:var(--shiki-foreground)"> allow</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">”microphone“><</span><span style="color:var(--shiki-token-string)">/iframe</span><span style="color:var(--shiki-token-keyword)">></span>
<span style="color:var(--shiki-token-comment)"># 将 Chatbot 固定在网页右下角,距下边缘和右边缘 20 像素。</span>
<span style="color:var(--shiki-token-function)">→</span>
<span style="color:var(--shiki-token-keyword)"><</span><span style="color:var(--shiki-foreground)">iframe src</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">“https://udify.app/chatbot/ez1pf83HVV3JgWO4”</span><span style="color:var(--shiki-foreground)"> style</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">“width: 100%;高度:100%;最小高度:700px;位置:固定;底部:20px;右:20px;”</span><span style="color:var(--shiki-foreground)"> frameborder</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">“0”</span><span style="color:var(--shiki-foreground)"> allow</span><span style="color:var(--shiki-token-keyword)">=</span><span style="color:var(--shiki-token-string-expression)">“麦克风”</span><span style="color:var(--shiki-foreground)">><</span><span style="color:var(--shiki-token-string)">/iframe</span><span style="color:var(--shiki-token-keyword)">></span></code></span></span></span>
此代码将 Chatbot 固定在网页的右下角,距离下边缘和右边缘 20 像素。
1. iFrame 内容不显示
-
验证 URL 是否以 HTTPS 开头
-
检查代码中的拼写错误
iframe
-
验证嵌入的内容是否符合 Wix 的安全策略
2. iFrame 内容被裁剪
修改代码中的 and percentage 值以解决内容截断问题。width
height
iframe