Ollama高手,玩转本地自定义大模型(LLM)

Ollama系列文章:
Ollama入门,一键启动本地DeepSeek大模型
Ollama入门,Ollama技术架构与原理
Ollama进阶,在Python、Java、Go项目中集成Deepseek、QWQ大模型
Ollama进阶,在Javascript(nodejs)前后端项目中集成Deepseek、QWQ大模型
Ollama高手,玩转本地自定义大模型(LLM)
Ollama高手,调优Ollama环境变量,提高性能与安全性
Ollama高手,调优Ollama模型参数,提高模型输出质量


在Ollama进阶过程中,我们通过前面的两篇文章了解了如何将Ollama大模型服务应用到自己的项目中,这使得Deepseek、QWQ之类的本地大模型有了具体的用途。

然而在实际的项目中,需求往往是千变万化的,一个大模型可能满足不了需求,甚至有时需要的也不一定是大模型,而是嵌入式模型、视觉模型、语音模型等等面向特定需要的模型。

好在Ollama官方提供了模型库,用户可以通过ollama pull命令拉取到本地使用。

1、Ollama 官方模型

Ollama 收录了主流厂商的开源大模型,包括阿里巴巴的Qwen、深度求索的DeepSeek、Meta的Llama、Google的Gemma、Microsoft的Phi等等,详细如下表:

模型厂商模型系列模型版本模型用途
阿里巴巴QwenQwen 1.5、Qwen 2、Qwen 2.5、Qwen 2.5 Coder通用大模型、代码生成
阿里巴巴QwQQwQ 32B推理模型
深度求索DeepSeekDeepSeek-R1、DeepSeek Coder V2、DeepSeek V3通用大模型、代码生成
MetaLlamaLlama 2、Llama 3、Llama 3.1、Llama 3.2、Llama 3.3通用大模型
Google DeepMindGemmaGemma、Gemma 2、Gemma 3、Gemma 3 Vision通用大模型、视觉模型
MicrosoftPhiPhi-2、Phi-3、Phi-4通用大模型
Mistral AIMistralMistral、Mistral-Nemo通用大模型、嵌入式模型
LLaVA ProjectLLaVALLaVA视觉模型,多模态模型
StarCoderStarCoderStarCoder2代码生成
TinyLlamaTinyLlamaTinyLlama嵌入式模型
NVIDIA & MistralNemoMistral-Nemo通用大模型,支持长上下文
OllamaDolphinDolphin 3.0通用大模型
OllamaCommand RCommand R 35B通用大模型,长上下文处理
OllamaOrcaOrca Mini 3B、7B、13B、70B通用大模型,入门级硬件

一般情况下可以直接从官方模型库中选择合适的模型使用。

2、自定义模型

如果在实际项目中需要根据自身行业特征、企业自有数据集对一些通用模型进行微调,如专业的医疗诊断、法律助手、企业客服机器人等;或者其他平台如Hugging Face提供了,但Ollama模型库中还没有的模型,这时就需要自定义模型。
要自定义模型可以按以下步骤进行:

STEP1、准备自定义模型

在开始自定义模型前需要明确以下几点:
1.Ollama主要支持GGUF Engine、LLAMA.cpp两类推理引擎;
2.Ollama 支持 LLaMA、Mistral、Gemma 等架构。确保您的模型文件符合支持的架构。
3.事先需要准备好自定义模型文件,Ollama支持的格式包括 SafetensorsGGUF

STEP2、创建 Modelfile

Ollama 使用 Modelfile 来定义模型的加载和配置。Modelfile的格式如下:

指令描述
FROM(必需)定义要使用的基础模型或者架构。
PARAMETER设置Ollama运行模型的参数。
TEMPLATE要发送到模型的完整提示模板。
SYSTEM指定将设置在模板中的系统消息。
ADAPTER定义要应用于模型的(Q)LoRA适配器。
LICENSE指定法律许可。
MESSAGE指定消息历史。

下面是一个具体的示例:

# 使用基础模型
FROM llama2

# 指定模型路径
MODEL /path/to/model.safetensors

# 设置参数
PARAMETER temperature=0.7
PARAMETER max_tokens=4096

一个模型可以设置一个或多个参数,具体有:

参数描述值类型示例用法
mirostat启用 Mirostat 采样以控制困惑度。(默认值: 0, 0 = 禁用, 1 = Mirostat, 2 = Mirostat 2.0)整数mirostat 0
mirostat_eta影响算法对生成文本反馈的响应速度。较低的学习率会导致调整速度较慢,而较高的学习率会使算法更具响应性。(默认值: 0.1)浮点数mirostat_eta 0.1
mirostat_tau控制输出的连贯性和多样性之间的平衡。较低的数值会导致更加聚焦和连贯的文本。(默认值: 5.0)浮点数mirostat_tau 5.0
num_ctx设置用于生成下一个 Token 的上下文窗口大小。(默认值: 2048)整数num_ctx 4096
num_ gqaTransformer 层中的 GQA 组数。某些模型需要,例如 llama2:70b 需要设置为 8整数num_ gqa 1
num_gpu发送到 GPU 的层数。在 macOS 上,默认值为 1 以启用 Metal 支持,为 0 则禁用。整数num_gpu 50
num_thread设置计算过程中要使用的线程数。默认情况下,Ollama 会检测以获得最佳性能。建议将此值设置为系统实际物理 CPU 核心数(而非逻辑核心数)。整数num_thread 8
repeat_ last_ n设置模型回顾以避免重复的范围。(默认值: 64, 0 = 禁用, -1 = num_ctx)整数repeat_ last_ n 64
repeat_penalty设置惩罚重复的强度。较高的值(例如 1.5)会更严厉地惩罚重复,而较低的值(例如 0.9)会更宽容。(默认值: 1.1)浮点数repeat_penalty 1.1
temperature模型的温度。增加温度会使模型更具创造性。(默认值: 0.8)浮点数temperature 0.7
seed设置用于生成的随机数种子。将其设置为特定数字将使模型对相同提示生成相同的文本。(默认值: 0)整数seed 42
stop设置要使用的停止序列。当遇到此模式时,LLM 将停止生成文本并返回。可以通过在模型文件中指定多个单独的 stop 参数来设置多个停止模式。字符串stop “AI assistant:”
tfs_z尾部自由采样用于减少输出中较不可能的 Token 的影响。较高的值(例如 2.0)会更大程度地减少影响,而值为 1.0 则禁用此设置。(默认值: 1)浮点数tfs_z 1
num_predict生成文本时要预测的最大 Token 数。 (默认值: 128, -1 = 无限生成, -2 = 填充上下文)整数num_predict 42
top_k减少生成无意义文本的概率。较高的值(例如 100)会给出更多样化的答案,而较低的值(例如 10)会更保守。(默认值: 40)整数top_k 40
top_p与 top-k 一起使用。较高的值(例如 0.95)会导致更多样化的文本,而较低的值(例如 0.5)会生成更聚焦和保守的文本。(默认值: 0.9)浮点数

STEP3、导入模型

使用以下命令导入模型:

ollama create my-custom-model -f /path/to/Modelfile

参数解析

  • my-custom-model:自定义模型的名称。
  • -f:指定 Modelfile 的路径。

导入成功后,模型会被存储在 Ollama 的本地模型库中。

STEP4、运行和测试模型

导入完成后,可以直接运行模型进行测试:

ollama run my-custom-model

示例:

ollama run my-custom-model -p "你是谁?"
### ComfyUI Ollama 项目概述 ComfyUI Ollama 是一个致力于简化大模型部署和使用的开源项目[^1]。此项目旨在提供一套完整的工具链,使得开发者能够更轻松地集成并应用先进的AI技术到实际场景中。 #### 主要功能特性 - **简易安装**:提供了详细的本地环境搭建说明以及依赖项管理方法,确保用户可以快速上手。 - **灵活配置**:支持多种硬件平台,并针对不同需求进行了优化设置,方便调整参数以适应特定应用场景。 - **高效运行**:经过精心设计的数据流处理机制,在保证性能的同时降低了资源消耗。 #### 编程语言和技术栈 该项目主要采用 Python 编写而成,利用其丰富的机器学习框架生态优势来进行开发工作。此外还涉及到 Docker 容器化技术用于隔离运行环境,提高系统的稳定性和可移植性。 ### 使用指南概览 为了使更多的人受益于这项强大的技术成果,《本地安装Ollama大模型与使用指南》应运而生[^2]。这份文档不仅涵盖了从零开始构建所需软硬件条件直至成功启动服务端口全过程的操作指引;同时也包含了常见问题解答部分,帮助解决可能遇到的技术难题。 对于初次接触此类项目的读者来说,建议按照官方提供的步骤逐一操作,这样不仅可以减少不必要的麻烦,还能加深对整个流程的理解程度。 ```bash # 克隆仓库至本地 git clone https://gitcode.com/gh_mirrors/co/comfyui-ollama.git # 进入项目目录 cd comfyui-m venv .venv && source .venv/bin/activate # 安装依赖包 pip install -r requirements.txt ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值