跳到主要内容

一、 Ollama安装和使用

(1). macOS

在 macOS 上安装 Ollama,请点击以下链接进行下载:

下载链接

(2). Windows 预览版

在 Windows 上安装 Ollama,请点击以下链接进行下载:

下载链接

(3). Linux

在 Linux 上,可以通过以下命令进行安装:

curl -fsSL https://ollama.com/install.sh | sh

如果需要手动安装,请参考手动安装说明

(4). Docker

Ollama 官方提供了 Docker 镜像,可以在 Docker Hub 上获取:

Ollama Docker 镜像 ollama/ollama

2. 快速开始

要运行并与 Llama 2 进行交流,可以使用以下命令:

ollama run llama2

3. 模型库

Ollama 支持一系列模型,可以在 ollama.com/library 上找到。以下是一些示例模型及其下载方式:

模型参数数量大小下载方式
Llama 27B3.8GBollama run llama2
Mistral7B4.1GBollama run mistral
Dolphin Phi2.7B1.6GBollama run dolphin-phi
Phi-22.7B1.7GBollama run phi
Neural Chat7B4.1GBollama run neural-chat
Starling7B4.1GBollama run starling-lm
Code Llama7B3.8GBollama run codellama
Llama 2 Uncensored7B3.8GBollama run llama2-uncensored
Llama 2 13B13B7.3GBollama run llama2:13b
Llama 2 70B70B39GBollama run llama2:70b
Orca Mini3B1.9GBollama run orca-mini
Vicuna7B3.8GBollama run vicuna
LLaVA7B4.5GBollama run llava
Gemma2B1.4GBollama run gemma:2b
Gemma7B4.8GBollama run gemma:7b

注意:运行 7B 模型需要至少 8GB 的 RAM,运行 13B 模型需要 16GB RAM,运行 33B 模型需要 32GB RAM。

4. 自定义模型

(1). 从 GGUF 导入

Ollama 支持在 Modelfile 中导入 GGUF 模型:

  1. 创建一个名为 Modelfile 的文件,使用 FROM 指令指定要导入的模型的本地文件路径。

    FROM ./vicuna-33b.Q4_0.gguf
  2. 创建模型

    ollama create example -f Modelfile
  3. 运行模型

    ollama run example

(2). 从 PyTorch 或 Safetensors 导入

查看导入模型指南获取更多信息。

(3). 自定义提示

可以使用提示来自定义 Ollama 模型。例如,要自定义 llama2 模型:

ollama pull llama2

创建一个 Modelfile

FROM llama2

# 设置温度为 1 [值越高越有创造性,值越低越连贯]
PARAMETER temperature 1

# 设置系统消息
SYSTEM """
You are Mario from Super Mario Bros. Answer as Mario, the assistant, only.
"""

接下来,创建并运行模型:

ollama create mario -f ./Modelfile
ollama run mario
>>> hi
Hello! It's your friend Mario.

更多示例,请参考examples目录。有关使用 Modelfile 的更多信息,请参考Modelfile文档。

5. CLI 参考

(1). 创建模型

使用 ollama create 命令从 Modelfile 创建模型。

ollama create mymodel -f ./Modelfile

(2). 拉取模型

ollama pull llama2

此命令也可用于更新本地模型。只会拉取差异部分。

(3). 删除模型

ollama rm llama2

(4). 复制模型

ollama cp llama2 my-llama2

(5). 多行输入

对于多行输入,可以使用 """ 包裹文本:

>>> """Hello,
... world!
... """
I'm a basic program that prints the famous "Hello, world!" message to the console.

(6). 多模态模型

>>> What's in this image? /Users/jmorgan/Desktop/smile.png
The image features a yellow smiley face, which is likely the central focus of the picture.

(7). 将提示作为参数传入

$ ollama run llama2 "Summarize this file: $(cat README.md)"
Ollama is a lightweight, extensible framework for building and running language models on the local machine. It provides a simple API for creating, running, and managing models, as well as a library of pre-built models that can be easily used in a variety of applications.

(8). 列出计算机上的模型

ollama list

(9). 启动 Ollama

当您想要启动 Ollama 而不运行桌面应用程序时,可以使用 ollama serve

6. 构建

安装 cmakego

brew install cmake go

然后生成依赖项:

go generate ./...

然后构建二进制文件:

go build .

更详细的说明可以在开发者指南中找到。

(1). 运行本地构建

接下来,启动服务器:

./ollama serve

最后,在另一个 shell 中,运行一个模型:

./ollama run llama2

7. REST API

Ollama 提供了用于运行和管理模型的 REST API。

(1). 生成响应

curl http://localhost:11434/api/generate -d '{
"model": "llama2",
"prompt":"Why is the sky blue?"
}'

(2). 与模型交流

curl http://localhost:11434/api/chat -d '{
"model": "mistral",
"messages": [
{ "role": "user", "content": "why is the sky blue?" }
]
}'

查看API 文档获取所有端点信息。

8. 社区集成

(1). Web & Desktop

(2). 终端

(3). 数据库

(4). 包管理器