Ollama模型运行详细入门指南:新手必看的本地部署与模型调用教程
摘要
用Ollama部署大模型,具体操作流程是怎样的? 直截了当教你把模型拉到本地跑起来。Ollama
用Ollama部署大模型,具体操作流程是怎样的?
直截了当教你把模型拉到本地跑起来。Ollama在本地运行大语言模型确实高效,从拉取模型、启动推理到各项配置调整,几步就能搞定。无论你的操作系统是Windows、macOS还是Linux,只要Ollama装好,下面的步骤基本通用。
一. 拉取模型
想运行模型,得先从Ollama仓库把模型文件拉到本地。这个过程叫“拉取”。
命令非常简单:
ollama pull
举个例子,拉取LLaMA 3的8B参数版本:
ollama pull llama3
当前热门模型推荐:
llama3:Meta出品,通用任务表现出色。mistral:Mistral AI的模型,推理效率业界领先。phi3:微软的轻量级选手,低配置设备也能流畅运行。
想探索更多模型,直接访问Ollama模型库,或在终端执行 ollama list 查看本地已下载的清单。
关键提醒:
模型文件通常体积较大,几个GB只是起步。务必确保网络稳定且磁盘空间充足。另外,可按需选择不同大小的模型版本,比如 llama3:8b 和 llama3:70b,小模型对硬件的要求明显更低。
二. 运行模型
模型拉取到本地后,如何启动?Ollama提供两种方案:终端直接交互与API调用。两种方式都很实用。
方式 1:交互式终端
一条命令搞定:
ollama run
例如:
ollama run llama3
进入后是什么体验?
直接进入对话模式,你输入一句,模型立刻回复一句。例如输入 "What is the capital of France?",模型会回应 "The capital of France is Paris."。退出时输入 /exit 或按 Ctrl+D 即可。
方式 2:通过 API 运行
Ollama同时提供REST API,对需要将模型集成到应用或脚本中的开发者来说,极为便捷。
默认地址:http://localhost:11434
用 curl 测试:
curl http://localhost:11434/api/generate -d '{
"model": "llama3",
"prompt": "Write a short poem about the moon."
}'
返回内容:模型会生成一段JSON格式的文本,解析方便。
编程集成示例(Python):
import requests
response = requests.post('http://localhost:11434/api/generate', json={
'model': 'llama3',
'prompt': 'Hello, world!'
})
print(response.json())
三. 管理运行中的模型
模型跑起来后,如何管理?
查看已下载的模型列表:
ollama list
删除模型以释放空间:
ollama rm
检查当前后台运行的模型实例:
ollama ps
该命令会清晰显示当前正在运行的模型实例。
四. 优化运行性能
不同模型对硬件的要求差异很大。
硬件门槛大致参考:
- 小模型(如
phi3):4-8GB内存基本可运行。 - 大模型(如
llama3:70b):16GB以上内存是底线,配备GPU能大幅提升性能。
GPU 加速务必配置:
如果机器有独立显卡,记得安装NVIDIA CUDA驱动(Windows/Linux)或Metal(macOS)。Ollama检测到可用GPU时会默认启用加速。
参数调整:
想知道运行细节,可加 --verbose 参数。要调整生成温度、top-k等参数,通过API指定即可:
{
"model": "llama3",
"prompt": "Tell a story",
"temperature": 0.7,
"top_p": 0.9
}
同时运行多个模型:
Ollama支持同时运行多个模型,但前提是内存和CPU/GPU资源充足,否则会出现卡顿。
五. 常见问题
实际操作中可能会遇到的坑。
模型未找到:首先确认是否执行了 ollama pull,模型没下载到本地肯定无法运行。
运行缓慢:考虑换用更小的模型,或检查GPU加速是否生效。
端口占用:Ollama默认使用11434端口,若被其他程序占用,可通过环境变量修改:
export OLLAMA_HOST=127.0.0.1:11435
内存不足:关闭一些占用内存的应用,或选择参数量更小的模型。
六. 进阶使用
基础玩法满足不了时,可以尝试更深度的操作。
自定义模型:通过 Modelfile 文件创建专属于你的模型,例如自定义提示词、调整参数,然后使用:
ollama create mymodel -f Modelfile
批量处理:编写脚本循环调用API,一次性完成大量任务,大幅提升效率。
嵌入生成:调用 /api/embeddings 端点生成文本嵌入,适用于搜索、分类等场景。
示例场景
对话:直接 ollama run mistral 即可与模型聊天。
代码生成:输入 Write a Python script to sort a list,模型会直接输出代码。
API 集成:将Ollama嵌入Web应用,实现实时内容生成。
如需特定模型运行示例或API集成代码,直接调整对应参数即可。
七. ollama run 命令详解
Ollama运行模型的核心命令是 ollama run。
例如运行 Llama 3.2 并进行对话:
ollama run llama3.2
执行后,若本地没有该模型,它会自动下载:

下载完成后,即可在终端中开始交互:
writing manifest success >>> 你好 Hello >>> 能讲中文吗 是的,我可以在 Chinese 中对話。哪些话题或问题想要了解我呢?
结束对话,输入 /bye 或按 Ctrl+d 即可。
用 ollama list 查看已安装的模型:
NAME ID SIZE MODIFIED llama3.2 baf6a787fdff 1.3 GB 4 minutes ago
支持的模型列表可查阅官网:https://ollama.com/library

下表列出一些常用模型的下载命令:
| 模型 | 参数 | 大小 | 下载命令 |
|---|---|---|---|
| Llama 3.3 | 70B | 43GB | ollama run llama3.3 |
| Llama 3.2 | 3B | 2.0GB | ollama run llama3.2 |
| Llama 3.2 | 1B | 1.3GB | ollama run llama3.2:1b |
| Llama 3.2 Vision | 11B | 7.9GB | ollama run llama3.2-vision |
| Llama 3.2 Vision | 90B | 55GB | ollama run llama3.2-vision:90b |
| Llama 3.1 | 8B | 4.7GB | ollama run llama3.1 |
| Llama 3.1 | 405B | 231GB | ollama run llama3.1:405b |
| Phi 4 | 14B | 9.1GB | ollama run phi4 |
| Phi 3 Mini | 3.8B | 2.3GB | ollama run phi3 |
| Gemma 2 | 2B | 1.6GB | ollama run gemma2:2b |
| Gemma 2 | 9B | 5.5GB | ollama run gemma2 |
| Gemma 2 | 27B | 16GB | ollama run gemma2:27b |
| Mistral | 7B | 4.1GB | ollama run mistral |
| Moondream 2 | 1.4B | 829MB | ollama run moondream |
| 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 |
| LLaVA | 7B | 4.5GB | ollama run lla va |
| Solar | 10.7B | 6.1GB | ollama run solar |
八. 通过 Python SDK 使用模型
若要在Python代码中直接调用Ollama,官方提供的Python SDK流程清晰。
1. 安装 Python SDK
通过pip安装:
pip install ollama
2. 编写 Python 脚本
下面是最简单的示例,用Llama 3.2模型生成回答:
import ollama
response = ollama.generate(
model="llama3.2", # 模型名称
prompt="你是谁。" # 提示文本
)
print(response)
3. 运行 Python 脚本
在终端执行脚本:
python test.py
模型会根据输入返回对应回答。
4. 对话模式
如需多轮对话,可使用 chat 接口:
from ollama import chat
response = chat(
model="llama3.2",
messages=[
{"role": "user", "content": "为什么天空是蓝色的?"}
]
)
print(response.message.content)
5. 流式响应
当模型输出较慢时,流式响应可不断获取生成内容,用户体验更佳:
from ollama import chat
stream = chat(
model="llama3.2",
messages=[{"role": "user", "content": "为什么天空是蓝色的?"}],
stream=True
)
for chunk in stream:
print(chunk["message"]["content"], end="", flush=True) 来源:互联网
本网站新闻资讯均来自公开渠道,力求准确但不保证绝对无误,内容观点仅代表作者本人,与本站无关。若涉及侵权,请联系我们处理。本站保留对声明的修改权,最终解释权归本站所有。