在个人电脑上,本地部署llama2-7b大模型

2024-04-15 07:52

本文主要是介绍在个人电脑上,本地部署llama2-7b大模型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 前言
    • 原理
    • 效果
    • 实现

前言

我想也许很多人都想有一个本地的ai大语言模型,当然如果能够摆脱比如openai,goole,baidu设定的语言规则,可以打破交流界限,自由交谈隐私之类的,突破规则,同时因为部署在本地也不担心被其他人知道,那最好不过了
那究竟有没有这样的模型呢?
llama2-7b模型就可以
同时你也可以为他设定角色,
这是一个支持可进行身份定义的本地语言模型,而非固定角色

原理

这个模型已经高度模块化了,
只需要下载两个文件即可
https://github.com/ggerganov/llama.cpp/releases 这个文件用于启动大模型,需要根据电脑配置选择合适的,不要盲目下载,后面有介绍
https://www.modelscope.cn/models/Xorbits/Llama-2-7b-Chat-GGUF/files 这个文件是模型
调用命令为

main.exe -m llama-2-7b-chat.Q4_K_M.gguf -c 512 -b 1024 -n 256 --keep 48 --repeat_penalty 1.0 --color -i -r "User:" -f chat-with-bob.txt

下面是具体文件使用步骤和效果

效果

黄色的字是让他扮演的角色,下面则是问答,黄色的字是可编辑的预定义文本,后面会解释
在这里插入图片描述

实现

https://www.modelscope.cn/models/Xorbits/Llama-2-7b-Chat-GGUF/summary 这个文件是模型
从这里下载模型
文件全部下载,注意后缀为gguf的是语言模型文件,GGML格式的不再受到支持,如果你发现了这个文件不用管它,没发现就算了
在这里插入图片描述
https://github.com/ggerganov/llama.cpp/releases 这个文件用于启动大模型
因为我的电脑显卡配置是3060ti,我已经安装了11.7的cuda,所以这里我选择了这个文件
cuda版本如何看
cmd输入

nvcc --version

需要根据你电脑cuda实际的版本选择,
cuda如何安装配置,百度上一搜大堆
在这里插入图片描述

假设你文件都已经安装好了,那么你的文件目录格式应该和我的差不多,将它们放到一起大概如下
在这里插入图片描述
chat-with-bob.txt这个文件是用来给语言模型设定身份的

.\llama-b2667-bin-win-cuda-cu11.7.1-x64\main.exe -m llama-2-7b-chat.Q4_K_M.gguf -c 512 -b 1024 -n 256 --keep 48 --repeat_penalty 1.0 --color -i -r "User:" -f chat-with-bob.txt

那么就是以设定的身份来启动这个模型,他就会根据你设定的身份应答
比如我设定的是:
chat-with-bob.txt

A record of a conversation between a user and an assistant named Bob. Bob is a good assistant and very helpful
User: Hello, Bob.
Bob: Hello.
User:

如果要实现更好的效果,可以尝试llama更多参数的模型,只是比较考验个人电脑配置

这篇关于在个人电脑上,本地部署llama2-7b大模型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/905254

相关文章

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

Linux五种IO模型的使用解读

《Linux五种IO模型的使用解读》文章系统解析了Linux的五种IO模型(阻塞、非阻塞、IO复用、信号驱动、异步),重点区分同步与异步IO的本质差异,强调同步由用户发起,异步由内核触发,通过对比各模... 目录1.IO模型简介2.五种IO模型2.1 IO模型分析方法2.2 阻塞IO2.3 非阻塞IO2.4

linux部署NFS和autofs自动挂载实现过程

《linux部署NFS和autofs自动挂载实现过程》文章介绍了NFS(网络文件系统)和Autofs的原理与配置,NFS通过RPC实现跨系统文件共享,需配置/etc/exports和nfs.conf,... 目录(一)NFS1. 什么是NFS2.NFS守护进程3.RPC服务4. 原理5. 部署5.1安装NF

Git打标签从本地创建到远端推送的详细流程

《Git打标签从本地创建到远端推送的详细流程》在软件开发中,Git标签(Tag)是为发布版本、标记里程碑量身定制的“快照锚点”,它能永久记录项目历史中的关键节点,然而,仅创建本地标签往往不够,如何将其... 目录一、标签的两种“形态”二、本地创建与查看1. 打附注标http://www.chinasem.cn

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

使用Spring Cache本地缓存示例代码

《使用SpringCache本地缓存示例代码》缓存是提高应用程序性能的重要手段,通过将频繁访问的数据存储在内存中,可以减少数据库访问次数,从而加速数据读取,:本文主要介绍使用SpringCac... 目录一、Spring Cache简介核心特点:二、基础配置1. 添加依赖2. 启用缓存3. 缓存配置方案方案

使用Java读取本地文件并转换为MultipartFile对象的方法

《使用Java读取本地文件并转换为MultipartFile对象的方法》在许多JavaWeb应用中,我们经常会遇到将本地文件上传至服务器或其他系统的需求,在这种场景下,MultipartFile对象非... 目录1. 基本需求2. 自定义 MultipartFile 类3. 实现代码4. 代码解析5. 自定