Ollama微调

Ollama是一款开源工具,其目标是简化大语言模型在本地环境的部署和使用。它支持多种流行的开源大语言模型,如 Llama 2、Qwen2.5等。在上一篇文章中我们部署Ollama,并使用简单命令管理Ollama。接下来我们学习Ollama的高级应用。通过Ollama的ModeFile文件进行微调。
Ollama微调

通过ModelFile微调

1、创建名为Modelfile的空白文件。
2、在空白文件内写配置信息。

FROM qwen2.5:0.5b

# set the temperature to 1 [higher is more creative, lower is more coherent]
PARAMETER temperature 1

# set the system message
SYSTEM """
你是张小明。回答问题时,你的名字叫小明。
"""

3、写完之后,打开cmd 。(xiaom换为你要起的名字)。

输入下面指令:
ollama create xiaom -f Modelfile

4、启动模型
ollama rm xiaom

5、进行对话

>>> 你是谁?
我是小明。来自AI世界,专注于深度学习和智能技术的探索与实践。

可以看到SystemMessage已生效。

ps,下面是另一个SystemMessage。但SystemMessage未达到预期效果。

SYSTEM """
你的名字是张小明。
"""
>>> 你是谁?
我是阿里云推出的大规模语言模型,我叫通义千问。

ModelFile文件介绍

在 Ollama 里,Modelfile 是用来定义和配置模型的文件,其中包含众多参数用于控制模型的构建、训练和使用。

FROM qwen2.5:0.5b

# set the temperature to 1 [higher is more creative, lower is more coherent]
PARAMETER temperature 1

# set the system message
SYSTEM """
你是张小明。回答问题时,你的名字叫小明。
"""

FROM

指定基于某个基础模型生成新的模型。可以是本地已存在的模型或者是GGUF文件。

PARAMETER

设置模型的超参数。

常用参数如下:

参数名说明适用场景
num_ctx上下文长度,即模型在生成文本时能够考虑的输入标记(tokens)数量。更长的上下文可以让模型参考更多前文信息,但会增加内存和计算开销。需要处理长文本或需要模型参考大量前文信息的场景,如长文档问答、长篇故事生成等。
temperature控制生成文本的随机性。值越大,输出越随机、多样化;值越小,输出越确定、保守。在需要多样化输出(如创意写作)时增大该值,需要稳定、准确输出(如事实性问答)时减小该值。
top_k在生成文本时,只考虑概率排名前top_k的标记。限制可选标记范围,可减少随机性。希望控制生成文本的范围,避免生成过于随机或不相关内容时使用。
top_p核采样(Nucleus Sampling)参数,只考虑累积概率达到top_p
的标记集合。与top_k
类似,用于控制生成的随机性。
top_k结合使用或单独用于更灵活地控制生成文本的随机性。
repeat_penalty重复惩罚因子,用于减少生成文本中重复内容的出现。值越大,对重复内容的惩罚越严重。当生成文本容易出现重复表述时使用,提高输出的多样性。

TEMPLATE

定义提示模板,用于在与模型交互时生成提示。模板可以包含变量,这些变量会在运行时被替换为实际的值。

例子:TEMPLATE “{{.Input}}\n—\n” ,输入会被替换到 {{.Input}} 位置。

SYSTEM

定义系统指令,用于设置模型的初始行为和角色。

例子:SYSTEM “你是一个知识渊博的助手,能准确回答各种问题。”

ADAPTER

如果使用适配器来微调模型,使用此参数指定适配器文件。

例子:ADAPTER /path/to/adapter.bin ,指定适配器文件的路径。

LABEL

为模型添加标签,方便对模型进行分类和识别。

参考

通过ollama(modelfile)微调deepseek,制作自己的大模型-优快云博客

ollama/docs/modelfile.md at main · ollama/ollama

2、模型文件(Modelfile) - Powered by MinDoc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值