Ollama 模型设置参数
在 Ollama 中设置模型参数,主要通过 运行时参数、对话内临时设置 或 Modelfile 永久配置 三种方式实现。以下是核心操作指南:
一、常用模型参数说明
temperature:控制输出随机性值越低(如 0.1–0.3)→ 输出更确定、适合代码/技术问答
值越高(如 0.7–1.2)→ 输出更创意、适合写作/脑暴
num_ctx:上下文窗口长度(影响记忆能力)常见值:2048、4096、8192(数值越大,显存占用越高)
num_predict:限制单次生成的最大 token 数防止输出过长,默认通常为 2048
repeat_penalty:避免重复生成值 >1.0(如 1.1–1.5)可抑制重复语句
top_k/top_p:控制采样多样性top_k=40:从概率最高的 40 个词中选top_p=0.9:累积概率达 90% 时停止采样
num_gpu:使用 GPU 的层数(适配 AMD/NVIDIA 显卡)999表示全部层用 GPU(需驱动支持)
二、设置方法
1. 对话内临时调整(推荐新手试用)
启动模型后,使用 /set parameter 命令:
bashollama run qwen:0.6b
在对话界面中执行:
bash/set parameter temperature 0.3 /set parameter num_ctx 4096 /set parameter repeat_penalty 1.2
验证当前参数:
bash/set parameter
✅ 优点:仅当前会话生效,安全试错
❌ 缺点:退出后失效
2. 命令行启动时传参(单次生效)
bashollama run qwen:0.6b \ --temperature 0.3 \ --num_ctx 4096 \ --repeat_penalty 1.2 \ --num_predict 1024
✅ 适合脚本调用或一次性任务
3. Modelfile 永久固化(长期使用推荐)
导出原始配置(获取模板):
bashollama show --modelfile qwen:0.6b > qwen_base.modelfile
创建自定义 Modelfile(如
my_qwen.modelfile):dockerfileFROM qwen:0.6b PARAMETER temperature 0.5 PARAMETER num_ctx 4096 PARAMETER repeat_penalty 1.15 PARAMETER num_predict 1024
构建自定义模型:
bashollama create my_qwen_v1 -f ./my_qwen.modelfile
运行自定义模型:
bashollama run my_qwen_v1
✅ 优点:参数永久保存,跨会话生效
📁 模型文件路径通常位于~/.ollama/models/(Linux/macOS)或%USERPROFILE%\.ollama\models\(Windows)
三、进阶技巧
量化模型选择(节省显存):
下载时直接指定量化版本,如qwen:0.6b-q4_0、qwen:0.6b-q5_k_m
。API 调用传递参数(Python/Node.js 等):
pythonimport requests response = requests.post("http://localhost:11434/api/generate", json={ "model": "my_qwen_v1", "prompt": "你好", "options": {"temperature": 0.3, "num_ctx": 4096} })监控资源占用:
bashollama ps # 查看运行中模型及显存