Ollama 快速入门:模型参数(Model Parameter)
我的电脑显存最近越来越捉襟见肘,所以自己就想看能不能通过对ollama的优化节省出来一部分显存。本文主要以llama3:8b为例,通过设置决定模型加载进gpu的层数来优化推理效率。
交互模式指定
ollama run llama3
>>> /set parameter num_gpu 3
Set parameter 'num_gpu' to '3'
查看日志 server.log
文件可以看到加载模型GPU的层数从32层变为了3层。
设置前:
设置后:
修改模型配置文件
这个方法主要是通过修改现有模型的配置文件,得到新的 modelfile ,从而使用 modelfile 来创建一个数据集何参数相同的模型。
配置模型文件
查看 llama3:8b 模型配置文件:
ollama show llama3 --modelfile
配置文件信息如下:
# Modelfile generated by "ollama show"
# To build a new Modelfile based on this, replace FROM with:
# FROM llama3:latest
FROM E:\Ollama\models\blobs\sha256-6a0746a1ec1aef3e7ec53868f220ff6e389f6f8ef87a01d77c96807de94ca2aa
TEMPLATE "{{ if .System }}<|start_header_id|>system<|end_header_id|>
{{ .System }}<|eot_id|>{{ end }}{{ if .Prompt }}<|start_header_id|>user<|end_header_id|>
{{ .Prompt }}<|eot_id|>{{ end }}<|start_header_id|>assistant<|end_header_id|>
{{ .Response }}<|eot_id|>"
PARAMETER stop <|start_header_id|>
PARAMETER stop <|end_header_id|>
PARAMETER stop <|eot_id|>
PARAMETER num_keep 24
修改配置文件
创建模型配置文件 mymodel.modefile
,将获取的配置文件加入参数 PARAMETER num_gpu 5
,该参数表名指定加载进gpu的模型层数。
# Modelfile generated by "ollama show"
# To build a new Modelfile based on this, replace FROM with:
FROM llama3:8b
# 添加参数
PARAMETER num_gpu 5
TEMPLATE "{{ if .System }}<|start_header_id|>system<|end_header_id|>
{{ .System }}<|eot_id|>{{ end }}{{ if .Prompt }}<|start_header_id|>user<|end_header_id|>
{{ .Prompt }}<|eot_id|>{{ end }}<|start_header_id|>assistant<|end_header_id|>
{{ .Response }}<|eot_id|>"
PARAMETER num_keep 24
PARAMETER stop <|start_header_id|>
PARAMETER stop <|end_header_id|>
PARAMETER stop <|eot_id|>
创建模型
利用新建的模型配置文件创建模型命令为:
ollama create mymodel -f mymodel.modefile
创建成功后可利用ollama list
查看创建的模型:
查看修改结果
ollama run mymodel 运行模型,然后查看日志server.log文件可以看到加载模型GPU的层数变为了5层。
作者:Jeebiz 创建时间:2024-07-21 12:01
最后编辑:Jeebiz 更新时间:2024-11-21 01:00
最后编辑:Jeebiz 更新时间:2024-11-21 01:00