【实践】Ollama 本地大模型和云端模型的安装使用

一、背景介绍

Ollama 是一个开源的、专为在本地运行和管理大型语言模型(LLM,Large Language Model)而设计的轻量级工具与平台。简单来说,它的核心作用是:让你能像运行一个普通程序一样,在自己的电脑上轻松下载、运行和试验各种开源大模型(如 Llama 3、Qwen、Gemma 等),而无需了解复杂的模型部署、环境配置或依赖管理。

2025年9月18日,Ollama 发布了 v0.12.0 版本更新,本次更新带来了一个重量级的新特性------云模型(Cloud Models),使开发者不仅能在本地运行模型,还能直接调用云端算力运行超大模型,实现本地与云端的无缝协同。


二、使用步骤

2.1 安装 Ollama

macOS 用户最省事,直接去官网下载 .dmg 安装包,拖进 Applications 即可。安装完之后菜单栏会多出一个小羊驼图标,那就是后台常驻的服务进程。

Linux 用户用一行脚本搞定:

bash 复制代码
curl -fsSL https://ollama.com/install.sh | sh

脚本会自动检测 GPU(NVIDIA / AMD),把对应的运行时一并装好。装完之后服务通常会以 systemd 单元的形式注册,可以用 systemctl status ollama 查看状态。

2.2 拉取第一个模型

**Ollama 的云端模型需要 ollama.com 上的账户。要登录或创建账户,请运行 ollama signin。**用的不是云端模型可以跳过这个步骤。

python 复制代码
# 确保版本 >= 0.12.0
ollama --version

# 登录 ollama.com(首次使用需要)
ollama signin

模型库在 ollama.com/library,挑一个合适的就行。接下来正式下载模型。

bash 复制代码
# 下载
ollama pull deepseek-v3.1:671b-cloud
ollama pull deepseek-r1:lastest

不同模型下载量不一致,速度取决于网络。这里挑个体积小的。有个小坑:如果你在国内且没有代理,初次拉取可能会比较慢,可以考虑配置 HTTP 代理或者使用国内镜像源。

2.3 启动一次对话

最直接的终端对话方式
bash 复制代码
# 直接运行,Ollama 会自动将模型下载部署到本地
ollama run deepseek-r1:lastest

# 直接运行,Ollama 会自动从云端加载
ollama run deepseek-v3.1:671b-cloud

⚠️注意:直接运行不存在的大模型会自动下载然后运行。

run了之后终端会进入交互模式,输入问题回车即可。退出用 /bye,查看可用指令用 /?

python 集成

main.py 中使用代码与本地模型完全一样,只需修改模型名称

python 复制代码
from langchain_ollama import ChatOllama

def main():
    # 直接使用云端模型名称,LangChain 会自动通过本地 Ollama 服务调用云端
    llm = ChatOllama(
        model="deepseek-v3.1:671b-cloud",  # 云端模型
        temperature=0.7,
    )

    response = llm.invoke("你好,请介绍一下你自己")
    print(response.content)

if __name__ == "__main__":
    main()

⚠️ 注意:即使使用云端模型,代码中仍需通过本地的 Ollama 服务(localhost:11434)调用,Ollama 会自动将请求转发到云端。

改用成使用本地部署的模型,发现也是可以的。

python 复制代码
from langchain_ollama import ChatOllama

def main():
    # 初始化 ChatOllama,指定你运行的模型名称
    llm = ChatOllama(
        model="deepseek-r1:latest",  # 与 ollama run 后的名称保持一致
        temperature=0.7,  # 可选:控制输出随机性
        num_predict=512,  # 可选:最大生成 token 数
    )

    # 发送消息并获取回复
    response = llm.invoke("你好,请介绍一下你自己")

    # 打印回复内容
    print(response.content)


if __name__ == "__main__":
    main()
访问云端 API

你也可以通过 ollama.com 的 API 直接访问云模型。在这种模式下,ollama.com 充当远程 Ollama 主机。具体的就不介绍了,详情请看官网...

如果你想让它做应用集成,Ollama 默认在 http://localhost:11434 暴露了一套兼容 OpenAI 的 HTTP 接口。下面是一段最小可用的 Python 示例:

python 复制代码
import requests

resp = requests.post(
    "http://localhost:11434/api/chat",
    json={
        "model": "deepseek-r1:lastest",
        "messages": [
            {"role": "user", "content": "用一句话解释什么是向量数据库"}
        ],
        "stream": False,
    },
    timeout=60,
)
print(resp.json()["message"]["content"])

如果你的项目原先是接 OpenAI 的,几乎可以无缝切换------把 base_url 指向 http://localhost:11434/v1,再随便填一个 api_key(Ollama 不会校验),SDK 就能直接用了。

参考文献

  1. Ollama 官方网站. https://ollama.com
  2. Ollama GitHub 仓库. https://github.com/ollama/ollama
  3. Ollama 模型库. https://ollama.com/library
  4. Gerganov, G. et al. llama.cpp: Inference of Meta's LLaMA model in pure C/C++ . https://github.com/ggerganov/llama.cpp
  5. Qwen Team, Alibaba Cloud. Qwen2.5 Technical Report , 2024. https://qwenlm.github.io/blog/qwen2.5/
  6. Meta AI. The Llama 3 Herd of Models , 2024. https://ai.meta.com/research/publications/the-llama-3-herd-of-models/
  7. Continue.dev 文档. https://docs.continue.dev
  8. GGUF 格式说明. https://github.com/ggerganov/ggml/blob/master/docs/gguf.md
相关推荐
MClink1 小时前
Claude Code 和 Claude Desktop:一个搞清两个 AI 助手
ai
Luhui Dev2 小时前
高频使用 GPT-5.5 两天后的总结
ai·agent·luhuidev
LcGero3 小时前
移动端AI OCR模型选型
人工智能·ai·ocr
学术头条4 小时前
Springer Nature直播预告 | 无人系统集群协同与工程挑战
人工智能·科技·机器学习·ai·agi
龙侠九重天4 小时前
OpenClaw 与 Hermes 有何异同?——从系统架构到用户体验的全面对比
人工智能·ai·系统架构·大模型·llm·openclaw·hermes
冲上云霄的Jayden4 小时前
约束性 Prompt 与 描述性 Prompt对比与选择
ai·prompt·约束性
不仙5205 小时前
Hermes 接入飞书(Feishu/Lark)部署文档
linux·服务器·ai
xinlianyq6 小时前
文艺复兴科技新增AI因子,量化基金重夺主导权
人工智能·ai
Huang2601086 小时前
Ace Data Cloud平台剩余配额查询教程
ai