先看一下效果

本地部署了大语言模型?LLaMA本地稳定部署插图
本地部署了大语言模型?LLaMA本地稳定部署插图1

介绍

 LLaMA(large language Model AI):开源高效的大语言模型。以 GPT-3 为代表的大语言模型 (Large language models, LLMs) 在海量文本集合上训练,展示出了惊人的涌现能力以及零样本迁移和少样本学习能力。

注意,本教程需要使用一些特殊的网络环境,没有的话建议看一下我之前的文章:

VPN的介绍和使用 — 星辰博客星辰博客

安装 Ollama

ollama:这是一个能离线跑本地大模型的工具。从 Ollama 官网下载,运行,点击安装 Ollama 命令行,然后在命令行测试 Ollama 是否已正常运行:

$ ollama -v
ollama version is 0.3.13

下载大语言模型

在安装完Ollama之后,尝试使用Ollama中的模型,发现无法安装。

所以使用中文的大语言模型,我这边是直接下载了8B参数的大模型,选择一个 GGUF 格式的模型,GGUF 格式是 llama.cpp 团队搞的一种模型存储格式,一个模型就是一个文件,方便下载。

https://huggingface.co/shenzhi-wang/Llama3.1-8B-Chinese-Chat/tree/main/gguf

本地部署了大语言模型?LLaMA本地稳定部署插图2

如果你想用别的大模型,在 HuggingFace 的 model 找到 llama3,设置 Languages 为 Chinese,可以看到若干基于 LLaMa3 的中文模型。

本地部署了大语言模型?LLaMA本地稳定部署插图3

点击 Files,可以看到若干 GGUF 文件,其中,q 越大说明模型质量越高,同时文件也更大。

我这边是直接使用了最大16G的模型。

本地部署了大语言模型?LLaMA本地稳定部署插图4

直接下载到了硬盘,电脑实在是不敢装这么大的文件。

导入模型

下载到本地的模型文件不能直接导入到 Ollama,需要编写一个配置文件,随便起个名字,如 config.txt,配置文件内容如下:

FROM "E:\大模型\llama3.1_8b_chinese_chat_f16.gguf"

TEMPLATE """{{- if .System }}
<|im_start|>system {{ .System }}<|im_end|>
{{- end }}
<|im_start|>user
{{ .Prompt }}<|im_end|>
<|im_start|>assistant
"""

SYSTEM """"""

PARAMETER stop <|im_start|>
PARAMETER stop <|im_end|>

第一行要改成下载好的模型的地址,需要修改为实际路径,后面的模板内容是网上复制的,无需改动。

然后,命令行里使用以下命令导入模型:

$ ollama create llama3-cn -f ./config.txt

建议把./config.txt修改为绝对路径。

llama3-cn 是我们给模型起的名字,成功导入后可以用 list 命令查看:

$ ollama list
NAME              ID            SIZE    MODIFIED
llama3-cn:latest  f3fa01629cab  6.6 GB  2 minutes ago

可以下载多个模型,给每个模型写一个配置文件(仅需修改路径),导入时起不同的名字,我们就可以用 Ollama 方便地运行各种模型。

运行模型

使用 Ollama 的 run 命令可以直接运行模型。输入命令 ollama run llama3-cn

出现 >>> 提示符时就可以输入问题与模型交互。输入 /exit 退出。

本地部署了大语言模型?LLaMA本地稳定部署插图5

也可以通过 API 来访问,命令行可以试着输入

curl -X POST http://localhost:11434/api/generate -d "{\"model\": \"llama3-cn\", \"prompt\": \"good morning\"}"

搭建 Web 环境

到了上面一步,本地搭建大语言模型也就成功了,也可以正常使用了。

接下来可以搭建到web环境,公网使用。

在Windows系统下,没办法使用webui,所以直接下载了个最简单的nextchat 客户端

点击 release 里面,点击 show all assets,就可以看到多端的 nextchat 文件了。

本地部署了大语言模型?LLaMA本地稳定部署插图6

安装完成后,进行一下设置,在设置里选择模型服务商,可以看到主流的大模型基本都支持,我们本地部署的 llama3 也是提供了 API 接口的,和 openai 的完全通用,你可以点击文档来查看接口详情,把接口地址改为 http://localhost:11434,然后自定义模型名称改为我们刚才设置的 llama3-cn,保存后,本地就可以完美使用大模型了,没有任何限制,直接就可以使用。

本地部署了大语言模型?LLaMA本地稳定部署插图7
本地部署了大语言模型?LLaMA本地稳定部署插图8

参考资料

10 分钟部署本地大语言模型 - 萌豚 Moechu

本地快速安装运行史上最强开源LLaMa3大模型 - Blogs - 廖雪峰的官方网站

shenzhi-wang/Llama3.1-8B-Chinese-Chat at main

ChatGPTNextWeb/ChatGPT-Next-Web: A cross-platform ChatGPT/Gemini UI (Web / PWA / Linux / Win / MacOS). 一键拥有你自己的跨平台 ChatGPT/Gemini 应用。