Ollama:一条命令在本地运行 Llama2 等大模型
Ollama 是一个用于在本地运行大型语言模型的开源工具,支持 Mac、Linux 和 Docker 部署。它简化了模型管理流程,用户可通过单条命令启动 Llama2、Mistral 等模型。详细介绍 Ollama 的安装方法、基础命令操作、自定义 Modelfile 配置以及通过 HTTP API 进行集成的方式,涵盖资源需求说明与常见问题解决,帮助开发者快速搭建本地 AI 应用环境。

Ollama 是一个用于在本地运行大型语言模型的开源工具,支持 Mac、Linux 和 Docker 部署。它简化了模型管理流程,用户可通过单条命令启动 Llama2、Mistral 等模型。详细介绍 Ollama 的安装方法、基础命令操作、自定义 Modelfile 配置以及通过 HTTP API 进行集成的方式,涵盖资源需求说明与常见问题解决,帮助开发者快速搭建本地 AI 应用环境。

在当今的科技时代,AI 已经成为许多领域的关键技术。随着开源大模型的兴起,如何在本地高效部署和运行这些模型成为了开发者关注的焦点。Ollama 是一个强大的工具,旨在简化这一过程,让用户能够轻松地在本地环境中运行大型语言模型(LLM)。
Ollama 是一个用于在本地运行大型语言模型的框架。它的主要功能是将模型权重、配置和数据捆绑到一个包中,定义成 Modelfile。通过优化设置和配置细节(包括 GPU 使用情况),Ollama 使得在本地运行开源大型语言模型变得非常简单。
它支持多种主流的大模型,如 Llama 2、Mistral、Codellama 等,并提供了一个统一的接口来管理这些模型。
Ollama 极大地简化了安装过程,支持多种平台。
如果你使用的是 Mac,可以直接下载安装包进行安装。
.dmg 文件并双击安装。Linux 提供了一键安装脚本,适用于大多数发行版。
curl https://ollama.ai/install.sh | sh
执行上述命令后,脚本会自动完成默认安装并启动服务。
对于需要容器化部署的场景,可以使用官方提供的 Docker 镜像。
docker pull ollama/ollama
docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
这将创建一个名为 ollama 的容器,并将模型数据持久化到卷中。
安装完成后,Ollama 默认会在本地启动一个服务器。我们可以通过命令行与它交互。
以运行 Llama 2 为例,只需执行以下命令:
ollama run llama2
系统会自动拉取模型权重并开始运行。首次运行时可能需要下载几十 GB 的数据,请耐心等待。
Ollama 支持众多开源模型,可以通过以下命令列出所有已下载的模型:
ollama list
若要拉取其他模型,例如 Mistral,可以执行:
ollama run mistral
如果需要停止当前运行的会话,输入 /bye 或按 Ctrl+C。
若需删除不再需要的模型以释放空间:
ollama rm llama2
Ollama 允许用户通过编写 Modelfile 来自定义模型的行为,例如修改系统提示词、温度参数或加载特定的插件。
创建一个名为 Modelfile 的文件,内容如下:
FROM llama2
SYSTEM "你是一个专业的编程助手,请用简洁的代码回答问题。"
PARAMETER temperature 0.7
然后基于此文件创建新模型:
ollama create my-llama -f Modelfile
ollama run my-llama
Ollama 提供了一个 HTTP API,方便开发者将其集成到自己的应用中。默认监听端口为 11434。
在 macOS 或 Linux 中,确保环境变量正确设置:
OLLAMA_HOST=0.0.0.0:11434 ollama serve
使用 Python 的 requests 库调用 Ollama API:
import requests
response = requests.post(
'http://localhost:11434/api/generate',
json={
'model': 'llama2',
'prompt': '为什么天空是蓝色的?',
'stream': False
}
)
print(response.json()['response'])
支持流式响应,适合构建聊天界面:
import requests
with requests.post('http://localhost:11434/api/chat', json={
'model': 'llama2',
'messages': [{'role': 'user', 'content': '你好'}],
'stream': True
}, stream=True) as r:
for line in r.iter_lines():
if line:
print(line.decode('utf-8'))
不同规模的模型对硬件资源有不同的要求,建议参考以下配置:
如果内存不足,可以考虑量化版本(如 Q4_K_M)以降低资源消耗。
Ollama 默认从官方源拉取模型,国内网络环境可能较慢。可以尝试配置代理或使用镜像源。
检查是否安装了正确的 CUDA 驱动(NVIDIA)或 Metal 支持(Apple Silicon)。Ollama 会自动检测可用硬件。
如果 11434 端口已被占用,可通过环境变量指定其他端口:
OLLAMA_HOST=0.0.0.0:11435 ollama serve
Ollama 以其轻量级、易部署的特点,成为本地运行大模型的首选工具之一。通过简单的命令即可启动推理服务,配合 API 接口可快速构建私有化 AI 应用。无论是开发者测试还是企业内网部署,Ollama 都提供了极大的便利。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online