用Ollama本地调用LLM
入门·10 分钟·通过可运行代码讲解「用Ollama本地调用LLM」,覆盖环境准备、核心代码、参数说明、异常处理、工程化改造和练习任务,适合 AI 编程入门。
用Ollama本地调用LLM
Ollama 可以在本地运行大语言模型,适合学习、本地原型、隐私敏感场景和离线实验。它的优势是部署简单,命令行体验友好。
安装和拉取模型
安装 Ollama 后,可以拉取模型:
ollama pull qwen2.5:7b
ollama run qwen2.5:7b
第一次运行会下载模型文件,体积可能较大。
命令行测试
ollama run qwen2.5:7b
>>> 用三句话解释RAG
如果命令行能正常回答,说明本地服务和模型都可用。
Python调用本地接口
Ollama 默认提供本地 HTTP 接口:
import requests
resp = requests.post('http://localhost:11434/api/generate', json={
'model': 'qwen2.5:7b',
'prompt': '用三句话解释什么是向量数据库',
'stream': False
})
print(resp.json()['response'])
这个方式适合把本地模型接入自己的 Python 项目。
聊天接口
多轮对话可以使用 chat 风格接口:
messages = [
{'role': 'system', 'content': '你是一个AI学习助手'},
{'role': 'user', 'content': '什么是RAG?'}
]
把 messages 发给本地接口,就能实现类似在线模型的对话结构。
本地模型的限制
本地模型效果取决于模型大小和硬件。7B 模型在普通电脑上更容易运行,但复杂推理能力可能不如云端强模型。模型越大,占用内存和显存越高。
适合场景
- 学习大模型调用流程;
- 本地资料问答原型;
- 不方便上传数据的实验;
- 离线写作辅助;
- 对成本敏感的小工具。
常见问题
- 模型下载慢:检查网络或镜像;
- 内存不足:换更小或量化模型;
- 生成慢:降低模型规模或使用 GPU;
- 回答质量不稳定:改提示词或换模型;
- 接口连不上:确认 Ollama 服务正在运行。
小结
Ollama 让本地调用 LLM 变得简单。学习时先跑通命令行,再用 Python 调 HTTP 接口,最后再接入 RAG 或聊天机器人。