文章目录
- 前言
- 原理
- 效果
- 实现
前言
我想也许很多人都想有一个本地的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更多参数的模型,只是比较考验个人电脑配置