为了账号安全,请及时绑定邮箱和手机立即绑定

Ollama本地运行大型语言模型(LLM)完全指南——第一部分

奥拉玛-介绍

Ollama 是一个开源工具,专门用于在本地机器上方便地部署和运行大语言模型(LLM)。它允许用户轻松加载、运行并互动各种 LLM 模型,而不需要深入了解复杂的底层技术。

最初,Ollama 被设计为一个在本地运行 LLM 的工具。然而,现在它也可以在服务器上使用(支持同时为多个用户提供服务),并且兼容 OpenAI 接口,让它成为一个适合私有部署 OpenAI 模型的好选择。

Ollama的特点:

它不依赖于云服务,允许用户在自己的设备上运行模型,从而保护数据的隐私。

它可以在 Mac、Linux 和 Windows 等操作系统上轻松安装和运行。

多种模型支持:Ollama 支持多种流行的大型语言模型,例如 Llama、Gemma 和 Mistral 等等,用户可以根据需求单击即可选择并运行不同模型。

易用:提供了一个直观易用的命令行界面。

可扩展性:它支持自定义配置,让用户能根据他们的硬件环境和需求调整设置。

开源:代码是完全开放的,用户可以自由查看、修改和分享代码,虽然大多数人可能不会选择修改它。

如何给Ollama安装

  • 窗口

您可以在这里下载:https://ollama.com/download/OllamaSetup.exe.

  • macOS

在 Mac 上安装很简单:下载 Zip 文件,解压它,然后运行程序。

你可以在这里下载Ollamadarwin.zip文件:

https://ollama.com/download/Ollama-darwin.zip

安装并运行 Ollama.app 后,你会在系统任务栏看到它的图标。点击它就可以停用 Ollama 服务了。

  • 一个Linux操作系统

Linux可以直接运行一个 shell 脚本:

    curl -fsSL https://ollama.com/install.sh | sh
  • Docker (一个容器技术)

除了上述安装,我们还可以通过Docker运行它。官方提供的ollama镜像可以直接在ollama网站上下载并运行。

由于 Docker 在这里增加了一层抽象,所以在使用 CPU 和 GPU 时需要不同的配置。

# CPU 模式
以下是使用 Docker 运行 ollama 的命令
docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

如果你使用AMD显卡来运行Ollama程序,请使用rocm版本的镜像,并执行以下命令:

docker run -d --device /dev/kfd --device /dev/dri -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama:rocm

命令解释:启动名为ollama的容器,将ollama:/root/.ollama目录挂载到容器中,并将主机的11434端口映射到容器的11434端口上。

  • docker run -d (以分离模式启动容器)
  • --device /dev/kfd --device /dev/dri (将主机的/dev/kfd和/dev/dri设备文件挂载到容器中)
  • -v ollama:/root/.ollama (将主机的ollama目录挂载到容器的/root/.ollama目录)
  • -p 11434:11434 (将主机的11434端口映射到容器的11434端口)
  • --name ollama (将容器命名为ollama)
  • ollama/ollama:rocm (指定要运行的镜像名称)

如果你在运行 Ollama 时使用 Nvidia GPU,请先为你的 Linux 发行版安装 NVIDIA GPU 驱动。安装过程很简单;可以参考这里 链接

然后,配置容器运行时,然后重启容器服务。


    sudo nvidia-ctk runtime configure --runtime=docker  
    sudo systemctl restart docker

这些命令用于配置NVIDIA容器工具包以与Docker一起使用,并重启Docker服务。

接着,添加启动参数 —gpus=all ,以GPU模式运行容器:

    # NVIDIA GPU 模式
    docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

启动Ollama的方法

  • 在本地运行

安装完成后,就可以运行模型了,只需一个简单的命令。

    ollama run llama3.1

运行 ollama run llama3.1 命令。

如果是第一次使用,Ollama 会从网上下载模型(大约 5GB 左右的大小),这可能需要一段时间。

  • 容器运行

在容器中运行模型就像在本地机器上运行一样。使用 ollama run <model> 命令

    docker exec -it ollama run llama3

运行命令:docker exec -it ollama run llama3。

支持的模型类型

下面是常用的模型,包括它们的参数大小、存储大小和在Ollama中的模型名称。例如,Meta的Llama模型和Google的Gemini模型以及其他模型,比如阿里云的Qwen模型。

要查看所有模型的完整列表,您可以在Ollama网站上进行浏览。

点击一个模型,就可以看到它的简介、参数列表和下载链接等详细信息。

一些模型的README文件中还包含评估报告。

如何个性化你的模型?

除了内置支持的模型之外,我们还可以使用Ollama这款工具来运行自己的模型。有三种方法可以导入模型。

  • GGUF,
  • PyTorch,
  • Safetensors
  1. 从GGUF导入一下

GGUF 是一种文件格式,用于存储使用 GGML 和基于 GGML 的执行器来进行推理的模型。

GGUF 是一种二进制格式,旨在快速加载和保存模型,并便于阅读。通常,模型使用 PyTorch 或其他框架开发,然后会被转换为 GGUF 以供 GGML 使用。

你可以访问GGUF GitHub网站 获取GGUF的更多信息和功能。

将一个 GGUF 模型导入使用 Ollama 非常简单,十分简单,只需三个步骤。

a) 创建一个名为 Modelfile 的文件,该文件应包含 FROM 指令以及要导入的模型的本地文件路径。

来自/path/to/your/vicuna-33b.Q4_0.gguf

b) 在Ollama里创建模型。在这一步,我们可以设置模型的名称,比如 vicuna-33b-q4

    ollama create vicuna-33b-q4 -f Modelfile

完成这两个步骤后,我们就能像用内置模型一样运行新导入的自定义模型。

运行指令 'ollama run vicuna-33b-q4' 来启动模型

2, 从 PyTorch 或 Safetensors 引入

如果你正在导入的模型使用了以下架构之一,你可以通过一个 Modelfile 直接导入 Ollama。

  • LlamaForCausalLM (因果语言模型)
  • MistralForCausalLM (因果语言模型)
  • GemmaForCausalLM (因果语言模型)
FROM /path/to/safetensors/你的目录路径

如果不被支持,你得先用 llama.cpp [5] 把它转换成 GGUF 格式。

常见的格式,比如HuggingFace、GGML和Lora都受支持,并且提供了转换脚本。

这个步骤其实很简单,把一个HuggingFace的模型转换一下。

首先,克隆一下 llama.cpp 仓库:

运行以下命令克隆代码库:git clone https://github.com/ggerganov/llama.cpp.git

安装所需的Python依赖包。

    pip install -r llama.cpp/requirements.txt

这条命令用来安装llama.cpp项目所需的依赖。

使用起来很简单,只需输入HuggingFace的模型和转换后模型的输出位置:

运行以下命令来转换模型:

python convert.py --input /path/to/huggingface/model --output /path/to/output/model.gguf

自定义系统提示语

Ollama支持为每个模型自定义系统提示语,在运行模型时。

我们拿qwen:7b举个例子,来看看怎么自定义系统提示。

请先确保我们已经下载了模型。

ollama pull qwen:7b

无需翻译该命令,因为它是一个特定的软件命令。

创建一个名叫Modelfile的模型文件:

    FROM qwen  

    # 将温度设置为 1 [数值越高越有创意,数值越低越连贯]  
    PARAMETER temperature 0.8  

    # 系统提示  
    SYSTEM """  
    你现在是一位资深的 Python 程序员和导师,指导他人编码的艺术。请以 "亲爱的初学者," 开头。  
    """

运行模型 :

    ollama create qwen-python -f ./Modelfile  # 创建qwen-python模型,并指定模型文件路径为"./Modelfile"  
    ollama run qwen-python  # 运行qwen-python模型

最后问它一下“我今天应该做什么?”看看它会怎么回答。

真是太感谢大家的阅读了!敬请期待下文。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消