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

把 DeepSeek1.5b 部署在显卡小于4G的电脑上

这里写自定义目录标题

  • 介绍
    • 准备
    • 安装 Ollama
    • 查看CUDA需要版本
    • 安装CudaToolkit
    • 检查Cuda是否装好
    • 设置Ollama环境变量
    • 验证是否跑在GPU上
    • ollama如何导入本地下载的模型
    • 安装及配置docker
    • 安装open-webui
      • 启动open-webui
      • 开始对话
    • 调整gpu精度

介绍

Deepseek1.5b能够运行在只用cpu和gpu内存小的情况下,经过试用,电脑只使用cpu是很慢的。
在实际使用过程中,我发现使用cpu和gpu是有区别的,使用gpu会出现答非所问的情况,发现默认情况下,GPU可能会使用半精度浮点数(float16)来加速计算,这可能会影响模型的准确性。尝试将精度改为单精度浮点数(float32)。修改后回答正常符合预期.

准备

Docker Desktop Installer.exe
open-webui
DeepSeek-R1-Distill-Qwen-1.5B
OllamaSetup
CUDA
其中OllamaSetup下载慢,需要网盘下载
模型从modelscope下载
open-webui从gitee下载2

安装 Ollama

Ollama 的官方网站下载很慢,最好从百度网盘下载
安装完成后,打开命令行界面并输入

ollama

命令。如果屏幕上出现以下提示信息,那么恭喜你,Ollama 已经成功安装。
在这里插入图片描述

查看CUDA需要版本

查看当前显卡驱动中的cuda版本

有两种方法:

1. 使用控制台命令查看。

nvidia-smi 是 NVIDIA 提供的用于监控 GPU 状态的工具,也可以用来检查 CUDA 的版本。

该命令会显示 GPU 的状态和性能信息,包括驱动程序版本和 CUDA 版本。

nvidia-smi

查看显卡驱动的cuda版本
查看显卡驱动的cuda版本
2.通过nvdia控制面板查看。桌面右键打开nvdia控制面板

在这里插入图片描述
查看显卡驱动的cuda版本

安装CudaToolkit

CudaToolkit版本 不能大于 上面的显卡Cuda版本。

Cuda各版本下载地址:https://developer.nvidia.com/cuda-toolkit-archive

在这里插入图片描述
Cuda安装

检查Cuda是否装好

nvcc 是 CUDA 的编译器工具,可以用来检查 CUDA 的版本信息。输入以下命令:

nvcc --version

如果 CUDA 安装成功,该命令会返回 CUDA 的版本信息:

在这里插入图片描述

设置Ollama环境变量

这里略去Ollama安装过程。

Ollama安装好后,为了让推理跑在GPU上,可以按照如下步骤 设置环境变量:

在“系统变量”中,点击“新建”按钮。
添加以下环境变量:
变量名:OLLAMA_GPU_LAYER
变量值:cuda
如果需要指定特定的 GPU,可以添加以下环境变量:
变量名:CUDA_VISIBLE_DEVICES
变量值:GPU的UUID(按编号有时找不到,所以使用UUID)
在控制台输入nvidia-smi -L,即可查看GPU的UUID
可以在命令行中使用set命令

set OLLAMA_GPU_LAYER="cuda"
nvidia-smi -L
set CUDA_VISIVLE_DEVICES="UUID"

在这里插入图片描述
获取GPU的UUID

设置好后的效果如图:

在这里插入图片描述
设置环境变量,让Ollama调用指定GPU

验证是否跑在GPU上

在推理时使用Ollama ps即可查看负载情况:

ollama ps

我的显存是12G。

使用8b模型推理时,GPU显存够用,所以是100% GPU。

使用14b模型推理时,为避免显存爆掉,系统会自动将一部分分给CPU运行。这里是6%CPU,94%GPU

在这里插入图片描述

具体的分配可以看Log

在这里插入图片描述
将Log内容贴在AI中进行分析
在这里插入图片描述
可能会遇到的问题

如果是先装了Ollama,再装cuda,可能会出现这种情况:

按照上面设置后,控制台使用Ollama ps 显示GPU是主要负载,但是任务管理器中看到的却是GPU没怎么跑,CPU占用很高。

解决办法是:重装一下Ollama。 或者在任务栏的Ollama图标上 右键点击Update即可自动重装并更新至新版本。

ollama如何导入本地下载的模型

git clone https://www.modelscope.cn/deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B.git

下载模型文件

在模型所在目录创建一个Modelfile

Modelfile内容示例:

FROM ./DeepSeek-R1-Distill-Qwen-1.5B

在模型所在目录进入cmd,执行

ollama create qwen2:7b -f Modelfile

在这里插入图片描述

如果提示找不到模型,进入模型文件夹继续上一步,Tab键可以输入部分名称后补全

安装及配置docker

1 docker安装后升级到最新,不需要注册直接跳过
2 如果不报错但不能正常启动没显示"Engine running",先启动"Docker Desktop Service"
3需要添加国内源,不然非常慢
在"设置"页面的"Docker Engine"即可配置

{"builder": {"gc": {"defaultKeepStorage": "20GB","enabled": true}},"experimental": false,"registry-mirrors": ["https://registry.cn-hangzhou.aliyuncs.com","https://mirror.ccs.tencentyun.com‌","https://registry.cn-hangzhou.aliyuncs.com","https://registry.docker-cn.com","http://hub-mirror.c.163.com"]
}

点击"Apply",如果不能正常启动,说明输入有误,不能省略https,注意标点

安装open-webui

如图运行该命令,在readme.md文件中找
在这里插入图片描述
注意需要替换源加快速度,否则等一晚上也不行
在这里插入图片描述

启动open-webui

如图所示安装好是这样的,如果报错需要在设置中升级docker,如果点进去报错修改半天也没用,升级就好
在这里插入图片描述

如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 文章导出 ,生成一个.md文件或者.html文件进行本地保存。

开始对话

在这里插入图片描述

在界面的左上角选择您的 DeepSeek R1 大模型,之后便可开始对话。
注意这是任务管理器中是cpu在跑还是gpu在跑

调整gpu精度

**要在Windows 10上使用Ollama时将GPU的默认浮点计算从float16改为float32,您需要在运行模型之前设置相应的环境变量或直接在代码中进行配置。**以下是一些常见的操作方法:

方法一:设置环境变量
对于许多深度学习框架,可以通过设置环境变量来改变默认的浮点精度。在命令行中执行以下命令:

set CUDA_VISIBLE_DEVICES=0  # 指定使用哪个GPU(例如,0表示第一个GPU)
set TF_FORCE_GPU_ALLOW_GROWTH=true  # 允许GPU内存按需增长
set TF_FP32_CONVOLUTIONS=1  # 对于TensorFlow,强制使用float32进行卷积操作
set TF_ENABLE_ONEDNN_OPTS=0  # 禁用OneDNN优化,有时这会影响到精度设置

然后运行您的Ollama脚本。

注意:
GTX 1650支持float16和float32计算,但float16通常用于加速计算。在某些情况下,使用float32可能会降低性能,但可以提高数值稳定性。

相关文章:

把 DeepSeek1.5b 部署在显卡小于4G的电脑上

这里写自定义目录标题 介绍准备安装 Ollama查看CUDA需要版本安装CudaToolkit检查Cuda是否装好设置Ollama环境变量验证是否跑在GPU上ollama如何导入本地下载的模型安装及配置docker安装open-webui启动open-webui开始对话 调整gpu精度 介绍 Deepseek1.5b能够运行在只用cpu和gpu内…...

#渗透测试#批量漏洞挖掘#29网课交单平台 SQL注入

免责声明 本教程仅为合法的教学目的而准备,严禁用于任何形式的违法犯罪活动及其他商业行为,在使用本教程前,您应确保该行为符合当地的法律法规,继续阅读即表示您需自行承担所有操作的后果,如有异议,请立即停止本文章读。 目录 1. 漏洞原理 2. 漏洞定位 3. 攻击验证示…...

试试DeepSeek写prompt+stable diffusion生成漫画

#deepseek #stable diffusion 模型:dreamshaperXL_v21TurboDPMSDE.safetensors 一、情节拟定 漫画情节由deepseek自编自导,画幅为四张。 Prompt 1: 魔法觉醒 "一个平凡的少年在阁楼发现一本古老的魔法书,书页散发着微弱的蓝光。画…...

java面试题之 int和Integer的区别

int和Integer的区别 1、Integer是int的包装类,int则是java的一种基本数据类型 2、Integer变量必须实例化后才能使用,而int变量不需要 3、Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象&#xff1b…...

Spring Bean的生命周期

1、对象实例化 2、属性设置 3、初始化 4、使用 5、销毁 示例代码如下: import org.springframework.stereotype.Component;Component public class SpringBeanA {public SpringBeanA() {System.out.println("第一步:实例化(spring对象&#x…...

Vue 发送 PDF 文件链接到 WinForm 程序进行打印

Vue 发送 PDF 文件链接到 WinForm 程序进行打印的完整流程如下&#xff1a; 1. Vue 端 Vue 通过 fetch 或 axios 发送 PDF 文件的 URL 给 WinForms 程序&#xff08;WinForms 需要开启一个本地 API&#xff09;。 <template><div><button click"sendPri…...

Vue笔记(十)

一、AI的基本认知 二、ChatGPT的基本使用 三、AI插件--Copilot入门 1.Copilot是由OpenAI和GitHub合作开发的AI编程辅助插件&#xff0c;基于大量代码训练&#xff0c;能根据上下文自动生成代码建议。 2.安装与配置&#xff1a;在常用代码编辑器&#xff08;如Visual Studio Cod…...

使用LangChainV3.0加载PDF文件并进行总结

LangChain目前已经更新到了V3版本&#xff0c;之前一直使用的V1版本&#xff0c;有很多方法都需要自己去封装&#xff0c;这次重新看了V3版本的API文档&#xff0c;很多方法都十分便利&#xff0c;调用方法简单明了十分方便&#xff0c;下面就来展示下这次对于PDF文件加载的优化…...

玩转大语言模型——使用Kiln AI可视化环境进行大语言模型微调数据合成

系列文章目录 玩转大语言模型——使用langchain和Ollama本地部署大语言模型 玩转大语言模型——三分钟教你用langchain提示词工程获得猫娘女友 玩转大语言模型——ollama导入huggingface下载的模型 玩转大语言模型——langchain调用ollama视觉多模态语言模型 玩转大语言模型—…...

EasyRTC智能硬件:小体积,大能量,开启音视频互动新体验

在万物互联的时代&#xff0c;智能硬件正以前所未有的速度融入我们的生活。然而&#xff0c;受限于硬件性能和网络环境&#xff0c;许多智能硬件在音视频互动体验上仍存在延迟高、卡顿、回声等问题&#xff0c;严重影响了用户的使用体验。 EasyRTC智能硬件&#xff0c;凭借其强…...

vue知识点5

1.如何让组件里的样式与其他组件互相不干扰 scope范围的意思 <style scope> </style> 2.vue的生命周期 创建 挂载 更新 销毁 3.vue的四个生命周期详解 创建beforeCreate,created 挂载 beforeMount,mounted 更新 beforeUpdate,updated 销毁 beforeDest…...

qt的QSizePolicy的使用

使用 QSizePolicy 设置控件的伸缩因子 在 Qt 中&#xff0c;QSizePolicy 控制 控件如何在布局中伸缩。如果想要影响控件的大小调整行为&#xff0c;可以通过 QSizePolicy::setHorizontalStretch() 和 QSizePolicy::setVerticalStretch() 设置伸缩因子。 基本用法 假设我们有一个…...

基于 FFmpeg 和 OpenGLES 的 iOS 视频预览和录制技术方案设计

基于 FFmpeg 和 OpenGLES 的 iOS 视频预览和录制技术方案设计 在 iOS 上实现一个基于 FFmpeg 和 OpenGLES 的视频预览和录制功能,需要结合 FFmpeg 的强大音视频处理能力和 OpenGLES 的高效图形渲染能力。以下是一个完整的技术方案设计,包含项目的架构设计、模块划分、技术选…...

如何保障 MySQL 和 Redis 的数据一致性

在现代分布式系统中&#xff0c;确保不同数据存储&#xff08;如 MySQL 和 Redis&#xff09;之间的一致性是一个常见的挑战。MySQL 是一种关系型数据库管理系统&#xff0c;而 Redis 是一种内存中的键值存储系统&#xff0c;通常用于缓存和快速访问数据。本文将详细介绍几种保…...

【LeetCode Hot100 子串】和为 k 的子数组、滑动窗口最大值、最小覆盖子串

子串 1. 和为 k 的子数组题目描述解题思路主要思路步骤 时间复杂度与空间复杂度代码实现 2. 滑动窗口最大值题目描述解题思路双端队列的原理&#xff1a;优化步骤&#xff1a; Java实现 3. 最小覆盖子串题目描述解题思路滑动窗口的基本思路&#xff1a;具体步骤&#xff1a;算法…...

【CLIP系列】4:目标检测(ViLD、GLIP)

目录 1 ViLD2 GLIP2.1 前言2.2 损失计算2.3 模型框架 1 ViLD OPEN-VOCABULARY OBJECT DETECTION VIA VISION AND LANGUAGE KNOWLEDGE DISTILLATION 从标题就能看出来&#xff0c;作者是把CLIP模型当成一个Teacher&#xff0c;去蒸馏他自己的网络&#xff0c;从而能Zero Shot去…...

vue-谷歌浏览器安装vue-devtools插件

文章目录 一、谷歌浏览器安装vue-devtools1.1、方式一&#xff1a;直接下载crx并安装 本文讲解谷歌浏览器安装vue-devtools插件的步骤。 注意&#xff1a;以下vue-devtools插件都是vue2版本的。 一、谷歌浏览器安装vue-devtools 1.1、方式一&#xff1a;直接下载crx并安装 …...

【安全测试】0基础新手学Web安全测试笔记(一)

文章目录 一、关于账号密码的漏洞二、关于验证码的漏洞三、Burp工具的使用四、渗透测试1. 渗透测试类型2. 脆弱性评估 五、常见的应用安全风险1. 注入2. 失效的身份认证3. 敏感数据泄露4. XML外部实体(XXE)5. 失效的访问控制6. 安全配置错误7. 跨站脚本:(XSS)8. 不安全的反序列…...

初窥强大,AI识别技术实现图像转文字(OCR技术)

⭐️⭐️⭐️⭐️⭐️欢迎来到我的博客⭐️⭐️⭐️⭐️⭐️ &#x1f434;作者&#xff1a;秋无之地 &#x1f434;简介&#xff1a;CSDN爬虫、后端、大数据、人工智能领域创作者。目前从事python全栈、爬虫和人工智能等相关工作&#xff0c;主要擅长领域有&#xff1a;python…...

JDK 14,15,17的一些新特性(部分常用)

1&#xff1a;instanceof&#xff08;后&#xff0c;使用不再需要墙转&#xff09; 2&#xff1a;switch语句增强 1&#xff1a;支持lmbda&#xff0c;自动防击穿&#xff0c;有返回值 2&#xff1a;支持case多个值&#xff0c;复杂逻辑结果支持yield返回 3&#xff1a;字符串…...

架构设计系列(二):CI/CD

一、概述 CI/CD 是 持续集成&#xff08;Continuous Integration&#xff09; 和 持续交付/持续部署&#xff08;Continuous Delivery/Continuous Deployment&#xff09; 的缩写&#xff0c;是现代软件开发中的一套核心实践和工具链&#xff0c;旨在提高软件交付的效率、质量…...

二十六、使用docsify搭建文档管理平台

特性 无需构建,写完文档直接发布容易使用并且轻量 (~19kB gzipped)智能的全文搜索提供多套主题丰富的 API...

SpringMVC学习使用

一、SpringMVC简单理解 1.1 Spring与Web环境集成 1.1.1 ApplicationContext应用上下文获取方式 应用上下文对象是通过new ClasspathXmlApplicationContext(spring配置文件) 方式获取的&#xff0c;但是每次从容器中获得Bean时都要编写new ClasspathXmlApplicationContext(sp…...

MySQL | MySQL安装教程

MySQL | MySQL安装教程(压缩包&#xff08;ZIP&#xff09;安装-详细版) &#x1fa84;个人博客&#xff1a;https://vite.xingji.fun MySQL概述 MySQL是一个关系型数据库管理系统&#xff0c;由瑞典MySQL AB公司开发&#xff0c;MySQL AB公司被Sun公司收购&#xff0c;Sun公…...

Vite入门指南

一、什么是Vite&#xff1f; Vite&#xff08;法语意为"快速"&#xff09;是由Vue作者尤雨溪开发的新型前端构建工具。它基于原生ES模块&#xff08;ESM&#xff09;实现&#xff0c;具有以下核心优势&#xff1a; 极速启动&#xff1a;冷启动时间比Webpack快10-10…...

DeepSeek 助力 Vue 开发:打造丝滑的进度条

前言&#xff1a;哈喽&#xff0c;大家好&#xff0c;今天给大家分享一篇文章&#xff01;并提供具体代码帮助大家深入理解&#xff0c;彻底掌握&#xff01;创作不易&#xff0c;如果能帮助到大家或者给大家一些灵感和启发&#xff0c;欢迎收藏关注哦 &#x1f495; 目录 Deep…...

左移架构 -- 从攒批,湖仓到使用数据流的实时数据产品

编辑导读: 这篇文章翻译自 Kai Waehner的 《The Shift Left Architecture – From Batch and Lakehouse to Real-Time Data Products with Data Streaming》。文章通过数据产品的概念引出了如何创建可重复使用的数据产品使企业能够从当前和未来的数据中获得价值。基于构建数据产…...

用java实现word(docx)转换为pdf格式文档(简单版)

导入依赖 <dependency> <groupId>com.documents4j</groupId> <artifactId>documents4j-local</artifactId> <version>1.0.3</version> </dependency> <dependency>…...

【云安全】云原生- K8S etcd 未授权访问

什么是etcd&#xff1f; etcd 是一个开源的分布式键值存储系统&#xff0c;主要用于存储和管理配置信息、状态数据以及服务发现信息。它采用 Raft 共识算法&#xff0c;确保数据的一致性和高可用性&#xff0c;能够在多个节点上运行&#xff0c;保证在部分节点故障时仍能继续提…...

【Elasticsearch】字符过滤器Character Filters

在 Elasticsearch 中&#xff0c;字符过滤器&#xff08;Character Filters&#xff09;是文本分析器的重要组成部分&#xff0c;用于在分词之前对原始文本进行预处理。它们可以对字符流进行转换&#xff0c;例如添加、删除或更改字符。Elasticsearch 提供了三种内置的字符过滤…...

网络工程师 (35)以太网通道

一、概念与原理 以太网通道&#xff0c;也称为以太端口捆绑、端口聚集或以太链路聚集&#xff0c;是一种将多个物理以太网端口组合成一个逻辑通道的技术。这一技术使得多个端口能够并行工作&#xff0c;共同承担数据传输任务&#xff0c;从而提高了网络的传输能力和可靠性。 二…...

浏览器网络请求全流程深度解析

一、核心流程概述 现代浏览器的网络请求过程是一个分层协作的精密系统&#xff0c;涉及应用层协议、传输层协议、操作系统内核及网络基础设施的协同工作。整个过程可抽象为以下关键阶段&#xff1a; 请求构建与初始化DNS解析与寻址TCP连接建立HTTP协议交互响应处理与资源解析…...

arduino扩展:Arduino Mega 控制 32 个舵机(参考表情机器人)

参考&#xff1a;表情机器人中使用22个舵机的案例 引言 在电子制作与自动化控制领域&#xff0c;Arduino 凭借其易用性和强大的扩展性备受青睐。Arduino Mega 作为其中功能较为强大的一款开发板&#xff0c;具备丰富的引脚资源&#xff0c;能够实现复杂的控制任务。舵机作为常…...

时间盲注,Boolean盲注

什么是SQL注入&#xff08;SQL Injection&#xff09; SQL注入是指攻击者通过构造恶意SQL语句来操控数据库&#xff0c;通常发生在Web应用程序未对用户输入进行充分验证的情况下。 什么是盲注&#xff08;Blind SQL Injection&#xff09; 盲注就是通过使用巧妙的SQL语句&am…...

小程序canvas2d实现横版全屏和竖版逐字的签名组件(字帖式米字格签名组件)

文章标题 01 功能说明02 效果预览2.1 横版2.2 竖版 03 使用方式04 横向签名组件源码4.1 html 代码4.2 业务 Js4.3 样式 Css 05 竖向签名组件源码5.1 布局 Html5.2 业务 Js5.3 样式 Css 01 功能说明 技术栈&#xff1a;uniapp、vue、canvas 2d 需求&#xff1a; 实现横版的全…...

wireshark网络抓包

由于图片和格式解析问题&#xff0c;可前往 阅读原文 到这里已经讲了两个抓包工具的使用了&#xff0c;大家应该对抓包不是很陌生了。而wireshark相对于fiddler和charles更加偏向于网络层面的抓包或者说是一个网络封包分析工具。使用对象更适合于网络相关人员(网络管理员/相关运…...

jenkins备份还原配置文件

下载ThinBackup插件 方式1 从插件市场直接下载 Manage Jenkins->Manage Plugins->可选插件搜索 注意&#xff1a;有时可能因为网络或者版本问题下载不了&#xff0c;好像是默认下载最新版本&#xff0c;可选择手动安装&#xff01; 方式二 手动安装插件 点击查看手…...

C# 两种方案实现调用 DeepSeek API

目录 序 开发运行环境 访问API的一个通用方法 原生官网实现 申请 API key 调用实现 调用示例 腾讯云知识引擎原子调用 申请 API key 调用示例 小结 序 DeepSeek&#xff08;深度求索&#xff09; 最近可谓火爆的一塌糊涂&#xff0c;具体的介绍这里不再赘述&#x…...

Kimi杨植麟该为“重投放”反思吗?

Kimi原本验证的市场规律被撕裂了。 作者|文昌龙 编辑|杨舟 “没有人提杨植麟了&#xff0c;Kimi花了这么多钱买用户也买不过豆包&#xff0c;到头来都敌不过界面简陋、功能单一的DeepSeek。还是应该把精力和资源集中在做出更好的基础模型才是王道。” 这番话&#xff0c;来自…...

25农村发展研究生复试面试问题汇总 农村发展专业知识问题很全! 农村发展复试全流程攻略 农村发展考研复试真题汇总

农村发展复试当然有好的建议&#xff01;前提是复试重点面试题背好&#xff01; 你是不是也在为农村发展考研复试发愁&#xff1f;担心自己准备不充分、表现不好&#xff1f;别急&#xff01;今天&#xff0c;学姐——复试面试拿下90分成功上岸的学姐&#xff0c;来给大家分享…...

JavaScript函数与方法详解

目录 一、函数的定义 1. 函数声明 2. 函数表达式 3. 箭头函数 二、函数的调用 1. 调用方式 2. 参数数量的灵活性 三、arguments 对象 1. 基本概念 2. 属性 3. 应用场景 4. 转换为真数组 5. 总结 四、Rest参数 1. 基本概念 2. 特点 3. 应用场景 4. 总结 五、变…...

AI 网关对决:Higress 与 OneAPI 的功能对比

什么是 AI 网关&#xff1f; AI 网关旨在统一管理与各种大型语言模型&#xff08;LLMs&#xff09;的交互。通过提供单一入口点&#xff0c;它解决了使用来自不同供应商的多个 AI 模型所带来的复杂性问题。这不仅简化了访问流程&#xff0c;提高了系统稳定性&#xff0c;还降低…...

封装一个sqlite3动态库

作者&#xff1a;小蜗牛向前冲 名言&#xff1a;我可以接受失败&#xff0c;但我不能接受放弃 如果觉的博主的文章还不错的话&#xff0c;还请点赞&#xff0c;收藏&#xff0c;关注&#x1f440;支持博主。如果发现有问题的地方欢迎❀大家在评论区指正 目录 一、项目案例 二…...

1.攻防世界 unserialize3(wakeup()魔术方法、反序列化工作原理)

进入题目页面如下 直接开审 <?php // 定义一个名为 xctf 的类 class xctf {// 声明一个公共属性 $flag&#xff0c;初始值为字符串 111public $flag 111;// 定义一个魔术方法 __wakeup()// 当对象被反序列化时&#xff0c;__wakeup() 方法会自动调用public function __wa…...

DeepSeek能做分析吗?从需求规约到分析类图的实验

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 今天我们来尝试DeepSeek能不能帮我们从需求转到分析。 给定一个用例规约&#xff0c;我们让它按照面向对象分析设计方法&#xff0c;出一个分析类图。过程如下&#xff1a; 可以帮助提…...

九.Spring Boot使用 ShardingSphere + MyBatis + Druid 进行分库分表

文章目录 前言一、引入依赖二、创建一个light-db_1备用数据库三、配置文件 application-dev.yml四、创建shardingsphere-config.yml完整项目结构 五、测试总结 前言 在现代化微服务架构中&#xff0c;随着数据量的不断增长&#xff0c;单一数据库已难以满足高可用性、扩展性和…...

RNN复兴!性能反超Transformer,训练速度提升1300倍!

在最新的顶会论文中&#xff0c;RNN的改进创新更是层出不穷。Bengio团队提出的minLSTM和minGRU&#xff0c;通过去除隐藏状态的依赖和简化门控机制&#xff0c;显著减少了参数量和计算量。这些模型可以使用并行扫描算法进行训练&#xff0c;大大加快了训练速度。例如&#xff0…...

C语言第18节:自定义类型——联合和枚举

1. 联合体 C语言中的联合体&#xff08;Union&#xff09;是一种数据结构&#xff0c;它允许在同一内存位置存储不同类型的数据。不同于结构体&#xff08;struct&#xff09;&#xff0c;结构体的成员各自占有独立的内存空间&#xff0c;而联合体的所有成员共享同一块内存区域…...

2025年二级建造师报名流程图解

2025年二级建造师报名时间&#xff01;附报名流程&#xff01; ⏰️已公布25年二建考试时间的省份如下&#xff1a; ️4月19日、20日考试的城市有&#xff1a;贵州 ️5月10日、11日考试的城市有&#xff1a;湖北、陕西、宁夏、甘肃、福建、浙江、江西、黑龙江、河南、湖南、…...

AWTK fscript 中的 TCP/UDP 客户端扩展函数

fscript 是 AWTK 内置的脚本引擎&#xff0c;开发者可以在 UI XML 文件中直接嵌入 fscript 脚本&#xff0c;提高开发效率。本文介绍一下 fscript 中的 TCP/UDP 客户端扩展函数。 1.iostream_tcp_create 创建 TCP 客户端输入输出流对象。 原型 iostream_tcp_create(host, por…...