用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 或聊天机器人。