您现在的位置是:首页 > 经典句子

本地运行Mixtral-8x7B,我滴AI我做猪

作者:康由时间:2024-05-01 13:29:59分类:经典句子

简介  文章浏览阅读1k次,点赞17次,收藏19次。2023年12月11日Mistral 发布了一个激动人心的大语言模型: Mixtral 8x7b。Mixtral 的架构与 Mistral 7B 类似,但有一点不同: 它实际上内含了 8 个“专家”模型,这要归功于一

点击全文阅读

最初是参考了大佬的介绍自己跑了一下:https://juejin.cn/post/7319541634122907699。然后发现自己实际运行时有些小问题和可以补充的。

Mixtral-8x7B介绍

2023年12月11日Mistral 发布了一个激动人心的大语言模型: Mixtral 8x7b。Mixtral 的架构与 Mistral 7B 类似,但有一点不同: 它实际上内含了 8 个“专家”模型,这要归功于一种称为“混合专家”(Mixture of Experts,MoE) 的技术。
本次发布的 Mixtral 模型的主要特点:

模型包括基础版和指令版支持高达 32k 词元的上下文性能优于 Llama 2 70B,在大多数基准测试上表现不逊于 GPT3.5支持英语、法语、德语、西班牙语及意大利语(是的,官方没有声明支持中文,实测发现可以用中文提问,也可以要求他中文回答,但是回答的效果较差,经常会说到一半变成英文。但是这个问题可以通过参数-p baichuan-2运行baichuan-2模块进行中文对话,下面会介绍)擅长编码,HumanEval 得分为 40.2%可商用,Apache 2.0 许可证
借助 WasmEdge,你可以在任意设备上创建并运行该 LLM 的跨平台应用程序,包括自己的笔记本电脑、边缘设备和服务器。
接下来我会介绍如何在你的mac电脑或服务器上运行Mixtral 8x7b。

前期准备

一台电脑科学上网工具

安装软件

步骤1:通过以下命令行安装 WasmEdge。

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

如果你没有科学上网工具可以通过

https://raw.gitmirror.com/WasmEdge/WasmEdge/master/utils/install.sh

下载install.sh,并将下载的install.sh里的域名https://raw.githubusercontent.com一并修改为https://raw.gitmirror.com:
在这里插入图片描述
然后运行本地的install.sh进行安装

步骤2: 下载 Mixtral-8x7B-Instrcut-v0.1 GGUF 文件。

由于Q5_K_M模型的大小为32.2 GB,下载可能需要一定时间。

curl -LO https://huggingface.co/TheBloke/Mixtral-8x7B-Instruct-v0.1-GGUF/resolve/main/mixtral-8x7b-instruct-v0.1.Q5_K_M.gguf

当然你可以根据自己对生成质量和空间大小的要求选择合适的模型

https://huggingface.co/TheBloke/Mixtral-8x7B-Instruct-v0.1-GGUF#provided-files

在这里插入图片描述
Q5_K_M是大小与质量均衡的版本,被标记为推荐,所以我们下载这个。如果你无法下载模型可以联系我发你一份。

步骤3:下载用于聊天应用的跨平台可移植 Wasm 文件:llama-chat。

该应用程序让你能用命令行与模型聊天

curl -LO https://github.com/second-state/llama-utils/raw/main/chat/llama-chat.wasm

然后就可以通过输入以下命令在终端与模型进行聊天。

wasmedge --dir .:. --nn-preload default:GGML:AUTO:mixtral-8x7b-instruct-v0.1.Q5_K_M.gguf llama-chat.wasm -p baichuan-2

可移植 Wasm 应用程序会自动利用设备上的硬件加速器(如 GPU)。-p baichuan-2代表运行中文模型
然后就可以在终端里用命令行进行交流:
在这里插入图片描述
至于速度嘛,要看你的显卡了,mac跑了快一个小时🤡

什么?命令行太丑了?

llama也提供了页面和api-server

步骤1:下载llama-api-server

curl -LO https://github.com/second-state/llama-utils/raw/main/api-server/llama-api-server.wasm

步骤2:下载前端代码

curl -LO https://github.com/second-state/chatbot-ui/releases/download/v0.1.0/chatbot-ui.tar.gztar xzf chatbot-ui.tar.gzrm chatbot-ui.tar.gz

注意,这几个文件要在同一文件夹下
接下来,用以下命令行启动模型的 API 服务器。 然后,打开浏览器访问 http://localhost:8080 就能开始聊天了!

wasmedge --dir .:. --nn-preload default:GGML:AUTO:mixtral-8x7b-instruct-v0.1.Q5_0.gguf llama-api-server

llama的参数可以参考github文档
例如:-p参数可选择运行的模块
以下是对几个主要模块的简要介绍:

llama-2-chat:这是一个经过 fine-tuning 的 OpenAI GPT-3 模型,专门用于聊天交互。它被设计成能够进行自然语言文本的生成和回答问题。

codellama-instruct:这是一个基于 OpenAI GPT-3 的模型,旨在为程序员提供编程指导和建议。它可以回答关于编程问题、代码片段等方面的提问,并给出相应的建议和解决方案。

codellama-super-instruct:这个模型是 codellama-instruct 的增强版本,提供更强大和全面的编程指导。它可以更深入地理解编程上下文,并给出更详细和准确的建议。

mistral-instruct-v0.1 和 mistral-instruct:这两个模型都是基于 OpenAI GPT-3 的,旨在生成自然语言文本。它们可以用于各种任务,包括问答、翻译、摘要等。

mistrallite:这是一个轻量级的 Mistral Instruct 模型,专注于生成自然语言文本。它可以在资源受限的环境中运行,提供较快的响应速度。

openchat:这是一个用于聊天交互的模型,旨在与用户进行自然语言对话。它可以回答一般性问题、提供信息和娱乐等。

baichuan-2:这是一个面向中文的模型,用于生成自然语言文本。它可以用于问答、翻译、摘要等任务。

这些模型都是基于 OpenAI GPT-3 系列模型的变体,用于不同的自然语言处理任务和应用场景。它们的设计目标和特点可能有所不同,但都可以用于生成自然语言文本和回答相关问题。

点击全文阅读

郑重声明:

本站所有活动均为互联网所得,如有侵权请联系本站删除处理

我来说两句