0、前言
先说几个核心结论:在本地跑大模型这件事上,Ollama 是目前最轻量的方案之一,配合 Qwen2.5 在 Win11 下表现非常顺畅。最吸引人的地方在于——不需要独立显卡也能运行,数据隐私完全自己掌控。整篇文章将围绕这些核心环节展开:Ollama 的安装步骤、Modelfile 的配置方法、ModelScope 的实际用途、Notebook 的角色定位,以及最终如何通过 API 接入这个本地模型。
完成这次部署后,你会搞懂:
- Ollama 的功能定位,以及安装与使用方式;
- Modelfile 的书写格式与参数含义;
- ModelScope 在整个流程中承担什么角色;
- Notebook 在什么场景下值得启用;
- 如何组合这些工具,部署成功后通过 API 实现调用。
1、环境与准备
先放上我的实际测试配置,便于你对照参考:
- Win11:Windows 11 专业版 25H2
- CPU:Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz (2.21 GHz)
- 内存:16.0 GB
- 显卡:GTX1050Ti(说实话比较鸡肋,这次实践基本没派上用场)
- Ollama:0.17.7
- 大模型:
- qwen2.5-3b-instruct-q4_k_m
- qwen2.5-7b-instruct-q4_k_m
前置依赖检查
- PowerShell(Win11 自带的版本足够)
- Git(可选,用于下载资源)
- Python(只有在使用 ModelScope CLI 时才需要;如果直接浏览器下载,可以不装)
2、核心概念速览
2.1、模型文件名 qwen2.5-3b-instruct-q4_k_m.gguf 到底在说什么?
文件名通常长这样:qwen2.5-3b-instruct-q4_k_m.gguf。
instruct 表示该模型经过指令微调,适合对话场景;如果是 base 版本,更适合做续写或二次微调,直接对话效果不佳。
1)q + 数字:代表每个参数用了多少 bit 存储。
- 数字越小 = 文件体积越小 = 推理速度越快 = 智能程度略有下降;
- 数字越大 = 文件体积越大 = 推理速度越慢 = 理论精度更高;
- 业内共识:4-bit(q4)是性价比最优选,智商损失几乎不可察觉,体积却能直接减半。
2)k:采用 K-quants 量化技术,相比老式 q4_0 更聪明,压缩效率更高。
3)m/s/l:分别代表 Small(小)、Medium(中)、Large(大)。
- q4_k_s:体积更小,智能稍弱;
- q4_k_m:标准版,平衡性最好,优先推荐;
- q4_k_l:体积更大,智能稍强,但对显存要求更高。
2.2、Modelfile 的基本结构与含义
Modelfile 是 Ollama 的“灵魂配置”,它告诉系统模型来源、对话方式、输出风格。基本结构如下:
FROM
SYSTEM
PARAMETER
TEMPLATE
ADAPTER
PROJECTOR
MESSAGE
LICENSE
逐条解释:
- FROM :指定基础模型,必填项。
- SYSTEM :设置系统提示词,相当于给模型设定一个角色人设。
- PARAMETER :设置推理参数,例如温度、上下文长度。
- TEMPLATE :定义对话模板格式,告诉模型如何解析用户消息。
- ADAPTER :加载 LoRA 适配器文件,用于微调过的模型。
- PROJECTOR :加载多模态投影器,使模型具备图像理解能力。
- MESSAGE :预设对话示例,可用于 Few-shot prompting。
- LICENSE :声明模型的许可证信息。
实际使用中,通常只需以下三行:
FROM llama3
SYSTEM "你是个诗人"
PARAMETER temperature 0.8
2.3、Notebook 是什么?
虽然本文主要聚焦本地部署,但若本地硬件资源确实紧张(比如显存捉襟见肘),ModelScope Notebook 是一个不错的云端备选——可以免费体验大模型,完全无需操心本地配置。
2.4、运行大模型的通俗理解
把运行大模型想象成“搬家”,更容易理解:
- 量化等级(Quantization) = 家具打包压缩的程度,压得越紧箱子越小,但有个极限;
- 推理框架 = 运输工具的选择,选对了搬得又快又稳;
- 上下文长度(Context Length)= 本次搬运的物品总量,记忆量越大,占用的空间也越大。
3、实战部署:安装与运行
3.1、安装 Ollama
从 Ollama 官网下载安装包,一路默认选项即可。安装完成后在终端输入版本号验证:
ollama -v
ollama version is 0.17.7
3.2、方式一:一键拉取(官方推荐)
这是最省事的方案,无论通过 Ollama 界面还是命令行,一行命令搞定:
ollama run qwen2.5:3b
下载、加载、运行一条龙,适合快速体验。
3.3、方式二:自定义导入(进阶)
如果你想更灵活地控制模型版本,比如使用自己下载的 GGUF 文件,就需要走这条路。
1)从 ModelScope 下载 GGUF 文件
以 Qwen2.5-3B-Instruct-GGUF 为例(这也是我实际部署的版本)。可以直接在浏览器中下载,找到类似 qwen2.5-3b-instruct-q4_k_m.gguf 的文件即可。
2)编写 Modelfile 文件
新建一个文件,命名为 Modelfile,内容如下(注意路径要替换成你电脑上的实际位置):
FROM "G:\AI\Model\files\qwen2.5-3b\qwen2.5-3b-instruct-q4_k_m.gguf"
TEMPLATE """{{- if .Messages }}{{- range $i, $_ := .Messages }}{{- $last := eq (len (slice $.Messages $i)) 1 }}{{- if eq .Role "user" }}<|im_start|>user{{ .Content }}<|im_end|>{{ else if eq .Role "assistant" }}<|im_start|>assistant{{ .Content }}<|im_end|>{{ else if eq .Role "system" }}<|im_start|>system{{ .Content }}<|im_end|>{{ end }}{{- if $last }}<|im_start|>assistant{{ end }}{{- end }}{{- else }}{{- if .System }}<|im_start|>system{{ .System }}<|im_end|>{{ end }}{{ if .Prompt }}<|im_start|>user{{ .Prompt }}<|im_end|>{{ end }}<|im_start|>assistant{{ end }}"""
PARAMETER stop <|im_end|>
PARAMETER stop <|im_start|>
PARAMETER temperature 0.7
PARAMETER top_p 0.8
PARAMETER top_k 20
PARAMETER repeat_penalty 1.05
LICENSE """https://huggingface.co/Qwen/Qwen2.5-3B-Instruct/blob/main/LICENSE"""
如果只想快速测试,最简单的版本只需一行:
FROM "F:\Downloads\qwen2.5-3b-instruct-q4_k_m.gguf"
但这种极简配置,自问自答几乎不可用,因此建议配完整。
3)创建模型
打开 PowerShell,切换到 Modelfile 所在目录,执行:
ollama create qwen2.5:3b -f Modelfile
或者使用绝对路径:
ollama create qwen2.5:3b -f G:\AI\Model\files\qwen2.5-3b\Modelfile
4)运行模型
ollama run qwen2.5:3b
运行后可以查看大模型的实时状态参数:
- SIZE:占用内存大小;
- PROCESSOR:如果显示 100% CPU,说明模型完全跑在中央处理器上,未启用显卡加速(我的显卡仅有4GB显存,确实带不动);
- CONTEXT:当前会话保留的“记忆”长度(Token 数量),数字越大占用的内存也越多;
- UNTIL:自动卸载倒计时,如果无人使用,Ollama 会在2分钟后自动将模型从内存中卸载,释放资源。
5)示例:Qwen2.5-7B 的配置
配置思路完全一致,仅文件不同:
FROM ./qwen2.5-7b-instruct-q4_k_m.gguf
TEMPLATE """{{- if .System }}<|im_start|>system{{ .System }}<|im_end|>{{- end }}<|im_start|>user{{ .Prompt }}<|im_end|><|im_start|>assistant"""
PARAMETER stop <|im_end|>
PARAMETER stop <|im_start|>
PARAMETER temperature 0.7
PARAMETER top_p 0.8
PARAMETER top_k 20
SYSTEM "你是一个有帮助的AI助手。"
4、通过API访问大模型
4.1、启动服务
ollama serve
默认情况下 Ollama 只允许本机连接。若需要局域网内其他设备访问,需按提示调整环境变量或防火墙设置。
4.2、PowerShell 中测试接口
curl http://192.168.2.111:11434/api/generate -d "{\"model\": \"qwen2.5:3b\", \"prompt\": \"hello\"}"
curl http://192.168.31.87:11434/api/tags
记得替换成你自己的局域网 IP。
4.3、后台运行技巧
Start-Process ollama -ArgumentList "run","qwen2.5:3b" -WindowStyle Hidden
这样模型会安静地跑在后台,不会弹出窗口干扰工作。
5、常用命令速查表
# 查看帮助
ollama -h
# 查看本地已下载的模型
ollama list
# 下载并运行模型
ollama run qwen2.5:3b
# 单次问答
ollama run qwen2.5:3b "你好,请介绍一下你自己"
# 删除模型
ollama rm <模型名>
# 启动后台服务
ollama serve
# 查看模型详情
ollama show <模型名>
# 查看正在运行的模型
ollama ps
# 停止模型
ollama stop qwen2.5:3b
6、附录与参考资料
6.1、文档资料链接
1)Ollama:官网和文档都提供了详尽的快速入门指南。
2)魔搭 ModelScope:可找到各类模型的 GGUF 版本。
3)Python 3.11.9:若使用 ModelScope CLI,需安装对应版本。
6.2、ModelScope Pip 安装详解
# 安装 Python
python -V
Python 3.11.9
# 安装魔搭
pip install modelscope
# 下载完整模型库
modelscope download --model Qwen/Qwen2.5-3B-Instruct-GGUF
# 下载单个文件到指定本地文件夹(以下载 README.md 到当前路径下的 dir 目录为例)
modelscope download --model Qwen/Qwen2.5-3B-Instruct-GGUF README.md --local_dir ./dir