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]。试试看吧!
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/