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 前置条件
- 确保你的电脑上有docker和docker-compose,因为dift是用docker-compose启动的
- 计算机要求: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点击安装,因为我已经安装了,所以展示个通义千文的
安装后会让你配模型,配置如下,你可以自我调整
这里有个两个坑:
- 上面的模型名称一定要和你下载的模型名称一模一样,就是在ollama中下载的模型名称
- 基础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功能,可以参考一下探索看看别人配的!!借鉴一下!!
相关文章:
MacOS下使用Ollama本地构建DeepSeek并使用本地Dify构建AI应用
目录 1 大白话说一下文章内容2 作者的电脑配置3 DeepSeek的本地部署3.1 Ollamal的下载和安装3.2 选择合适的deepseek模型3.3 安转deepseek 4 DifyDeepSeek构建Al应用4.1 Dify的安装4.1.1 前置条件4.1.2 拉取代码4.1.3 启动Dify 4.2 Dify控制页面4.3 使用Dify实现个“文章标题生…...
区块链相关方法-波士顿矩阵 (BCG Matrix)
波士顿矩阵(BCG Matrix),又称市场增长率 - 相对市场份额矩阵、波士顿咨询集团法、四象限分析法、产品系列结构管理法等,由美国著名的管理学家、波士顿咨询公司创始人布鲁斯・亨德森于 1970 年首创1。以下是关于波士顿矩阵的详细介…...
命令执行漏洞 Command Execute
命令执行漏洞(Command Injection)是一种安全漏洞,指的是攻击者能够在应用程序的命令行中注入并执行恶意命令。简单来说,就是攻击者可以利用这个漏洞让程序执行自己指定的命令,而不是程序原本应该执行的命令。 举个例子…...
黑马点评_商品信息缓存模块
保证缓存不要有空档期 删除后马上要写入中间不能插入任何阶段(如查询数据库) 对于单体系统1,将缓存与数据库操作放在同一个事务中(当前项目就是一个单体项目,所以选择这种方式) 对于分布式系统2,利用TCC(Tr…...
socket()函数的概念和使用案例
socket()函数的概念(C语言) 在C语言中,socket() 函数是用于创建一个新的套接字,它是网络编程的基础。套接字可以看作是不同计算机进程间通信的一个端点,允许数据在网络中的发送和接收。 socket() 函数的原型定义在 &l…...
【架构】事件驱动架构(Event - Driven Architecture,EDA)
一、事件驱动架构理论基础 事件驱动架构(Event - Driven Architecture,EDA)是一种软件设计范式,事件驱动的体系结构由生成事件流、侦听这些事件的事件使用者以及将事件从生成者传输到使用者的事件通道组成。 在事件驱动架构中,系统的行为由事件触发。事件可几乎实时发送,…...
三、linux字符驱动详解
在上一节完成NFS开发环境的搭建后,本节将探讨Linux字符设备驱动的开发。字符设备驱动作为Linux内核的重要组成部分,主要负责管理与字符设备(如串口、键盘等)的交互,并为用户空间程序提供统一的读写操作接口。 驱动代码…...
14.9 Auto-GPT 提示工程深度解析:设计具备自主决策能力的智能体大脑
Auto-GPT 提示工程深度解析:设计具备自主决策能力的智能体大脑 关键词:Auto-GPT 提示工程、结构化提示模板、工具调用触发、动态上下文管理、自主决策优化 1. 自主智能体提示设计的核心原则 Prompt 设计三维度模型: #mermaid-svg-jHMGjPZTQA8Op385 {font-family:"tre…...
【p-camera-h5】 一款开箱即用的H5相机插件,支持拍照、录像、动态水印与样式高度定制化。
【开源推荐】p-camera-h5:一款轻量级H5相机插件开发实践 一、插件背景 在Web开发中,原生摄像头功能的集成往往面临以下痛点: 浏览器兼容性问题视频流与水印叠加实现复杂移动端适配困难功能定制成本高 为此,p-camera-h5 —— 一…...
c++中sleep是什么意思(不是Sleep() )
sleep 函数在 C 语言中用于暂停程序执行指定的秒数,语法为 sleep(unsigned int seconds)。当 seconds 为 0 时,函数立即返回,否则函数将使进程暂停指定的秒数,并返回实际暂停的时间。 sleep 函数在 C 中的含义 sleep 函数是 C 标…...
优品指标树
目录 大势型 超买超卖型 超势型 能量型 成交量型 均线型 路径型 指南针经典指标 神系经典指标 庄家克星经典指标 大智慧经典指标 钱龙经典指标 同花顺经典指标 通达信经典指标 操盘手经典指标 期货特色指标 股票特色推荐 用户推荐共享指标 名家经典战法指标…...
springboot多实例部署时,@Scheduled注释的方法重复执行
问题:springboot多实例部署时,Scheduled注释的方法重复执行 在 Spring Boot 中要实现 Redis 的SET NX EX命令,可以借助 Spring Data Redis 来完成。SET NX EX命令用于在键不存在时设置键值对,并同时设置过期时间。 <dependen…...
智能自动化新纪元:AI与UiPath RPA的协同应用场景与技术实践
智能自动化新纪元:AI与UiPath RPA的协同应用场景与技术实践 引言 在数字化转型的浪潮中,企业对于自动化技术的需求已从简单的任务执行转向更复杂的智能决策。传统RPA(Robotic Process Automation)通过模拟人类操作处理重复性任务…...
[STM32 - 野火] - - - 固件库学习笔记 - - - 十六.在SRAM中调试代码
一、简介 在RAM中调试代码是一种常见的嵌入式开发技术,尤其适用于STM32等微控制器。它的核心思想是将程序代码和数据加载到微控制器的内部RAM(SRAM)中运行,而不是运行在Flash存储器中。这种方法在开发过程中具有显著的优势&#…...
nginx 反向代理 配置请求路由
nginx | 反向代理 | 配置请求路由 nginx简介 Nginx(发音为“Engine-X”)是一款高性能、开源的 Web 服务器和反向代理服务器,同时也支持邮件代理和负载均衡等功能。它由俄罗斯程序员伊戈尔西索夫(Igor Sysoev)于 2004…...
第二届粤港澳大湾区数字经济与人工智能国际学术会议(DEAI 2025)
重要信息 2025年3月28-30日 I 广东省东莞市(广东科技学院-松山湖校区) I www.icdeai.com 简介 第二届粤港澳大湾区数字经济与人工智能(DEAI 2025)将在2025年3月28-30日在广东省东莞市隆重举行。来自国内外高等院校、科学研究所、企事业单位的专家、教授、学者、…...
使用GDI+、文件和目录和打印API,批量将图片按文件名分组打包成PDF
代码写了两个小时,速度太慢(包括学习文档的时间) #include <stdio.h> #include <Windows.h> #include <gdiplus.h> #include <string.h> using namespace Gdiplus; #pragma comment(lib, "Gdiplus.lib") …...
贪心算法
int a[1000], b5, c8; swap(b, c); // 交换操作 memset(a, 0, sizeof(a)); // 初始化为0或-1 引导问题 为一个小老鼠准备了M磅的猫粮,准备去和看守仓库的猫做交易,因为仓库里有小老鼠喜欢吃的五香豆,第i个房间有J[i] 磅的五香豆…...
如何查询网站是否被百度蜘蛛收录?
一、使用site命令查询 这是最直接的方法。在百度搜索框中输入“site:你的网站域名”,例如“site:example.com”(请将“example.com”替换为你实际的网站域名)。如果搜索结果显示了你的网站页面,并且显示了收录的页面数量…...
Hutool - Log:自动识别日志实现的日志门面
一、简介 在 Java 开发中,日志记录是一项非常重要的功能,它可以帮助开发者在开发和生产环境中监控程序的运行状态、排查问题。然而,Java 生态系统中有多种日志实现框架,如 Log4j、Logback、JDK 自带的日志框架等。为了在不同的项…...
【GPU驱动】- 状态机
一、概述 Mesa 是一个开源的图形库,它提供了一个通用的图形抽象层,支持多种硬件和驱动程序。Mesa 的核心组件之一是 State Tracker,它在抽象图形 API(如 OpenGL )与具体的图形驱动之间起到桥梁作用。State Tracker 通…...
rtcwake - Linux下定时唤醒计算机
rtcwake 是一个用于通过实时时钟(RTC)唤醒计算机的工具。它常用于在 Linux 系统中设置计算机在指定时间自动唤醒或关闭。以下是对命令 rtcwake -m off -s ${sleep_time} 的详细解析: 命令解析 bash复制 rtcwake -m off -s ${sleep_time} 1…...
MySQL 日志
MySQL 日志 慢查询日志(Slow query log) 慢查询⽇志由执⾏时间超过系统变量 long_query_time 指定的秒数的SQL语句组成,并且检 查的⾏数⼤于系统变量 min_examined_row_limit 指定值。被记录的慢查询需要进⾏优化, 可以使⽤mysqldumpslow客⼾端程序对慢…...
C++ 泛型编程之补充(class 和typename)
目录 1.class 和 typename 可互换 1.1 template 和 template 在模板参数列表中完全一样,可以互换使用。 2.什么时候 class 和 typename 不一样? 2.1 嵌套依赖类型 时必须用typename 重点说明: 2.2 普通作用域(不能互换&…...
[MDM 2024]Spatial-Temporal Large Language Model for Traffic Prediction
论文网址:[2401.10134] Spatial-Temporal Large Language Model for Traffic Prediction 论文代码:GitHub - ChenxiLiu-HNU/ST-LLM: Official implementation of the paper "Spatial-Temporal Large Language Model for Traffic Prediction" …...
跟着 Lua 5.1 官方参考文档学习 Lua (6)
文章目录 2.11 – Coroutines 2.11 – Coroutines Lua supports coroutines, also called collaborative multithreading. A coroutine in Lua represents an independent thread of execution. Unlike threads in multithread systems, however, a coroutine only suspends i…...
Spring Cloud — Hystrix 服务隔离、请求缓存及合并
Hystrix 的核心是提供服务容错保护,防止任何单一依赖耗尽整个容器的全部用户线程。使用舱壁隔离模式,对资源或失败单元进行隔离,避免一个服务的失效导致整个系统垮掉(雪崩效应)。 1 Hystrix监控 Hystrix 提供了对服务…...
加油站(力扣134)
既然每一个加油站都有对应的加油量和耗油量,我们不妨计算一下每个加油站的汽油净增量。如果每个加油站净增量之和不为负数,则说明一定可以找到唯一的起始点。那我们该如何找到这个起始点呢?我们设置最开始的起点为第0个加油站,接着…...
科普:你的笔记本电脑中有三个IP:127.0.0.1、无线网 IP 和局域网 IP;两个域名:localhost和host.docker.internal
三个IP 你的笔记本电脑中有三个IP:127.0.0.1、无线网 IP 和局域网 IP。 在不同的场景下,需要选用不同的 IP 地址,如下为各自的特点及适用场景: 127.0.0.1(回环地址) 特点 127.0.0.1 是一个特殊的 IP 地…...
Golang 相关的github 开源项目
1. pan-light url: http://github.com/peterq/pan-lightstar: 12.1kfork: 2.5kwatch: 284 用Golang和Qt5编写的不限速版百度网盘。相比之前版本的百度网盘客户端,当前版本拥有更友好、便捷的图形界面,体量更轻,便于使用,只需下载…...
数据结构《图》
数据结构《图论》 图的性质 一、无向图(Undirected Graph) 定义 由一组顶点(Vertex)和一组无向边(Edge)构成。 每条无向边用一条无方向的线段连接两个顶点,记为 ( (u, v) ),其中…...
WPF实现打印机控制及打印
在WPF中实现打印机控制和打印功能,通常需要使用System.Printing命名空间中的类来管理打印机和打印任务。以下是一个简单的示例,展示如何在WPF应用程序中实现打印功能。 1. 添加必要的引用 首先,确保在项目中引用了System.Printing命名空间。…...
springboot系列十四: 注入Servlet, Filter, Listener + 内置Tomcat配置和切换 + 数据库操作
文章目录 注入Servlet, Filter, Listener官方文档基本介绍使用注解方式注入使用RegistrationBean方法注入DispatcherServlet详解 内置Tomcat配置和切换基本介绍内置Tomcat配置通过application.yml完成配置通过类配置 切换Undertow 数据库操作 JdbcHikariDataSource需求分析应用…...
DeepSeek 助力 Vue 开发:打造丝滑的二维码生成(QR Code)
前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 💕 目录 Deep…...
从传统到轻量级5G:网络架构演变与优化路径
轻量级5G 随着5G技术的不断发展,通信网络架构正经历着前所未有的变革。传统的5G核心网架构虽然在性能和容量方面表现出色,但在灵活性、部署效率以及成本控制方面却面临一些挑战。为了应对日益复杂的通信需求,轻量级5G核心网成为了一种…...
独立开发者如何寻找产品设计灵感
作为独立开发者,面对激烈的市场竞争和不断变化的用户需求,寻找优秀的产品设计灵感是至关重要的一步。以下是一篇关于独立开发者如何寻找产品设计灵感的教程,希望能为你提供一些有益的指导。 一、观察日常生活 1.1 关注身边的小问题 在日常生…...
技术解析 | 适用于TeamCity的Unreal Engine支持插件,提升游戏构建效率
龙智是JetBrains授权合作伙伴、Perforce授权合作伙伴,为您提供TeamCity、Perforce Helix Core等热门的游戏开发工具及一站式服务 TeamCity 是游戏开发的热门选择,大家选择它的原因包括支持 Perforce、可以进行本地安装,并提供了多种配置选项。…...
uniapp h5端和app端 使用 turn.js
前提:添加页后,添加页与当前页会重叠在一起,不知道为什么,没有找到解决办法 1.h5端 <template><view class"container"><view id"flipbook"><view class"page page1">Page 1</view><view class"page pag…...
智慧校园系统在学生学习与生活中的应用
随着科技的快速发展,智慧校园系统逐渐成为现代教育不可或缺的一部分。它整合了先进的信息技术、物联网技术以及人工智能等,旨在构建一个全面、智能、个性化的学习与生活环境。对于学生而言,这一系统不仅能够极大地提高学习效率,还…...
umi: valtio的使用
一、基本用法 import { proxy, useSnapshot } from umijs/max;// 1、定义数据 const state proxy({ count: 33 });export default () > {// 2、使用数据const snap useSnapshot(state);function increaseCount() {state.count 1;}return (<><h1>{snap.count}…...
什么是矩阵账号?如何高效运营tiktok矩阵账号
…...
C语言.h头文件的写法
头文件的内容 #ifndef __SEQUENCE_LIST_H // 定义以防止递归包含 #define __SEQUENCE_LIST_H // (1)、其它头文件 #include <stdio.h> #include <stdlib.h> #include <strings.h> #include <stdbool.h> // (2)、宏定义(函数、变量、常量) // (3)、…...
【Day44 LeetCode】图论问题 Ⅱ
一、图论问题 Ⅱ 1、岛屿的最大面积 这题和上一篇博客求岛屿数量如出一辙,都是要找出所有岛屿,深度优先搜索代码如下: # include<iostream> # include<vector>using namespace std;int dfs(vector<vector<int>> …...
设计模式教程:责任链模式(Chain of Responsibility Pattern)
责任链模式(Chain of Responsibility Pattern)是一种常用的设计模式,它属于行为型模式,主要解决的是多个对象处理一个请求时,如何解耦请求的发送者和接收者,以及如何将请求的处理职责分配给不同的对象。 1…...
java网络编程
计算机网络基础 网络编程的目的就是直接或间接地通过网络协议与其他计算机进行通信。 在 Java 语言中包含网络编程所需要的各种类,编程人员只需要创建这些类的对象,调用相应的方法,就可以进行网络应用程序的编写。 要进行网络程序的编写&am…...
计算机网络面试知识点总结
目录 1. 计算机网络的基本知识点2. OSI 七层模型3. TCP/IP 四层模型4. TCP 和 UDP4.1 TCP 协议4.2 TCP 流量控制4.3 TCP 拥塞控制4.4 TCP 三次握手4.5 TCP 四次挥手4.6 TCP 粘包问题4.7 TCP Socket交互流程4.8 UDP 协议以及和 TCP 协议的不同 5. HTTP协议5.1 HTTP 请求方法以及…...
ubuntu22.4搭建单节点es8.1
下载对应的包 elasticsearch-8.1.1-linux-x86_64.tar.gz 创建es租户 groupadd elasticsearc useradd elasticsearch -g elasticsearch -p elasticsearch chmod uw /etc/sudoers chmod -R elasticsearch:elasticsearch elasticsearch 修改配置文件 vim /etc/sysctl.conf vm…...
卷积与动态特征选择:重塑YOLOv8的多尺度目标检测能力
文章目录 1. YOLOv8的网络结构概述2. 添加注意力机制2.1 为什么添加注意力机制?2.2 如何将注意力机制集成到YOLOv8中?2.3 效果分析 3. C2f模块的集成3.1 C2f模块简介3.2 如何在YOLOv8中集成C2f模块?3.3 效果分析 4. 卷积操作的优化4.1 卷积操…...
【Altium Designer】差分对等长设置以及绕线
在Altium Designer 17中设置差分对的等差规则及绕等长操作,需结合规则配置与交互式布线工具完成。以下是详细操作步骤: 目录 一、差分对等差规则设置 1. 原理图端差分对定义 2. PCB端差分规则配置 二、差分对等长绕线操作 1. 差分对布线 2. 交互式…...
BFS 和 DFS(深度优先搜索、广度优先搜索)
深度优先搜索(DFS)和广度优先搜索(BFS)是两种常用的图遍历算法,用于解决图相关的问题。它们在搜索问题中具有广泛的应用,如路径搜索、连通性检测等。 以下是具体区别: (图片引自&am…...