在个人电脑上,本地部署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

相关文章

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. 自定

Java实现本地缓存的四种方法实现与对比

《Java实现本地缓存的四种方法实现与对比》本地缓存的优点就是速度非常快,没有网络消耗,本地缓存比如caffine,guavacache这些都是比较常用的,下面我们来看看这四种缓存的具体实现吧... 目录1、HashMap2、Guava Cache3、Caffeine4、Encache本地缓存比如 caff

Linux部署中的文件大小写问题的解决方案

《Linux部署中的文件大小写问题的解决方案》在本地开发环境(Windows/macOS)一切正常,但部署到Linux服务器后出现模块加载错误,核心原因是Linux文件系统严格区分大小写,所以本文给大... 目录问题背景解决方案配置要求问题背景在本地开发环境(Windows/MACOS)一切正常,但部署到

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

MySQL 主从复制部署及验证(示例详解)

《MySQL主从复制部署及验证(示例详解)》本文介绍MySQL主从复制部署步骤及学校管理数据库创建脚本,包含表结构设计、示例数据插入和查询语句,用于验证主从同步功能,感兴趣的朋友一起看看吧... 目录mysql 主从复制部署指南部署步骤1.环境准备2. 主服务器配置3. 创建复制用户4. 获取主服务器状态5

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

如何在Ubuntu 24.04上部署Zabbix 7.0对服务器进行监控

《如何在Ubuntu24.04上部署Zabbix7.0对服务器进行监控》在Ubuntu24.04上部署Zabbix7.0监控阿里云ECS服务器,需配置MariaDB数据库、开放10050/1005... 目录软硬件信息部署步骤步骤 1:安装并配置mariadb步骤 2:安装Zabbix 7.0 Server

一文详解Git中分支本地和远程删除的方法

《一文详解Git中分支本地和远程删除的方法》在使用Git进行版本控制的过程中,我们会创建多个分支来进行不同功能的开发,这就容易涉及到如何正确地删除本地分支和远程分支,下面我们就来看看相关的实现方法吧... 目录技术背景实现步骤删除本地分支删除远程www.chinasem.cn分支同步删除信息到其他机器示例步骤