Llama + Dify,在你的电脑搭建一套AI工作流
theme: smartblue
点赞 + 关注 + 收藏 = 学会了
本文简介
最近字节在推Coze,你可以在这个平台制作知识库、制作工作流,生成一个具有特定领域知识的智能体。
那么,有没有可能在本地也部署一套这个东西呢?这样敏感数据就不会泄露了,断网的时候也能使用AI。
刚好最近 Llama 3.1 发布了,本文就以 Llama 3.1 作为基础模型,配合 Dify 在本地搭建一套“Coze”。
跟着本文一步步操作,保证能行!
Dify是什么?
Dify 官网(https://difyai.com/) 的自我介绍:Dify 是开源的 LLM 应用开发平台。提供从 Agent 构建到 AI workflow 编排、RAG 检索、模型管理等能力,轻松构建和运营生成式 AI 原生应用。比 LangChain 更易用。
动手搭建
在本地搭建这个平台很简单,其实 Dify文档(https://docs.dify.ai/v/zh-hans) 里都写得明明白白了,而且还有中文文档。
具体来说需要做以下几步:
- 安装
Ollama - 下载大模型
- 安装
Docker - 克隆
Dify源代码至本地 - 启动
Dify - 配置模型
接下来一步步操作。
安装 Ollama
简单来说 Ollama 是运行大语言模型的环境,这是 Ollama 的官网地址 https://ollama.com/,打开它,点击 Download 按钮下载 Ollama 客户端,然后傻瓜式安装即可(一直点“下一步”)。
安装完成后就能看到一个羊驼的图标,点击运行它即可。
下载大模型
安装完 Ollama 后,我们到 Ollama 官网的模型页面(https://ollama.com/library)挑选一下模型。
这里面有很多开源模型,比如阿里的千问2,搜索 qwen2 就能找到它。
本文使用 Llama 3.1 ,这是前两天才发布的模型,纸面参数贼强。
打开 Llama 3.1 模型的地址(https://ollama.com/library/llama3.1),根据你需求选择合适的版本,我选的是 8b 版。
选好版本后,复制上图右侧红框的命令,到你电脑的终端中运行。
如果你还没下载过这个模型它就会自动下载,如果已经下载过它就会运行这个模型。
运行后,你就可以在终端和大模型对话了。
当然,我们不会这么原始的在终端和大模型对话,我们可是要搞工作流的!
安装 Docker
前面的基础步骤都搞掂了,接下来就要开始为运行 Dify 做准备了。
先安装一下 Docker ,打开 Docker 官网(https://www.docker.com/),根据你系统下载对应的安装包,然后还是傻瓜式安装即可。
克隆 Dify 源代码至本地
要使用 Dify ,首先要将它拉到你电脑里。
git clone https://github.com/langgenius/dify.git 在你电脑里找个位置(目录),用 git 将 Dify 克隆下来,用上面这条命令克隆就可以了。
启动 Dify
进入 Dify 源代码的 docker 目录,执行一键启动命令:
cd dify/docker
cp .env.example .env
docker compose up -d 启动完成后,你的 docker 里就会看到这个
此时你在浏览器输入 http://localhost 就能看到这个界面。
首次打开 Dify 需要你设置一下管理员的账号。
然后用管理员账号登录,可以看到下面这个页面。
点击“创建空白应用”就可以创建聊天助手、文本生成应用、Agent、工作流。
我们点击"工作流"就能看到类似Coze的工作流编辑界面了。
配置模型
在配置工作流之前,我们需要给 Dify 配置大语言模型。
点击页面右上角的管理员头像,然后选择“设置”。
选择“模型供应商”,然后点击“Ollama”的卡片添加模型。
在添加 Ollama 模型时,弹窗的左下角有一个“如何继承 Ollama”的按钮,点击它会跳转到 Dify 官方文档教你怎么配置,但这里可能会有个小坑。
前面我们已经使用 Ollama 把 Llama 3.1 运行起来了,在浏览器打开 `http://localhost:11434 看到这个界面证明模型运行成功。
此时在“添加 Ollama”将资料填写好,“基础 URL”里输入 http://localhost:11434 即可。
如果你是 Mac 电脑,填入以上资料有可能会报这个错:
An error occurred during credentials validation: HTTPConnectionPool(host='localhost', port=11434): Max retries exceeded with url: /api/chat (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0xffff5e310af0>: Failed to establish a new connection: [Errno 111] Connection refused')) 此时你需要在“基础 URL”里填入 http://host.docker.internal:11434。
遇到问题可以看 Dify 官方文档的 FAQ。
添加完成后你就可以在模型列表里看到它了。
除了接入 Ollama 外,Dify 还支持接入 OpenAI 等闭源模型,但需要你去 OpenAI 那边买个服务。
以上就是本文的全部内容啦,如果本文对你有帮助的话也请你分享给你的朋友~
点赞 + 关注 + 收藏 = 学会了
相关文章:
Llama + Dify,在你的电脑搭建一套AI工作流
theme: smartblue 点赞 关注 收藏 学会了 本文简介 最近字节在推Coze,你可以在这个平台制作知识库、制作工作流,生成一个具有特定领域知识的智能体。 那么,有没有可能在本地也部署一套这个东西呢?这样敏感数据就不会泄露了&…...
洛谷 P9854 [CCC 2008 J1] Body Mass Index
这题让我们计算出 BMI 值,随后判断属于哪个等级。 BMI 值计算公式: 。 BMI 范围 对应信息 …...
Redis面试三道题目
针对Redis的面试题,我将从简单到困难给出三道题目,并附上参考答案的概要。 1. 简单题:请简述Redis是什么,以及它的主要优点。 参考答案: Redis简介:Redis是一个开源的、使用ANSI C语言编写、支持网络、可…...
redis的使用场景-分布式锁
使用redis的setnx命令放入数据并用此数据当锁完成业务(但是如果用户操作途中出现异常导致超出指定时间会出现问题) Service public class StockService {Autowiredprivate StockDao stockDao; //mapper注入Autowiredprivate StringRedisTemplate redisT…...
知识库系统全解析:2024年最佳9款
本文将分享9款优质团队知识库管理工具:PingCode、Worktile、石墨文档、语雀、Wolai 我来、有道云笔记、飞书文档、Confluence、Notion。 在追求高效团队运作的今天,掌握和整合知识成为了企业不可或缺的需求。但面对市场上琳琅满目的知识库管理工具&#…...
猫头虎分享:Numpy知识点一文带你详细学习np.random.randn()
🐯 猫头虎分享:Numpy知识点一文带你详细学习np.random.randn() 摘要 Numpy 是数据科学和机器学习领域中不可或缺的工具。在本篇文章中,我们将深入探讨 np.random.randn(),一个用于生成标准正态分布的强大函数。通过详细的代码示…...
QT 关于QTableWidget的常规使用
目录 一、初始化 二、封装功能用法 三、结语 一、初始化 1、设置表头 直接在ui设计界面修改或者使用QT封装的函数修改,代码如下: QStringList recList {"第一列", "第二列", "第三列"}; ui->tableWidget->setH…...
PyCharm 常用 的插件
Material Theme UI Lite:提供多种不同的页面风格,为PyCharm界面增添个性化元素。Chinese (Simplified) Language Pack:为中文用户提供简体中文的界面、菜单、提示信息,提升使用体验。Tabnine:基于人…...
理解 HTTP 请求中 Query 和 Body 的异同
本文将深入探讨HTTP请求中的两个关键要素:查询参数(Query)和请求体(Body)。我们将阐明它们之间的差异,并讨论在何种情况下使用每一种。 HTTP 请求概述 HTTP 请求是客户端(如浏览器)…...
【AI大模型】 企业级向量数据库的选择与实战
前言 ChatGPT4相比于ChatGPT3.5,有着诸多不可比拟的优势,比如图片生成、图片内容解析、GPTS开发、更智能的语言理解能力等,但是在国内使用GPT4存在网络及充值障碍等问题,如果您对ChatGPT4.0感兴趣,可以私信博主为您解决账号和环境…...
LangChain开发框架并学会对大型预训练模型进行微调(fine-tuning)
要掌握LangChain开发框架并学会对大型预训练模型进行微调(fine-tuning),你需要理解整个过程从数据准备到最终部署的各个环节。下面是这一流程的一个概览,并提供了一些关键步骤和技术点: 1. LangChain开发框架简介 La…...
VMware安装(有的时候启动就蓝屏建议换VM版本)
当你开始使用虚拟化技术来管理和运行多个操作系统时,VMware 是一个强大且广泛使用的选择。本篇博客将指导你如何安装 VMware Workstation Pro,这是一个功能强大的虚拟机软件,适用于个人和专业用户。 一、下载 VMware Workstation Pro 访问官网…...
AV1技术学习:Quantization
量化是对变换系数进行,并将量化索引熵编码。AV1的量化参数 QP 的取值范围是0 ~ 255。 一、Quantization Step Size 在给定的 QP 下,DC 系数的量化步长小于 AC 系数的量化步长。DC 系数和 AC 系数从 QP 到量化步长的映射如下图所示。当 QP 为 0 时&…...
vllm部署记录
1. pip安装 pip install vllm 下载模型在huggingface.co 注意在modelscope上的这个opt-125m好像不行了,我git不下来报错 启动服务 vllm serve opt-125m --model opt-125m --port 8888 第一个opt-125m是名字,可以在vllm支持的模型中查到,第二个是模型存放文件夹及其路径…...
HTML前端 盒模型及常见的布局 流式布局 弹性布局 网格布局
CSDN的文章没有“树状目录管理”,所以我在这里整理几篇相关的博客链接。 操作有些麻烦。 CSS 两种盒模型 box-sizing content-box 和 border-box 流式布局 flow layout 弹性布局 flex layout HTML CSS 网格布局 grid layout HTML CSS...
网络安全 DVWA通关指南 DVWA Command Injection(命令注入)
DVWA Command Injection(命令注入) 文章目录 DVWA Command Injection(命令注入)LowMediumHighImpossible Low 1、分析网页源代码 <?php// 当表单提交按钮(Submit)被触发时执行以下代码 if (isset($_P…...
VUE3学习第三篇:报错记录
1、在我整理好前端代码框架后,而且也启动好了对应的后台服务,访问页面,正常。 2、报错ReferenceError: defineModel is not defined 学到这里报错了 在vue网站的演练场,使用没问题 但是在我自己的代码里就出问题了 3、watchEffec…...
CentOS怎么关闭自动锁屏?
禁止自动锁屏 有时候几分钟不用Centos,系统就自动锁屏了,这是一种安全措施,防止别人趁你不在时使用你的系统。但对于大部分人而言,这是没有必要的,尤其是Centos虚拟机,里面没啥重要的东西,每次…...
vscode 环境
这张截图显示的是在VS Code(Visual Studio Code)中选择Python解释器的界面。不同的Python解释器及其虚拟环境列出了可选项,用户可以根据需要选择合适的解释器来运行Python代码。以下是对截图中信息的详细解释: 解释器选择界面 当…...
浏览器自动化测试工具selenium——爬虫操作记录
selenium——是一款web自动化测试框架,其能模拟正常的用户操作,比如点击。但selenium并不是浏览器,没有执行js和解析html/css的能力,因此selenium需要和浏览器配合使用。 因为selenium可以模仿用户行为,因此selenium也…...
UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...
React Native 导航系统实战(React Navigation)
导航系统实战(React Navigation) React Navigation 是 React Native 应用中最常用的导航库之一,它提供了多种导航模式,如堆栈导航(Stack Navigator)、标签导航(Tab Navigator)和抽屉…...
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility 1. 实验室环境1.1 实验室环境1.2 小测试 2. The Endor System2.1 部署应用2.2 检查现有策略 3. Cilium 策略实体3.1 创建 allow-all 网络策略3.2 在 Hubble CLI 中验证网络策略源3.3 …...
DeepSeek 技术赋能无人农场协同作业:用 AI 重构农田管理 “神经网”
目录 一、引言二、DeepSeek 技术大揭秘2.1 核心架构解析2.2 关键技术剖析 三、智能农业无人农场协同作业现状3.1 发展现状概述3.2 协同作业模式介绍 四、DeepSeek 的 “农场奇妙游”4.1 数据处理与分析4.2 作物生长监测与预测4.3 病虫害防治4.4 农机协同作业调度 五、实际案例大…...
技术栈RabbitMq的介绍和使用
目录 1. 什么是消息队列?2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...
省略号和可变参数模板
本文主要介绍如何展开可变参数的参数包 1.C语言的va_list展开可变参数 #include <iostream> #include <cstdarg>void printNumbers(int count, ...) {// 声明va_list类型的变量va_list args;// 使用va_start将可变参数写入变量argsva_start(args, count);for (in…...
认识CMake并使用CMake构建自己的第一个项目
1.CMake的作用和优势 跨平台支持:CMake支持多种操作系统和编译器,使用同一份构建配置可以在不同的环境中使用 简化配置:通过CMakeLists.txt文件,用户可以定义项目结构、依赖项、编译选项等,无需手动编写复杂的构建脚本…...
ubuntu22.04有线网络无法连接,图标也没了
今天突然无法有线网络无法连接任何设备,并且图标都没了 错误案例 往上一顿搜索,试了很多博客都不行,比如 Ubuntu22.04右上角网络图标消失 最后解决的办法 下载网卡驱动,重新安装 操作步骤 查看自己网卡的型号 lspci | gre…...
6.9-QT模拟计算器
源码: 头文件: widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QMouseEvent>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJECTpublic:Widget(QWidget *parent nullptr);…...
