Llama-3-8B 中文版来了,在自己设备上运行试试看吧

文摘   科技   2024-04-24 18:21   新加坡  

Llama 3-8B Chinese[1]是在 Meta 最新发布的 Llama-3-8b 模型基础上进行微调的中文版。该模型采用 firefly-train-1.1M、moss-003-sft-data、school_math_0.25M、ruozhiba数据集,使模型能够使用中文回答用户的提问。

在本文中,我们将使用 LlamaEdge 本地运行 Llama-3-8B 中文版模型。使用 LlamaEdge 运行大模型,只需一个 Wasm 文件,无需安装复杂的 Python 包或 C++ 工具链!点击这里[2],了解我们为什么选择 Rust + Wasm。

在你的设备上运行 Llama-3-8B 中文版

第一步:用下面的命令行安装 WasmEdge[3]

curl -sSf https://raw.githubusercontent.com/WasmEdge/WasmEdge/master/utils/install.sh | bash -s -- --plugin wasi_nn-ggml

第二步:下载 Llama-3-8B-Chinese-Chat 模型 GGUF[4] 文件。模型有5.73 GB,所以下载可能需要一定时间

curl -LO https://huggingface.co/zhouzr/Llama3-8B-Chinese-Chat-GGUF/resolve/main/Llama3-8B-Chinese-Chat.q4_k_m.GGUF

第三步:下载一个跨平台的可移植 Wasm 文件,用于聊天应用。该应用让你能在命令行中与模型聊天。该应用的 Rust 源代码在这里[5]

curl -LO https://github.com/LlamaEdge/LlamaEdge/releases/latest/download/llama-chat.wasm

就这样。可以通过输入以下命令在终端与模型聊天。这个可移植的Wasm应用会自动利用设备上的硬件加速器(例如GPU)。

wasmedge --dir .:. --nn-preload default:GGML:AUTO:Llama3-8B-Chinese-Chat.q4_k_m.GGUF.gguf llama-chat.wasm -p llama-3-chat 

为 Llama-3-8B 中文版创建一个 API server

我们还提供了一个兼容 OpenAI API 的服务。这使得 Llama-3-8B-Chinese 能够与不同的开发框架和工具无缝集成,比如 flows.network[6], LangChain and LlamaIndex等等,提供更广泛的应用可能。大家也可以参考其代码自己写自己的API服务器或者其它大模型应用。

想要启动 API 服务,请按以下步骤操作:

下载这个 API 服务器应用。它是一个跨平台的可移植 Wasm 应用,可以在各种 CPU 和 GPU 设备上运行。

curl -LO https://github.com/LlamaEdge/LlamaEdge/releases/latest/download/llama-api-server.wasm

然后,下载聊天机器人 Web UI,从而通过聊天机器人 UI 与模型进行交互。

curl -LO https://github.com/LlamaEdge/chatbot-ui/releases/latest/download/chatbot-ui.tar.gz
tar xzf chatbot-ui.tar.gz
rm chatbot-ui.tar.gz

接下来,使用以下命令行启动模型的 API 服务器。然后,打开浏览器访问 http://localhost:8080 开始聊天!

wasmedge --dir .:. --nn-preload default:GGML:AUTO:Llama3-8B-Chinese-Chat.q4_k_m.GGUF llama-api-server.wasm -p llama-3-chat -m Llama-3-8B-Chinese --log-all

另外打开一个终端窗口, 可以使用 curl 与 API 服务器进行交互。


curl -X POST http://localhost:8080/v1/chat/completions \
  -H 'accept:application/json' \
  -H 'Content-Type: application/json' \
  -d '{"messages":[{"role":"system", "content": "You are a sentient, superintelligent artificial general intelligence, here to teach and assist me."}, {"role":"user", "content": "你是谁"}], "model":"Llama-3-8B-Chinese"}'

就是这样啦。WasmEdge 是运行 LLM 应用最简单、最快、最安全的方式[7]。试试看吧!

参考资料
[1]

Llama 3-8B Chinese: https://huggingface.co/shenzhi-wang/Llama3-8B-Chinese-Chat

[2]

这里: https://www.secondstate.io/articles/fast-llm-inference/

[3]

WasmEdge: https://github.com/WasmEdge/WasmEdge

[4]

Llama-3-8B-Chinese-Chat 模型 GGUF: https://huggingface.co/zhouzr/Llama3-8B-Chinese-Chat-GGUF

[5]

这里: https://github.com/LlamaEdge/LlamaEdge/tree/main/chat

[6]

flows.network: http://flows.network/

[7]

运行 LLM 应用最简单、最快、最安全的方式: https://www.secondstate.io/articles/fast-llm-inference/


Second State
Rust 函数即服务
 最新文章