准备工作
如果通过GPU来运行,一般办公电脑的显卡可能达不到所需的要求,所以,可以通过CPU+内存的方式花最低的代价来部署一套本地运行AI的模型。
1、首先下载CPU-Z,运行看一下电脑当前的指令集是否包含AVX512,非AVX512指令部署完应该也能运行,但可能运行速度会非常慢。(我的电脑是Thinkpad T14 gen2 ,内存32G,系统是Windows 10)
2、下载llama.cpp。
llama.cpp AVX512指令 百度云盘下载地址
提前码:an5m
如果电脑不支持AVX512指令,可以通过llama.app下载其他指令集,全部署完尝试一下能不能用。
3、下载对应的模型。
以下提供两种模型,可任意选或都下载去运行对比一下(个人推荐Vicuna)。
1)、vicuna_13b模型。
Vicuna号称"小羊驼",Vicuna是基于ShareGPT的7万条对话数据对LLaMA微调的模型,13b模型的效果据说可达到ChatGPT3.5 92%的效果,部分问答的评分甚至超过了ChatGPT3.5。
vicuna_13b百度云盘下载地址
提前码:0n9g
里面vicuna-13B-1.1-GPTQ-4bit-32g.GGML.bin和vicuna-13B-1.1-GPTQ-4bit-128g.GGML.bin
下载哪个都可以,我用的是vicuna-13B-1.1-GPTQ-4bit-128g.GGML.bin
2)、alpaca_13b模型
Alpaca是斯坦福大学基于LLaMA模型指令微调的模型,13b模型的效果可达到近似ChatGPT3.5的效果(个人感觉比Vicuna稍微差了一点) 。
针对alpaca_13b,国内提供了对应中文扩展合并模型。
alpaca_13b百度云盘中文扩展合并模型下载地址
提前码:rru0
部署步骤
新建一个文件夹,我这里的文件夹叫“ai”,并解压下载好的llama.cpp包
解压后的文件如下图。
下面提供这两次模型的具体部署方式,可任选一种,或两种都部署。
1)vicuna_13b模型部署
将下载好的vicuna-13B-1.1-GPTQ-4bit-32g.GGML.bin或vicuna-13B-1.1-GPTQ-4bit-128g.GGML.bin文件考入到刚才新建的文件夹“ai”内。
新建一个扩展名为.bat的文件(直接建个记事本,将扩展名改一下就行)。
右键编辑新建的.bat文件输入下图的文本,保存运行即可。
"main.exe" --ctx_size 2048 --temp 0.7 --top_k 40 --top_p 0.5 --repeat_last_n 256 --batch_size 1024 --repeat_penalty 1.17647 --model "vicuna-13B-1.1-GPTQ-4bit-128g.GGML.bin" --n_predict 2048 --color --interactive --reverse-prompt "User:" --prompt "Text transcript of a never ending dialog, where User interacts with an AI assistant named ChatLLaMa. ChatLLaMa is helpful, kind, honest, friendly, good at writing and never fails to answer User's requests immediately and with details and precision. There are no annotations like (30 seconds passed...) or (to himself), just what User and ChatLLaMa say aloud to each other. The dialog lasts for years, the entirety of it is shared below. It's 10000 pages long. The transcript only includes text, it does not include markup like HTML and Markdown."
运行效果如下图
Vicuna虽然没有专门针对中文做过微调,但对中文的支持还是很不错的,偶尔中文的问答还是有些不完美的地方,建议复杂的问题用英文来问答。
2)alpaca_13b模型部署
将下载好的ggml-model-f16.bin文件考入到刚才新建的文件夹“ai”内。
新建一个扩展名为.bat的文件(直接建个记事本,将扩展名改一下就行)。
右键编辑新建的.bat文件输入下图的文本,保存运行即可。
"main.exe" --ctx_size 2048 --temp 0.7 --top_k 40 --top_p 0.5 --repeat_last_n 256 --batch_size 1024 --repeat_penalty 1.17647 --model "ggml-model-f16.bin" --n_predict 2048 --color --interactive --reverse-prompt "User:" --prompt "Text transcript of a never ending dialog, where User interacts with an AI assistant named ChatLLaMa. ChatLLaMa is helpful, kind, honest, friendly, good at writing and never fails to answer User's requests immediately and with details and precision. There are no annotations like (30 seconds passed...) or (to himself), just what User and ChatLLaMa say aloud to each other. The dialog lasts for years, the entirety of it is shared below. It's 10000 pages long. The transcript only includes text, it does not include markup like HTML and Markdown."
运行效果如下图
Alpaca 13b微调的模型文件较大,而且运行很占内存,一些问题回答的不是很完美。
注意:Vicuna和Alpaca都是基于LLaMa的,不能用于商用。