Windows环境下部署本地大模型教程

news2024/9/19 8:51:26

自ChatGPT在2022年爆发式出圈以来,大模型对人类世界产生了重大影响,无论是在生产、工作、写作方面还是自动驾驶领域,大模型发挥了非常重要的作用。

现各大厂,无论是国内大厂还是国外大厂,都纷纷推出了自己的对话大模型供人们免费或付费使用。与此同时,开源大模型的关注度也越来越高。

为什么现在已经有很多可以在线使用的大模型了,我还要在本地部署使用大模型?很简单,我的电脑上有一块还不错的显卡,但是我玩游戏又不多,不想让这份空闲的资源浪费掉,向着“物尽其用”的目标努力,节约资源(doge)。

如果你也和我有一样的想法,或者你是一个喜欢“折腾”的人,又或者你真的有部署本地大模型的需求,都可以跟随这篇教程操作。

没有特殊需求,只想让大模型跑起来成为你的生产力的话,这份教程对大多数普通人来说足够了。

目录

一、下载ollama

二、下载大模型的GGUF文件

三、配置Modelfile文件

四、启动大模型


一、下载ollama

如果可以突破网络限制,那可以直接访问ollama的官网,下载Windows版本。如果无法突破网络限制,我把安装包上传到了我的我网盘,ollamasetup.zip ,提取码8vp0,自行下载。

下载之后打开ollamasetup.exe,点击“install”或者“安装”,静待安装完成即可。

二、下载大模型的GGUF文件

无网络限制那就访问huggingface的官方网站去下载。有网络限制的话,可以访问huggingface的镜像网站,可以访问hf-mirrors,网址HF-Mirror。

这里以安装阿里巴巴通义大模型为例进行操作。

不推荐使用微调成中文的大模型,如llama3中文版,体验很差。在此之前我在电脑上部署了llama3中文版8B的大模型,我不知道是出于什么原因,跑起来之后它给的答案真的很人工智障,相比之下7B的通义大模型表现很好。是和训练时用的语言有关吗?是不是说微调解决不了根本问题,只有确保训练时使用的是母语才能表现很出色?这个问题有待探索......

进入网站后,选择“models”:

接着搜索“qwen”:

对于个人电脑来说,7B就是最好的选择了,选择“Qwen/Qwen2-7B-Instruct-GGUF”。

如果你觉得这个过程太繁琐,可以直接点击这个链接(Qwen/Qwen2-7B-Instruct-GGUF at main (hf-mirror.com))进入列表:

 

博主推荐使用q5_k_m版本,如果你是小白,无脑选q5_k_m就对了。当然也可以根据需求自行选择。

依次根据图中步骤下载就行了。

三、配置Modelfile文件

到这里,确保ollma服务在运行,系统托盘区有此图标,并且在powershell或者命令提示符中输入ollama出现以下界面说明安装成功并且服务正常运行中:

在当前用户目录中新建一个“Modelfile.txt”文件,在文件中输入以下字符串:

FROM 文件所在目录\qwen2-7b-instruct-q5_k_m.gguf

比如我下载好的gguf文件存放在F盘BigModels文件夹,那我就输入“FROM F:\BigModels\qwen2-7b-instruct-q5_k_m.gguf”然后保存即可。

一般来说,当前用户目录在“C:\Users\用户名”下,Modelfile.txt文件保存到这里。

现在打开powershell或者命令提示符,输入

ollama create qwen-2 -f Modelfile.txt

这里的“qwen-2”是我为本地大模型的命名,可以根据需要自行修改。

等待transferring的过程......

出现success,如下面的界面,说明大模型部署成功!

四、启动大模型

安装完成后,在powershell或者命令提示符中输入

ollama run 你自定义的大模型名称

 比如我命的名为qwen-2,那我就输入ollama run qwen-2就可以启动大模型了:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1951918.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

服务暴露 traefik

一。traefik 部署 前置资源 还是那个网站,这里复制 entryPoints,进入traefik的大门 可选在哪台机器上部署 traefik 部署 用 Daemonset 的方式是为了,加机器到集群后,能自动部署traefik 到目标机器 注意 8084端口 必须加…

【JVM基础06】——组成-直接内存详解

目录 1- 引言:直接内存概述1-1 直接内存是什么?直接内存的定义(What)1-2 为什么用直接内存?Java程序对直接内存的使用 (Why) 2- ⭐核心:详解直接内存(How)2-1 文件拷贝案例介绍对比常规 IO(BIO) 和 NIO常规 IO 的操作流程NIO 的操…

C++ - char*、const char*、char[]、string

const char* const char* 用来定义字符串常量。 char[ ] char型的字符数组是一种定长的数组,存储指定长度的字符序列,数组中的每个元素都是一个char类型的变量,如: char arr[] {h, a, l, l, o, \0}; char c arr[0]; // 访问…

Spring Boot的Web开发

目录 Spring Boot的Web开发 1.静态资源映射规则 第一种静态资源映射规则 2.enjoy模板引擎 3.springMVC 3.1请求处理 RequestMapping DeleteMapping 删除 PutMapping 修改 GetMapping 查询 PostMapping 新增 3.2参数绑定 一.支持数据类型: 3.3常用注解 一.Request…

[Vulnhub] Raven2 PHPMailer-RCE+MSQP:Mysql权限提升

信息收集 IP AddressOpening Ports192.168.101.160TCP:22,80,111,46606 $ nmap -p- 192.168.101.160 --min-rate 1000 -sC -sV PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 6.7p1 Debian 5deb8u4 (protocol 2.0) | ssh-hostkey: | 1024 26:81:c1:f…

拉提查合创5步玩转git工具协作代码开发

1 工具使用场景 开发团队使用git版本管理工具,进行协作代码开发过程中,最常用的场景为: (1)拉取代码 将git远端仓库最新代码拉取到本地。 (2)提交代码 将本地新增修改的代码提交至git远端仓库中…

Spring Cloud微服务项目统一封装数据响应体

在微服务架构下,处理服务之间的通信和数据一致性是一个重要的挑战。为了提高开发效率、保证数据的一致性及简化前端开发,统一封装数据响应体是一种非常有效的实践。本文博主将介绍如何在 Spring Cloud 微服务项目中统一封装数据响应体,并分享…

【优秀python算法毕设】基于python时间序列模型分析气温变化趋势的设计与实现

1 绪论 1.1 研究背景与意义 在气候变化日益受到全球关注的背景下,天气气温的变化已经对人们的生活各方面都产生了影响,人们在外出时大多都会在手机上看看天气如何,根据天气的变化来决定衣物的穿着和出行的安排。[1]如今手机能提供的信息已经…

C++基础知识:函数重载相关注意事项:1.引用作为重载条件,2.2.函数重载遇见函数默认参数。

1.引用作为重载条件 #include<iostream>using namespace std;//1.引用作为重载的条件 //int 和 const int 类型不同&#xff0c;所以可以作用重载条件 void fn(int &a) //int &a10;不合法 //10放在了常量区&#xff0c;而引用要么在栈区&#xff0c;要么在堆区{…

mysql的MHA以及故障模拟

目录 MHA概念 MHA的组件 MHA的特点 实验&#xff1a;搭建完成MHA的架构 实验&#xff1a;主备切换 实验结果 实验&#xff1a;故障切换 实验&#xff1a;故障恢复 MHA概念 MHA&#xff1a;高可用模式下的故障切换&#xff0c;基于主从复制。它解决的是单点故障和主从复…

Ruby、Python、Java 开发者必备:Codigger之软件项目体检

在编程的广阔天地里&#xff0c;Ruby、Python 和 Java 开发者们各自凭借着独特的语言特性&#xff0c;构建着精彩纷呈的应用世界。然而&#xff0c;无论使用哪种语言&#xff0c;确保项目的高质量始终是至关重要的目标。而 Codigger 项目体检则成为了实现这一目标的得力助手&am…

【JS】事件循环

事件循环&#xff08;Event Loop&#xff09; 什么是事件循环 事件循环就是一个执行任务队列的机制 为什么会出现事件循环 为了避免单线程出现阻塞,采用了异步的形式执行任务。为了解决异步任务的问题,采用了事件循环机制。 事件循环的流程 JavaScript是一门单线程的语言…

Chapter 17 Python文件操作(下)

欢迎大家订阅【Python从入门到精通】专栏&#xff0c;一起探索Python的无限可能&#xff01; 文章目录 前言一、文件的写入二、文件的追加 前言 Python作为一种高效且易于学习的编程语言&#xff0c;提供了一系列强大的文件操作功能&#xff0c;使得用户能够轻松地实现文件的读…

深度解析Linux-C——函数和内存管理

目录 函数指针&#xff1a; 指针函数&#xff1a; 参数为指针的函数&#xff1a; 参数为数组的函数&#xff1a; C语言内存管理 stdlib.h头文件常用函数介绍 1、局部变量 2、全局变量 3、 堆空间变量 4、静态变量 5、常量 函数指针&#xff1a; 指向函数的指针&#…

针对datax-web 中Swagger UI接口未授权访问

application.yml 添加以下配置 实现访问doc.html 以及/v2/api-docs 接口时需要进行简单的校验 swagger:basic:enable: trueusername: adminpassword: 12345 配置重启后再进行相关访问则需要输入用户名和密码

Radon(拉当) 变换:超详细讲解(附MATLAB,Python 代码)

Radon 变换 Radon 变换是数学上用于函数或图像的一种积分变换&#xff0c;广泛应用于图像处理领域&#xff0c;尤其是在计算机断层成像 (CT) 中。本文档将详细介绍 Radon 变换的数学含义及其在图像处理中的应用。 数学定义 Radon 变换的数学定义是将二维函数 f ( x , y ) f…

Spark实时(二):StructuredStreaming编程模型

文章目录 StructuredStreaming编程模型 一、基础语义 二、事件时间和延迟数据 三、​​​​​​​容错语义 StructuredStreaming编程模型 一、基础语义 Structured Streaming处理实时数据思想是将实时数据看成一张没有边界的表,数据源源不断的追加到这张表中,这可以让我…

零基础STM32单片机编程入门(二十二) ESP8266 WIFI模块实战含源码

文章目录 一.概要二.ESP8266 WIFI模块主要性能参数三.ESP8266 WIFI模块芯片内部框图四.ESP8266 WIFI模块原理图五.ESP8266 WIFI模块与单片机通讯方法1.硬件连接2.ESP8266模块AT指令介绍 六.STM32单片机与ESP8266WIFI模块通讯实验1.硬件准备2.软件工程3.软件主要代码4.实验效果 …

Super 4PCS配准算法

Nicolas Mellado&#xff0c;CNRS&#xff08;Centre national de la recherche scientifique&#xff0c;法国国家科学研究中心&#xff09;的研究员&#xff0c;在IRIT&#xff08;Institut de Recherche en Informatique de Toulouse&#xff0c;图卢兹计算机科学研究所&…

LeetCode Hot100 搜索二维矩阵

给你一个满足下述两条属性的 m x n 整数矩阵&#xff1a; 每行中的整数从左到右按非严格递增顺序排列。每行的第一个整数大于前一行的最后一个整数。 给你一个整数 target &#xff0c;如果 target 在矩阵中&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。…