Ollama 简介

什么是 Ollama?

Ollama 是一个让你在本地轻松运行大语言模型(LLM)的工具。简单来说,它把复杂的大模型部署变得像安装一个普通软件一样简单。

以前要在本地运行大模型,你需要:

  1. 下载模型文件(几个 GB 甚至几十 GB)
  2. 安装 Python 和各种依赖库
  3. 配置 CUDA 或其他推理框架
  4. 写代码来加载和运行模型
  5. 处理各种兼容性问题

现在有了 Ollama,你只需要:

ollama run llama3

就这么简单。

Ollama 能做什么?

对话聊天

最基本的功能是和 AI 对话:

你:今天天气怎么样?
AI:抱歉,我无法获取实时天气信息,因为我是一个离线运行的 AI 模型。

文本生成

可以生成各种类型的文本:

  • 写邮件、文章、报告
  • 生成代码
  • 创作故事、诗歌
  • 翻译文本
  • 总结长文

代码辅助

帮你写代码、解释代码、调试代码:

你:用 Python 写一个快速排序
AI:def quick_sort(arr):
    if len(arr) <= 1:
        return arr
    pivot = arr[len(arr) // 2]
    left = [x for x in arr if x < pivot]
    middle = [x for x in arr if x == pivot]
    right = [x for x in arr if x > pivot]
    return quick_sort(left) + middle + quick_sort(right)

文档问答

上传文档后,可以基于文档内容回答问题。

为什么选择 Ollama?

完全本地运行

特性说明
数据隐私所有数据都在本地,不会上传到云端
无网络依赖安装后可以离线使用
无费用不用按次付费,没有 API 调用限制
可控性完全控制模型的行为和输出

使用简单

Ollama 的设计哲学就是"简单":

  • 一行命令安装
  • 一行命令运行模型
  • 简单的命令行交互
  • 自带 HTTP API,方便集成

支持多种模型

Ollama 支持多种主流大模型:

| 模型 | 特点 | 适用场景 | |------||------| | Llama 3 | Meta 开源,性能优秀 | 通用对话、文本生成 | | Mistral | 轻量高效 | 资源受限环境 | | Gemma | Google 开源 | 多语言任务 | | Qwen | 通义千问 | 中文场景 | | CodeLlama | 代码专用 | 编程辅助 | | Llava | 多模态 | 图文理解 |

跨平台支持

Ollama 支持多个操作系统:

  • macOS - 原生支持,包括 Apple Silicon(M1/M2/M3)
  • Linux - 支持 x86_64 和 ARM64
  • Windows - 通过 WSL2 或 Docker 运行

Ollama vs 其他方案

vs 云端 API

对比项Ollama云端 API(如 OpenAI)
数据隐私完全本地数据上传到云端
费用免费按使用量付费
网络依赖离线可用需要网络连接
模型选择自行管理服务商提供
性能取决于本地硬件云端算力
响应速度本地推理网络延迟 + 云端推理

vs 其他本地工具

对比项OllamaLM StudioGPT4All
安装难度简单中等简单
命令行支持优秀
API 接口内置
模型管理方便图形界面图形界面
资源占用较低中等中等

适用场景

个人使用

  • 学习和体验大模型
  • 日常写作辅助
  • 代码学习和练习
  • 离线环境使用

开发测试

  • 本地开发和测试 AI 应用
  • 快速原型验证
  • 不依赖外部 API 的应用开发

企业内部

  • 数据敏感场景(不能使用云端服务)
  • 成本控制(避免 API 费用)
  • 合规要求(数据不出内网)

教育培训

  • 教学演示
  • 学生实践
  • 离线环境教学

硬件要求

最低配置

组件要求
CPU支持 AVX2 的 x86_64 处理器
内存8 GB
存储10 GB 可用空间
GPU可选,但强烈推荐

推荐配置

组件要求
CPU多核心处理器
内存16 GB 或更多
存储SSD,50 GB 可用空间
GPUNVIDIA GPU(6GB+ 显存)或 Apple Silicon

模型大小与性能

模型大小内存需求推荐显存速度
7B约 8 GB6 GB
13B约 16 GB10 GB中等
33B约 40 GB24 GB较慢
70B约 80 GB48 GB

小知识:B 代表 Billion(十亿),7B 模型约有 70 亿参数。参数越多,模型越聪明,但需要的资源也越多。

Ollama 的核心组件

模型文件

Ollama 使用 GGUF 格式的模型文件,这种格式:

  • 经过量化优化,体积更小
  • 适合 CPU 推理
  • 支持多种精度

Modelfile

类似 Dockerfile 的配置文件,用于定义模型:

FROM llama3
SYSTEM 你是一个专业的代码助手
PARAMETER temperature 0.7

HTTP API

Ollama 自带 REST API,支持:

  • 文本生成
  • 对话聊天
  • 流式输出
  • 嵌入向量

社区与生态

官方资源

第三方工具

  • Ollama WebUI - 网页界面
  • Open WebUI - 功能丰富的 Web 界面
  • AnythingLLM - 桌面应用
  • 各种编程语言的 SDK - Python、JavaScript、Go 等

常见问题

Ollama 是开源的吗?

是的,Ollama 完全开源,基于 MIT 许可证。

可以商用吗?

可以,MIT 许可证允许商业使用。但要注意:

  • 模型本身可能有额外的许可证限制
  • 某些模型(如 Llama)有使用条款

支持哪些模型?

支持所有 GGUF 格式的模型,包括:

  • Llama 系列
  • Mistral 系列
  • Gemma 系列
  • Qwen 系列
  • 以及其他开源模型

可以微调模型吗

Ollama 主要用于推理,不直接支持训练或微调。如需微调,可以使用其他工具(如 llama.cpp 的训练功能),然后用 Ollama 运行。