Ollama
Ollama 简介
Ollama 是一个基于 Go 语言开发的可以本地运行大模型的开源框架。
官网:ollama.com/
GitHub 地址:github.com/ollama/olla…
Ollama 安装
下载安装 Ollama
在 Ollama 官网根据操作系统类型选择对应的安装包,这里选择 macOS 下载安装。
安装完在终端输入 ollama,可以看到 ollama 支持的命令。
1 | bash |
查看 ollama 版本
1 | bash |
查看已下载模型
1 | bash |
我本地已经有一个大模型,接下来我们看一下怎么下载大模型。
下载大模型
安装完后默认提示安装 llama2 大模型,下面是 Ollama 支持的部分模型
Model | Parameters | Size | Download |
---|---|---|---|
Llama 3 | 8B | 4.7GB | ollama run llama3 |
Llama 3 | 70B | 40GB | ollama run llama3:70b |
Mistral | 7B | 4.1GB | ollama run mistral |
Dolphin Phi | 2.7B | 1.6GB | ollama run dolphin-phi |
Phi-2 | 2.7B | 1.7GB | ollama run phi |
Neural Chat | 7B | 4.1GB | ollama run neural-chat |
Starling | 7B | 4.1GB | ollama run starling-lm |
Code Llama | 7B | 3.8GB | ollama run codellama |
Llama 2 Uncensored | 7B | 3.8GB | ollama run llama2-uncensored |
Llama 2 13B | 13B | 7.3GB | ollama run llama2:13b |
Llama 2 70B | 70B | 39GB | ollama run llama2:70b |
Orca Mini | 3B | 1.9GB | ollama run orca-mini |
LLaVA | 7B | 4.5GB | ollama run llava |
Gemma | 2B | 1.4GB | ollama run gemma:2b |
Gemma | 7B | 4.8GB | ollama run gemma:7b |
Solar | 10.7B | 6.1GB | ollama run solar |
Llama 3 是 Meta 2024年4月19日 开源的大语言模型,共80亿和700亿参数两个版本,Ollama均已支持。
这里选择安装 gemma 2b,打开终端,执行下面命令:
1 | shell |
经过一段时间等待,显示模型下载完成。
上表仅是 Ollama 支持的部分模型,更多模型可以在 ollama.com/library 查看,中文模型比如阿里的通义千问。
终端对话
下载完成后,可以直接在终端进行对话,比如提问“介绍一下React”
1 | bash |
输出内容如下:
显示帮助命令-/?
1 | markdown |
显示模型信息命令-/show
1 | bash |
显示模型详情命令-/show info
1 | bash |
API 调用
除了在终端直接对话外,ollama 还可以以 API 的方式调用,比如执行 ollama show --help
可以看到本地访问地址为:http://localhost:11434
1 | bash |
下面介绍主要介绍两个 api :generate 和 chat。
generate
- 流式返回
1 | json |
- 非流式返回
通过设置 “stream”: false 参数可以设置一次性返回。
``bash curl http://localhost:11434/api/generate -d ‘{ “model”: “gemma:2b”, “prompt”:”介绍一下React,20字以内”, “stream”: false }’
1 | json |
chat
- 流式返回
1 | bash |
可以看到终端输出结果:
1 | bash |
默认流式返回,同样可以通过 “stream”: false 参数一次性返回。
generate 和 chat 的区别在于,generate 是一次性生成的数据。chat 可以附加历史记录,多轮对话。
Web UI
除了上面终端和 API 调用的方式,目前还有许多开源的 Web UI,可以本地搭建一个可视化的页面来实现对话,比如:
- open-webui
- lollms-webui
通过 Ollama 本地运行大模型的学习成本已经非常低,大家有兴趣尝试本地部署一个大模型吧 🎉🎉🎉