Ollama 入门自测:从安装到 Python 调用本地模型

2026-09-15 19 预计阅读时间: 1 分钟
来源: realpython.com AI 摘要 Original link

Disclaimer: This article is an AI-assisted summary. Read it together with the original source when precision matters. The summary may omit context, version differences, or edge cases and is not official documentation.

预计阅读时间:5 分钟

把模型下载到电脑,只完成了本地推理的准备工作。真正跑通 Ollama,需要把三件事连起来:安装并启动服务、拉取模型、从 Python 调用模型。来源中的入门测验围绕这些基础操作展开;下面可以作为一份动手检查清单。

安装成功,不等于模型已经就绪

理解 Ollama,可以先区分三个部件:负责运行模型的本地服务、下载到本机的模型,以及应用使用的 Python 客户端。安装 Python 包不会自动安装 Ollama 服务,也不会替你下载模型。

可以这样实践:先安装适合操作系统的 Ollama 程序,再在终端检查命令是否可用。以下示例使用 llama3.2,它只是练习用的模型选择,不是来源指定的要求。

ollama --version
ollama pull llama3.2
ollama list

pull 下载模型,list 检查本机已有的模型。下载时间、磁盘占用和推理速度取决于模型大小、网络和硬件,不能把“能下载”当成“能流畅运行”。

如果 Ollama 服务尚未启动,可以在单独的终端执行:

ollama serve

如果桌面应用已经启动服务,就不必重复运行这个命令。

chatgenerate:按输入结构选择

两种接口都可以生成文本,但应用组织输入的方式不同:

  • generate 接收一个提示词,适合一次性的摘要、解释或改写任务。
  • chat 接收带有角色的消息列表,适合对话,以及需要区分系统要求和用户输入的场景。

选择 chat 不意味着客户端会自动保存对话。需要多轮交流时,应用应维护消息历史,并在后续请求中传入需要保留的上下文。

用一个 Python 文件验证完整链路

下面是可以这样实践的最小示例,假设 Ollama 已在本机运行,且已经拉取 llama3.2。如果改用其他模型,请同时修改下载命令和代码中的 MODEL

安装 Python 客户端:

python -m pip install ollama

将下面的内容保存为 check_ollama.py

import ollama

MODEL = "llama3.2"


def main():
    generated = ollama.generate(
        model=MODEL,
        prompt="用两句话解释什么是本地大语言模型。",
        stream=False,
    )
    print("=== generate ===")
    print(generated["response"])

    chatted = ollama.chat(
        model=MODEL,
        messages=[
            {"role": "system", "content": "你是一位简洁的技术讲师。"},
            {"role": "user", "content": "列出本地运行语言模型的两个限制。"},
        ],
        stream=False,
    )
    print("\n=== chat ===")
    print(chatted["message"]["content"])


if __name__ == "__main__":
    main()

运行:

python check_ollama.py

这里显式关闭流式输出,让每次调用返回完整结果。注意两种响应的取值位置:generate 的文本在 responsechat 的文本在 message.content。不要把它们混用。

接入项目之前,检查这四件事

  • 连接是否正常:连接失败时,先检查 Ollama 服务,而不是反复修改提示词。
  • 模型名称是否一致:代码中的模型名称应与已拉取的模型匹配;可以用 ollama list 核对。
  • 资源是否足够:先测试短输入和小规模请求,再评估长上下文、并发和更大的模型。
  • 输出是否需要验证:本地运行不会消除幻觉。涉及代码执行、数据库操作或业务决策的输出,仍应校验。

入门的验收标准很简单:你能解释服务、模型和客户端各自的职责,也能独立完成一次 generate 和一次 chat 调用。做到这些,再把超时处理、日志、多轮历史和输出验证接入项目,会更稳妥。


相关推荐