在本地顺利的部署一个al模型从零开始 windows
引言 (踩的坑,省流引言的内容没有有使模型跑起来)
最近想在本地部署一个deepseek模型,就在网上搞了3 4天终于是能够部署下来了,在部署的时候也是成功的踩了无数的坑,比如我先问al如何在本地部署一个语言模型,al给我的建议是,先去hugging face中下好你要的模型,当然hugging face是访问不了的,要访问进行hf_mirror这个,然后去复制模型的下载链接然后我得到了这个

只有这个python下载链接不行的,,所以要去下transformers这个库,那么如何下呢,答:使用pip指令,pip嘛是python的一个下载各种插件的工具好用,下载工具就一行代码 pip install transformers
但是当我下好pip之后发现下载慢的要死,原来是他是在hugging face.co这里下载的,nnd这个网站我科学上网都进不去,得用国内镜像源
https://hf-mirror.com
,后来发现改为全球节点才进去nnd,
pip install transformers 来下载,结果慢得要死,配置下国内源
pip config set global.index-url='https://mirrors.aliyun.com/pypi/simple/'
改为alli的镜像下载快多了,之前kb的现在几十mb 可以使用pip config list来看是否配置好了

把transformers下好之后,复制代码就去使用,md下半天没有下好,一看报错,好家伙又要访问hugging face.io去下载,于是我寻思那就科学上网


下吧(我已经下过了)有俩个model要下载,shards0/2看出来的,一共14个g,然后发现去找发现可以使用国内的镜像网站去下 而且我没时间了hh
https://hf-mirror.com
又去配置了下国内源

这个是临时的,结果搞笑了
居然下不了,国内的源的下不了了,神奇了,那我前俩天咋下的,不过也没事,反正我下下来了也跑不起,报的错我还记得,文件空间不够,意思是我的内存不够了,得 哦对我的是笔记本
i9-13900hx和4060的,然后又想到ai给我说的要量化的 得量化为4-bit的,然后就又去搞怎么量化
去问,哈要用到bitsandbytes 这个工具,又去下了这个工具 pip install bitsandbytes ,然后还需要pytorch 和cuda,pytorch 和cuda 这俩可真是一个无敌大坑,作用是cuda给你的程序提供gpu算力支持,pytorch,用python代码使用cuda(我的理解哈,也不大懂的),我之前不知道适配的事,下了个12.3,又去看pytorch,傻眼了
感觉不支持的验证,但是为了保险起见,我删了cuda12.3下为了12.4,pytorch下支持cuda12.4的
cuda下好之后,cuda的环境变量啥的都搞的服服帖帖的

pytorch是用他给的指令下慢得不行,于是使用镜像源下,
pip3 install torch torchvision torchaudio --index-url https://mirrors.aliyun.com/pypi/simple//whl/cu124
下好之后,觉得成了,在python中运行nnd已运行报错
一问ai问的是deepseek,说的bitsandbytes无法使用cuda,然后去检查这里pytorch和cuda是否适配,结果不适配,然后就各种问ai,删了重下,啥的,后面刷到个帖子,说不要用镜像源的源来下,就得用给指令的来下,我看他倒是成了,我这样搞,不行,就是不适配,然后我就怀疑是windows系统的错hh,因为ai和搜到的大多给我的都是bash指令,是类 Unix 操作系统,Linux的标准命令工具,当然这是我搞了2 3天不成功之后气的给的理由,然后放弃了这条路,还是ollama好用,还有在图形化运行模型的时候,全是给我推荐的是使用docker容器来运行,也是去搞了下,开始的时候发现不呢正常运行,为什么呢,一看原来是没有启动hyper-v这东西是linux的,要创造个虚拟机来运行,那就去启动把,一看傻眼了
没有hyper-v

后面又去搜 使用这行命令安装的
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
之后docker能用了,去运行时要是使用openwebui,然后openwebui也是有现成的给我用

都是在docker中下openwebui的,一用,慢的要死,最后等他下好全部都下玩了有个一下午把,结果又失败了,果断放弃,使用pip下载openwebui,几分钟就解决了,ok我能想到的坑就先这多了,现在进入正题
正题
在python中创建一个项目

这里自动给我给创建了虚拟环境,有个虚拟环境,这样你在这个环境入无论咋折腾对外都不会有什么影响,在部署模型的时候也容易对依赖下了右删,删了又下的,还不错
运行虚拟环境
F:\virtual_env\v2\.venv\Scripts

这样就成功了
还有更方便的
下载open-webui 这个是用来图形化使用模型的,你也不想对个黑框框对话把
pip install open-webui

下载ollama,在ollama中下载模型
Ollama
下载好ollama软件之后,
这里下载模型

复制这个连接在cmd中运行,当然要确保ollama 已经启动可以使用
ollama serve启动和确认

这样就是成功启动了 输入复制的下载

成功之后会会这样就代表模型运行起来了可以进行对话了

我刚刚直接退出了,也可以这样运行

启动open-webui服务
open-webui serve
![]()
他会自动连接ollama的

这样就启动成功了 访问http://127.0.0.1:8080就能进行对话了

一些错误的解决
在启动的过程中可能会有个报错 比如这个

他说的是 OpenMP这个库被多次初始化,我的解决方案比较粗暴 设置这个环境变量
KMP_DUPLICATE_LIB_OK=TRUE 告诉OpenMp运行库可以重复初始化
具体是
cmd:setx KMP_DUPLICATE_LIB_OK TRUE 这是设置的是永久的环境变量

再次运行当然有可能失败,有点神奇可以这样搞

这样是设置的是临时的环境变量,是用os.system("set KMP_DUPLICATE_LIB_OK=TRUE") 不行,有点神奇,我这样就不行
在启动时 还可能有这个错误
open-webui会在启动的时候访问hugging face.co这个网站,可是访问不了的,那就会等到访问失败才会去链接本地的模型,会大大增加启动的时间,我算了下,访问了启动会需要大约3分钟才会启动,而直接加载本地的大约10秒就好了
比如这样

我的解决是
增加了这个环境变量
DISABLE_MODEL_DOWNLOAD = true
也是有点神奇我早上运行可以,中午不行,晚上把他搞为永久的变量了之后又可以了
也就是
setx DISABLE_MODEL_DOWNLOAD true
反正这些环境变量我使用set这个指令来进行配置都不行,运行结果都是错的,很神奇
end~~
相关文章:
在本地顺利的部署一个al模型从零开始 windows
引言 (踩的坑,省流引言的内容没有有使模型跑起来) 最近想在本地部署一个deepseek模型,就在网上搞了3 4天终于是能够部署下来了,在部署的时候也是成功的踩了无数的坑,比如我先问al如何在本地部署一个语言模…...
【容器技术01】使用 busybox 构建 Mini Linux FS
使用 busybox 构建 Mini Linux FS 构建目标 在 Linux 文件系统下构建一个 Mini 的文件系统,构建目标如下: minilinux ├── bin │ ├── ls │ ├── top │ ├── ps │ ├── sh │ └── … ├── dev ├── etc │ ├── g…...
Nginx如何实现 TCP和UDP代理?
文章目录 前言 Nginx之TCP和UDP代理 工作原理示意图 配置文件和命令参数注释 基本命令 配置实例说明 TCP代理实例UDP代理实例 总结 前言 Nginx是一个高性能的HTTP和反向代理服务器,同时也支持TCP/UDP代理。在1.9.13版本后,Nginx已经支持端口转发&…...
基于keepalived+GTID半同步主从复制的高可用MySQL集群
文章目录 项目架构图项目名称项目环境项目描述ip地址规划项目步骤一.安装好8台全新的centos7.9的系统,关闭firewalld和selinux,配置每台主机的静态ip地址,设置每台主机对应的主机名。1、关闭firewalld2.关闭seLinux3.配置每台主机静态ip地址4…...
尝试在Excel里调用硅基流动上的免费大语言模型
我个人觉得通过api而不是直接浏览器客户端聊天调用大语言模型是使用人工智能大模型的一个相对进阶的阶段。 于是就尝试了一下。我用的是老师木 袁进辉博士新创的硅基流动云上的免费的大模型。——虽然自己获赠了不少免费token,但测试阶段用不上。 具体步骤如下&am…...
SqlSugar简单使用之Nuget包封装-Easy.SqlSugar.Core
SqlSugar官方文档 Nuget包开源地址 Nuget包是为了简化SqlSugar的使用步骤,增加一些基础的使用封装 引入分为两个版本,一个Ioc模式,另一个是注入模式,如果不想影响原本的仓储代码推荐使用Ioc模式,两者区别不到,方法通…...
Linux网络 | 理解NATPT, 数据链路层Done
前言:本节内容结束数据链路层, 本节的重要内容有两个:一个是见一个综合性面试题,另一个就是NAT技术NATPT。 那么废话不多说, 开始我们的学习吧!!! ps:最好先看一下上一篇…...
微信小程序~django Petting pets(爱抚宠物)小程序
博主介绍:✌程序猿徐师兄、8年大厂程序员经历。全网粉丝15w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇…...
如何利用Python爬虫获取商品销量详情:应对eBay反爬策略的实战指南与代码示例
在当今数据驱动的商业环境中,获取商品销量数据对于市场分析、竞品研究和商业决策至关重要。然而,像eBay这样的大型电商平台通常会部署多种反爬虫机制来保护其数据。本文将详细介绍如何利用Python编写爬虫程序,获取eBay商品的销量详情…...
【实战篇】巧用 DeepSeek,让 Excel 数据处理更高效
一、为何选择用 DeepSeek 处理 Excel 在日常工作与生活里,Excel 是我们频繁使用的工具。不管是统计公司销售数据、分析学生成绩,还是梳理个人财务状况,Excel 凭借其强大的功能,如数据排序、筛选和简单公式计算,为我们提供了诸多便利。但当面对复杂的数据处理任务,比如从…...
UE (标识符, meta=())笔记
视频连接: [UFSH2024]UE5(标识符, meta(详解, 史上最全)) | 大钊 Epic Games 虚幻社区经理 参考文档: UE5标识符详解 | 史上最全 UnrealSpecifiers | UE5标识符详解 GitHub 老外整理的标识符文档 标识符 CPP_Default_ParamName(18:22&a…...
并发编程 引用类型 原子类 Stamped和Markable atomicMarkableReference表单Ref和标记Markable 面试题
目录 Stamped 和 Markable 的区别 示例代码 所以这个东西是一次性的 从来没听说过 从来没见过 Stamped 和 Markable 的区别 标记号 boolean 一次性的 版本号 整型数 不建议用 Markable 解决 ABA 问题 AtomicMarkableReference 是一个位于 java.util.concurrent.atomic 包中…...
绿联NAS安装cpolar内网穿透工具实现无公网IP远程访问教程
文章目录 前言1. 开启ssh服务2. ssh连接3. 安装cpolar内网穿透4. 配置绿联NAS公网地址 前言 本文主要介绍如何在绿联NAS中使用ssh远程连接后,使用一行代码快速安装cpolar内网穿透工具,轻松实现随时随地远程访问本地内网中的绿联NAS,无需公网…...
【Ubuntu】ARM交叉编译开发环境解决“没有那个文件或目录”问题
【Ubuntu】ARM交叉编译开发环境解决“没有那个文件或目录”问题 零、起因 最近在使用Ubuntu虚拟机编译ARM程序,解压ARM的GCC后想要启动,报“没有那个文件或目录”,但是文件确实存在,环境配置也检查过了没问题,本文记…...
深入浅出 NRM:加速你的 npm 包管理之旅
文章目录 前言一、NRM 是什么?二、为什么需要 NRM?三、NRM 的优势四、NRM 的安装与使用4.1 安装 NRM4.2 查看可用的 npm 源4.3 切换 npm 源4.4 测试 npm 源速度4.5 添加自定义 npm 源4.6 删除 npm 源 五、NRM 的进阶使用六、总结 前言 作为一名 JavaScr…...
微信小程序~电器维修系统小程序
博主介绍:✌程序猿徐师兄、8年大厂程序员经历。全网粉丝15w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇…...
使用Python的Tabulate库优雅地格式化表格数据
使用Python的Tabulate库优雅地格式化表格数据 在数据分析和软件开发中,表格数据的展示是一个常见的需求。无论是简单的数据报告,还是复杂的数据可视化,表格都是一种直观且有效的信息展示方式。Python作为一门强大的编程语言,拥有…...
android 适配 api 35(android 15) 遇到的问题
首先升级 targetSdkVersion 和 compileSdkVersion 到 35,升级后发生的报错 一、 解决方案: 升级 gradle 和 gradle 插件版本 com.android.tools.build:gradle -> 8.3.0-alpha02 gradle-wrapper.properties : distributionUrl -> gradle-8.6-bin.zip htt…...
DeepSeek和ChatGPT的对比
最近DeepSeek大放异彩,两者之间有什么差异呢?根据了解到的信息,简单做了一个对比。 DeepSeek 和 ChatGPT 是两种不同的自然语言处理(NLP)模型架构,尽管它们都基于 Transformer 架构,但在设计目标…...
【1】高并发导出场景下,服务器性能瓶颈优化
高并发导出场景下,服务器性能瓶颈通常出现在 CPU、内存、磁盘 I/O 或网络带宽等方面。为了解决这些问题,可以从以下几个方面进行优化: 1. 优化导出逻辑 减少计算复杂度:检查导出逻辑中是否存在不必要的计算或重复操作,…...
Python Pandas(3):DataFrame
1 介绍 DataFrame 是 Pandas 中的另一个核心数据结构,类似于一个二维的表格或数据库中的数据表。它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型值)。DataFrame 既有行索引也有列索引,它可以被看做由…...
Mac电脑上好用的压缩软件
在Mac电脑上,有许多优秀的压缩软件可供选择,这些软件不仅支持多种压缩格式,还提供了便捷的操作体验和强大的功能。以下是几款被广泛推荐的压缩软件: BetterZip 功能特点:BetterZip 是一款功能强大的压缩和解压缩工具&a…...
BUUCTF_XSS-Lab
xss XSS(Cross - Site Scripting)即跨站脚本攻击,是一种常见的 Web 安全漏洞。攻击者通过在目标网站注入恶意脚本(通常是 JavaScript),当其他用户访问该网站时,这些恶意脚本会在用户的浏览器中执…...
新能源算力战争:为什么AI大模型需要绿色数据中心?
新能源算力战争:为什么AI大模型需要绿色数据中心? 近年来,人工智能(AI)大模型的爆发式增长正在重塑全球科技产业的格局。以GPT-4、Gemini、Llama等为代表的千亿参数级模型,不仅需要海量数据训练,更依赖庞大的算力支撑。然而,这种算力的背后隐藏着一个日益严峻的挑战——…...
ASP.NET Core筛选器Filter
目录 什么是Filter? Exception Filter 实现 注意 ActionFilter 注意 案例:自动启用事务的筛选器 事务的使用 TransactionScopeFilter的使用 什么是Filter? 切面编程机制,在ASP.NET Core特定的位置执行我们自定义的代码。…...
systemverilog的program和module的区别
1. 设计目的 module 硬件建模:用于描述数字电路的结构和行为(如组合逻辑、时序逻辑、连线等)。 层次化设计:支持模块化设计,可嵌套其他模块或接口(interface)。 仿真周期内持续存在࿱…...
Redis性能优化
1.是否使用复杂度过高的命令 首先,第一步,你需要去查看一下 Redis 的慢日志(slowlog)。 Redis 提供了慢日志命令的统计功能,它记录了有哪些命令在执行时耗时比较久。 查看 Redis 慢日志之前,你需要设置慢…...
go gin配置air
一、依赖下载 安装最新,且在你工作区下进行安装,我的是D:/GO是我的工作区,所有项目都在目录下的src, go install github.com/air-verse/airlatest 如果出现类似报错: 将图中第三行 github.com/air-verse/air 替换最…...
【C语言系列】深入理解指针(5)
深入理解指针(5) 一、sizeof和strlen的对比1.1sizeof1.2strlen1.3sizeof和strlen的对比 二、数组和指针笔试题解析2.1 一维数组2.2 字符数组2.2.1代码1:2.2.2代码2:2.2.3代码3:2.2.4代码4:2.2.5代码5&#…...
JVM图文入门
往期推荐 【已解决】redisCache注解失效,没写cacheConfig_com.howbuy.cachemanagement.client.redisclient#incr-CSDN博客 【已解决】OSS配置问题_keyuewenhua.oss-cn-beijing.aliyuncs-CSDN博客 【排坑】云服务器docker部署前后端分离项目域名解析OSS-CSDN博客 微服…...
