当前位置: 首页 > article >正文

MacOS下使用Ollama本地构建DeepSeek并使用本地Dify构建AI应用

目录

  • 1 大白话说一下文章内容
  • 2 作者的电脑配置
  • 3 DeepSeek的本地部署
    • 3.1 Ollamal的下载和安装
    • 3.2 选择合适的deepseek模型
    • 3.3 安转deepseek
  • 4 Dify+DeepSeek构建Al应用
    • 4.1 Dify的安装
      • 4.1.1 前置条件
      • 4.1.2 拉取代码
      • 4.1.3 启动Dify
    • 4.2 Dify控制页面
    • 4.3 使用Dify实现个“文章标题生成器”应用
    • 4.4 “探索”模块404处理
  • 5 增语

1 大白话说一下文章内容

本篇文章基于Ollamal搭建本地DeepSeek,Ollamal是一个可以构建大模型工具,Ollamal也提供了很多模型。
本地部署了Dify,使用Dify做了个简单的AI应用,Dify是一个大模型应用构建工具,可以快速搭建和部署生成式Al应用程序。
内容里也记录了作者本人踩的很多坑!!供大家避雷!!!

2 作者的电脑配置

在这里插入图片描述
基于下面版本的大模型,本地跑了几个测试,微微热,电脑CPU 50%左右

3 DeepSeek的本地部署

Ollamal是一个开源框架,作用是在本地机器上便捷部署和运行大型语言模型(LLM)。

3.1 Ollamal的下载和安装

访问https://ollama.com/进入Ollama官网下载Ollama,要选择下载对应的操作系统版本即可
在这里插入图片描述
我的是mac版本的,下载好了傻瓜式安装后就是这样
在这里插入图片描述
因为我不安装llama模型,所以先不执行,直接关闭。

3.2 选择合适的deepseek模型

进入https://ollama.com中,选择Deepseek-r1(ps:或者你喜欢其他模型你也可以选择其他模型)
在这里插入图片描述
根据自己电脑的硬件配置来选择模型大小,我这里选择的是deepseek-r1的7b,点击它!(ps:这里的b代表了10亿,表示大模型下的一个神经元就有7*10亿的参数)
在这里插入图片描述

3.3 安转deepseek

复制安装命令如下,回到命令提示符窗口,将复制的命令粘贴到命令提示符窗口中并按回车键即可下载模型

ollama run deepseek-r1:7b

在这里插入图片描述
静静等待拉取结束,然后你就可以问他问题啦!

下面命令是启动命令,如果你部署了其他模型,模型名称是你部署的模型的名称

ollama run 模型名称

在这里插入图片描述

下面命令是关闭大模型

/bye

在这里插入图片描述

到这你就有个本地的大模型啦!(eg:我的电脑配置跑这个模型难一点的问题会稍稍热,不过也能带动。)

4 Dify+DeepSeek构建Al应用

Didy是一个开源的大语言模型(Large Language Model,LLM)应用开发平台。它融合了后端即服务(Backend as a Service,BaaS)和LLMOps的理念,旨在帮助开发者,甚至是非技术人员,能够快速搭建和部署生成式Al应用程序。
Dify内置了构建LLM应用所需的关键技术栈,包括对数百个模型的支持、直观的Prompt编排界面、高质量的RAG引擎、稳健的Agent框架、灵活的流程编排,并同时提供了一套易用的界面。
更细节的功能可以参考:Dify官网
在这里插入图片描述

4.1 Dify的安装

4.1.1 前置条件

  1. 确保你的电脑上有docker和docker-compose,因为dift是用docker-compose启动的
  2. 计算机要求:CPU >= 2 Core CPU = 2核心 RAM >= 4 GiB RAM>= 4 GiB

4.1.2 拉取代码

github地址:dify

拉取代码到本地:

git clone https://github.com/langgenius/dify.git

下载下来的文件就长下面的样子
在这里插入图片描述

4.1.3 启动Dify

执行指令:

cd dify
cd docker
cp .env.example .env

在这里插入图片描述

这里建议你本地部署切到1.0.0-beta.1这个tag下,因为新版的包的镜像好多都很难拉下来

切换到tag1.0.0-beta.1,执行指令:

git checkout 1.0.0-beta.1

在这里插入图片描述

执行下面指令启动dify

docker compose up -d

可能会遇到镜像拉不下来的错误
在这里插入图片描述
你看见这种超时的报错:Error response from daemon: Get “https://registry-1.docker.io/v2/”: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
或者是握手超时的报错(ps:没那条报错记录了)
或者是这种错误:Error response from daemon: Get “https://registry-1.docker.io/v2/”: context deadline exceeded

你就再次尝试!!!频繁尝试!!有志者事竟成!!
在这里插入图片描述
终于在我不懈的努力下,都拉取成功,最终成功的样子会展示成这样!都是对号✅!如果不是,请继续执行 docker compose up -d
在这里插入图片描述
如果你部署其他版本的dify,很容易出现某个镜像拉不下来的原因,我是基于下面这个docker镜像库拉取的,你也可以尝试一下!

修改daemon.json文件,配置镜像库:

sudo vim /etc/docker/daemon.json
{
    "registry-mirrors": [
        "https://docker.1panel.live",
        "https://docker.nju.edu.cn",
        "https://docker.m.daocloud.io",
        "https://dockerproxy.com",
        "https://hub-mirror.c.163.com",
        "https://docker.mirrors.ustc.edu.cn",
        "https://registry.docker-cn.com",
        "https://registry.cn-hangzhou.aliyuncs.com"
    ]
}

配置完了docker仓库要记得重启!

4.2 Dify控制页面

dify部署成功了,登录dify的首页看一下,浏览器访问:http://localhost/install
设置管理员账号、密码、邮箱信息,这个账户是最大权限的账户!!
在这里插入图片描述
设置后会跳到
在这里插入图片描述
登录后就到了管理界面了,因为我自己调试了dify,增加了几个应用,所以展示如下,首次登录只有创建应用
在这里插入图片描述
配置上文中本地搭建好的deepseek-r1 7b大模型,右上角的设置
在这里插入图片描述
选择ollama点击安装,因为我已经安装了,所以展示个通义千文的
在这里插入图片描述
安装后会让你配模型,配置如下,你可以自我调整
在这里插入图片描述
这里有个两个坑:

  1. 上面的模型名称一定要和你下载的模型名称一模一样,就是在ollama中下载的模型名称
  2. 基础url配置有两种配置方式
    配置一:http://host.docker.internal:11434/
    11434是ollama默认端口,ollama运行在宿主机上,dify运行在docker容器中,网络不通,这里这样配置可以使docker能访问到ollama
    配置二:终端输入launchctl setenv OLLAMA_HOST "0.0.0.0",重启ollama
    将ollama的环境变量设置值 “0.0.0.0”,它允许从同一台机器上的不同网络接口访问服务

有的大模型不支持高级配置,我这里又装了个大模型,配置如下,自行拉取
在这里插入图片描述

配置好大模型的dify应该是这样的,忽略这个图片坏了。。。
在这里插入图片描述
到此dify就和deepseek整合了,接下来看看dify怎么使用deepseek

4.3 使用Dify实现个“文章标题生成器”应用

创建个空白的应用:
在这里插入图片描述
根据需求创建应用,因为我想实现个“文章标题生成器”,那么我这里就选择,文本生成应用
在这里插入图片描述
首次登录需要配置一下大模型,按照引导配就行了,也可以在右上角切换大模型
在这里插入图片描述
我这个应用就是想根据关键字和话题生成少于规定字数的几个标题

该应用配置如下:
可以声明变量,变量结合提示词会一起执行
在这里插入图片描述

因为设置了变量,运行之前需要填一些内容
在这里插入图片描述
返回结果如上,因为这里接入的是R1的推理模型,所以还会返回推理过程,如果这里想只返回内容可以接入指令模型!!!

最后介绍一下发布这个模块
在这里插入图片描述
这个更新会保存你的内容到数据库中,下次打开会保留你的设置

介绍一下嵌入网站,它可以生成代码嵌入到你的前端页面,也可以作为Chrome浏览器扩展应用使用
在这里插入图片描述

也可以调用api的方式获取到该dify的运行结果、日志等
点击访问API,会弹出对应的应用的api调用方式,可以基于自己的应用去调用,api中涉及的API密钥在右上角
在这里插入图片描述

4.4 “探索”模块404处理

点击中上方的“探索”展示404!!!404是啥啊??找不到页面呗!!

配置一下nginx,进入到dify的文件夹下,我的地址路径是这样的:

cd /Users/liuyang/AI本地搭建/dify/docker/nginx/conf.d

修改vim default.conf.template文件:

vim default.conf.template

增加配置:

location /explore {
  proxy_pass http://web:3000;  # 确保请求路由到 web 服务
  include proxy.conf;
}

在这里插入图片描述
然后重启nginx容器就可以啦!!!

执行命令:

docker restart docker-nginx-1

在这里插入图片描述
等待重启好了,再去访问“探索”模块
在这里插入图片描述
这里展示的都是英文,在设置设置成简体中文再切回来就变成中文啦!
在这里插入图片描述
再看一下!
在这里插入图片描述

很帅!!!!

5 增语

Dify还可以使用工具哦!!结合应用类型,再结合你的业务,可以实现很多AI功能,可以参考一下探索看看别人配的!!借鉴一下!!
在这里插入图片描述


http://www.kler.cn/a/554572.html

相关文章:

  • 基于springboot校园健康系统的设计与实现(源码+文档)
  • 解决“QString的split()函数分割中文“报错
  • 进程的延伸——线程(下)
  • 专利申请流程详解:从创意到授权的完整指南
  • 2025/2/19 心得
  • 开源软件的版权保护措施
  • 第十五天:Selenium与PhantomJS
  • 【嵌入式常用工具】Srecord使用
  • 52款独特婚礼主题手绘水彩花卉树叶高清png免抠图设计素材Floria – Botanical Elements
  • 机器学习实战(9):神经网络基础——从感知机到多层感知机
  • 深入理解 Next.js 中的 Image 组件:优化图片加载与显示的利器
  • 前端web安全
  • .NET Core中的五种过滤器详解
  • OneNote手机/平板“更多笔记本”中有许多已经删掉或改名的,如何删除
  • 内部知识库:安全协作驱动数字化转型新路径
  • Reactor模型说明
  • 前端构建工具——Webpack和Vite的主要区别
  • DHCPV6
  • C语言基础20:函数的递归调用、数组做函数的参数
  • VSCode配置C/C++开发环境|最新教程202502