学习如何在Ollama上运行Qwen2:7B模型

云的事情不好说 2024-07-22 01:22:27

本文学习如何在 Ollama 上运行 Qwen2:7B 大模型。

一、什么是 Qwen2-7B?

Qwen2 是最新的大语言模型系列之一,提供从 5 亿到 720 亿参数的基础模型和指令调整版本,包括一个专家混合模型(Mixture-of-Experts model)。该模型最好的地方是它在 Hugging Face 上是开源的。

与 Qwen1.5 等其他开源模型相比,Qwen2 在包括语言理解、生成、多语言能力、编码、数学和推理在内的各种基准测试中普遍表现更佳。Qwen2 系列基于 Transformer 架构,具有 SwiGLU 激活、注意力 QKV 偏置、分组查询注意力等增强功能,以及一个适用于多种语言和代码的改进型分词器(tokenizer)。

此外,Qwen2-72B 据说在所有测试的基准测试中都以较大优势超过了 Meta 的 Llama3-70B。

Qwen2-72B 在不同领域的各种基准测试中进行了全面评估,如图下所示。该模型实现了增强能力和与人类价值观的一致性的平衡。此外,该模型在所有基准测试中都显著优于 Qwen1.5-72B-Chat,并与 Llama-3-70B-Instruct 相比表现出竞争力。即使是较小的 Qwen2 模型也超过了类似或更大尺寸的最先进模型。Qwen2-7B-Instruct 在基准测试中保持优势,特别是在编码(coding)和与中文相关的指标上表现突出。

二、可用模型

Qwen2 训练于包含 29 种语言的数据集,包括英语和中文。它有五种参数大小:0.5B、1.5B、7B、57B 和 72B。7B 和 72B 模型的上下文长度已扩展到 128k Token。

Qwen2 系列包括五种不同大小的基础和指令调整模型:

三、Ollama 简介

接下来展示使用 Ollama 运行 Qwen2 的最简单方法。Ollama 是一个开源项目,提供了一个用户友好的平台,用于在个人计算机上执行大语言模型。

Ollama 提供了对各种预训练模型的访问,提供了跨不同操作系统的轻松安装和设置,并公开了一个本地 API,以实现与应用程序和工作流程的无缝集成。用户可以自定义和微调 LLMs,通过硬件加速优化性能,并从交互式用户界面中获益,以实现直观的交互。

Ollama的下载安装比较简单,具体可以查阅官网。

~ % ollamaUsage: ollama [flags] ollama [command]Available Commands: serve Start ollama create Create a model from a Modelfile show Show information for a model run Run a model pull Pull a model from a registry push Push a model to a registry list List models ps List running models cp Copy a model rm Remove a model help Help about any commandFlags: -h, --help help for ollama -v, --version Show version informationUse "ollama [command] --help" for more information about a command.~ % ollama -vollama version is 0.2.5

四、运行Qwen2 模型

可以在 ollama 官网查询到qwen2模型信息:https://ollama.com/library/qwen2

输入以下命令并按回车以运行模型:

ollama run qwen2:7b

~ % ollama run qwen2:7b

pulling manifest

pulling 43f7a214e532... 100% ▕████████████████▏ 4.4 GB

pulling 62fbfd9ed093... 100% ▕████████████████▏ 182 B

pulling c156170b718e... 100% ▕████████████████▏ 11 KB

pulling f02dd72bb242... 100% ▕████████████████▏ 59 B

pulling 648f809ced2b... 100% ▕████████████████▏ 485 B

verifying sha256 digest

writing manifest

removing any unused layers

success

如果下载失败,可以重试几次。

注意:如果出现错误:无法连接到 ollama 应用,它是否在运行?尝试运行以下代码,这将帮助启动 ollama 服务,并在另一个终端中再次尝试该命令。

ollama serve

或者尝试通过运行以下命令手动启用 systemctl 服务。

sudo systemctl enable ollama

sudo systemctl start ollama

现在,我们可以运行模型进行推理。

请随时尝试其他模型版本,但 7B 是最新版本,并且可以与 Ollama 一起使用。

该模型在各个方面表现出色,与早期模型相比,整体性能与 GPT 相当。

用于评估的测试数据来自 Jailbreak 并被翻译成多种语言。值得注意的是,Llama-3 在多语言提示中表现不佳,因此被排除在比较之外。研究结果表明,Qwen2-72B-Instruct 模型实现了与 GPT-4 相当的安全水平,并根据显著性测试(P 值)显著优于 Mistral-8x22B 模型。

五、Ollama REST API

Ollama有一个用于运行和管理模型的REST API。

(1)生成响应

curl http://localhost:11434/api/generate -d '{ "model": "qwen2:7b", "prompt": "为什么天空是蓝色的?", "stream": false}'

(2)聊天模型

curl http://localhost:11434/api/chat -d '{ "model": "qwen2:7b", "messages": [ { "role": "user", "content": "为什么天空是蓝色的?" } ], "stream": false}'

更多细节,可以访问 API 文档:https://github.com/ollama/ollama/blob/main/docs/api.md

六、小结

总之,我们可以说 Qwen2-72B-Instruct 模型在各种基准测试中展示了其卓越的性能。特别是 Qwen2-72B-Instruct 超越了之前的迭代,如 Qwen1.5-72B-Chat,甚至与像 GPT-4 这样的最先进模型竞争,这由显著性测试结果证明。此外,它显著优于像 Mistral-8x22B 这样的模型,强调了其在确保多语言环境中安全方面的有效性。

展望未来,像 Qwen2 这样的大型语言模型的快速增长预示着一个未来,AI 驱动的应用和解决方案变得越来越复杂。这些模型有潜力革新包括自然语言理解、生成、多语言通信、编码、数学和推理在内的各个领域。随着这些模型的持续进步和改进,我们可以期待 AI 技术取得更大的进步,从而开发出更智能、更像人类的系统,更好地满足社会需求,同时遵守道德和安全标准。

0 阅读:0

云的事情不好说

简介:感谢大家的关注