首页
看点啥
插画图片
首页 看点啥 Ollama 基本概念说明

Ollama 基本概念说明

2026-08-03 0

Ollama 是一个本地化的、支持多种自然语言处理(NLP)任务的机器学习框架,专注于模型加载、推理和生成任务。

通过 Ollama,用户能够方便地与本地部署的大型预训练模型进行交互。

以下是 Ollama 的核心概念:

1. 模型(Model)

在 Ollama 中,模型是核心组成部分。它们是经过预训练的机器学习模型,能够执行不同的任务,例如文本生成、文本摘要、情感分析、对话生成等。

这是 Ollama 的核心。你可以从 Ollama 的模型库中拉取并运行各种开源模型。

标识符:每个模型都有一个名称和标签,格式通常是 模型名:标签

例子llama3:8bqwen:7bmistral:latest

latest 通常指默认或最新的版本。

Ollama 支持多种流行的预训练模型,常见的模型有:

  1. deepseek-v3:深度求索提供的大型语言模型,专门用于文本生成任务。
  2. LLama2:Meta 提供的大型语言模型,专门用于文本生成任务。
  3. GPT:OpenAI 的 GPT 系列模型,适用于广泛的对话生成、文本推理等任务。
  4. BERT:用于句子理解和问答系统的预训练模型。
  5. 其他自定义模型:用户可以上传自己的自定义模型,并利用 Ollama 进行推理。

模型的主要功能:

  1. 推理(Inference):根据用户输入生成输出结果。
  2. 微调(Fine-tuning):用户可以在已有模型的基础上使用自己的数据进行训练,从而定制化模型以适应特定的任务或领域。

模型通常是由大量参数构成的神经网络,通过对大量文本数据进行训练,能够学习语言规律并进行高效的推理。

Ollama 支持的模型可以访问:https://ollama.com/library

点击模型,可以查看到下载的命令:

下表列出一些模型的下载命令:

模型参数大小下载命令
Llama 3.370B43GBollama run llama3.3
Llama 3.23B2.0GBollama run llama3.2
Llama 3.21B1.3GBollama run llama3.2:1b
Llama 3.2 Vision11B7.9GBollama run llama3.2-vision
Llama 3.2 Vision90B55GBollama run llama3.2-vision:90b
Llama 3.18B4.7GBollama run llama3.1
Llama 3.1405B231GBollama run llama3.1:405b
Phi 414B9.1GBollama run phi4
Phi 3 Mini3.8B2.3GBollama run phi3
Gemma 22B1.6GBollama run gemma2:2b
Gemma 29B5.5GBollama run gemma2
Gemma 227B16GBollama run gemma2:27b
Mistral7B4.1GBollama run mistral
Moondream 21.4B829MBollama run moondream
Neural Chat7B4.1GBollama run neural-chat
Starling7B4.1GBollama run starling-lm
Code Llama7B3.8GBollama run codellama
Llama 2 Uncensored7B3.8GBollama run llama2-uncensored
LLaVA7B4.5GBollama run llava
Solar10.7B6.1GBollama run solar

核心操作命令

拉取模型ollama pull <模型名>(例如 ollama pull llama3)。这会从模型库下载模型到你的本地。

运行模型ollama run <模型名>。这会加载模型到内存中,并直接在终端里打开一个交互式的对话界面。

创建模型ollama create <新模型名> -f ./Modelfile。根据你的 Modelfile 创建一个自定义模型。

列出模型ollama list。查看本地已经下载了哪些模型。

删除模型ollama rm <模型名>

2. 任务(Task)

Ollama 支持多种 NLP 任务。每个任务对应模型的不同应用场景,主要包括但不限于以下几种:

  1. 对话生成(Chat Generation):通过与用户交互生成自然的对话回复。
  2. 文本生成(Text Generation):根据给定的提示生成自然语言文本,例如写文章、生成故事等。
  3. 情感分析(Sentiment Analysis):分析给定文本的情感倾向(如正面、负面、中立)。
  4. 文本摘要(Text Summarization):将长文本压缩为简洁的摘要。
  5. 翻译(Translation):将文本从一种语言翻译成另一种语言。

通过命令行工具,用户可以指定不同的任务,并加载不同的模型来完成特定任务。

3. 推理(Inference)

推理是指在已训练的模型上进行输入处理,生成输出的过程。

Ollama 提供了易于使用的命令行工具或 API,使用户可以快速向模型提供输入并获取结果。

推理是 Ollama 的主要功能之一,也是与模型交互的核心。

推理过程:

  1. 输入:用户向模型提供文本输入,可以是一个问题、提示或者对话内容。
  2. 模型处理:模型通过内置的神经网络根据输入生成适当的输出。
  3. 输出:模型返回生成的文本内容,可能是回复、生成的文章、翻译文本等。

Ollama 通过 API 或 CLI 与本地模型交互,能够让用户轻松实现推理任务。

4. 微调(Fine-tuning)

微调是指在一个已预训练的模型上,基于特定的领域数据进行进一步的训练,以便使模型在特定任务或领域上表现得更好。

Ollama 支持微调功能,用户可以使用自己的数据集对预训练模型进行微调,来定制模型的输出。

微调过程:

  1. 准备数据集:用户准备特定领域的数据集,数据格式通常为文本文件或 JSON 格式。
  2. 加载预训练模型:选择一个适合微调的预训练模型,例如 LLama2 或 GPT 模型。
  3. 训练:使用用户的特定数据集对模型进行训练,使其能够更好地适应目标任务。
  4. 保存和部署:训练完成后,微调过的模型可以保存并部署,供以后使用。

微调有助于模型在处理特定领域问题时表现得更加精确和高效。

5. API 服务

Ollama 不仅仅是一个命令行工具,它在后台运行一个 本地服务器

当你运行 ollama serve 或首次执行 ollama run 时,服务会自动启动,默认监听地址 127.0.0.1:11434

它提供了一个 RESTful API,允许你通过 HTTP 请求与模型交互。这使得你可以用 Python、JavaScript 或其他编程语言来调用本地的大模型。

简单的 API 调用示例

curl http://localhost:11434/api/generate -d '{  "model": "llama3",  "prompt": "为什么天空是蓝色的?"}'

6. Modelfile

模型文件:Ollama 使用一种叫做 Modelfile 的文件来定义和创建模型(类似于 Docker 的 Dockerfile)。你可以基于现有模型进行定制,比如修改温度参数、设置系统提示词或导入 GGUF 格式的模型文件。

Ollama 官方提供了一个模型库,里面列出了支持的模型架构(如 Llama 3, Qwen 2, Mistral, Phi-3 等)。你可以直接通过命令搜索和下载。

这是定义模型配置的文件。包含的关键参数有:

FROM:指定基础模型(必须是本地已拉取的)或模型文件的路径。

SYSTEM:设置系统提示词,定义模型的行为和角色。

PARAMETER:设置运行参数,例如 temperature(温度,控制创造力)、top_pnum_ctx(上下文长度)等。

TEMPLATE:指定提示词的模板格式。

7. 上下文

在对话中,上下文指的是模型能够“记住”的之前的对话内容。上下文长度(由 num_ctx 控制)决定了模型在处理新请求时,能参考多少之前的文本。上下文越长,占用的内存就越多。

8. 量化

为了减少模型占用的内存和提高推理速度,模型通常会进行量化。模型名称中常包含表示量化级别的字母:

q4_0, q5_1, q8:表示不同的量化精度。q4 占用内存较小,但精度略低;q8 占用较大,但更接近原始模型。GGUF 格式的模型常采用这种命名方式。

总结

喜欢(0)

上一篇

CAD工程图丢失链接如何解决

CAD工程图丢失链接如何解决

下一篇

查看Ollama GPU资源使用情况的两种做法

查看Ollama GPU资源使用情况的两种做法
猜你喜欢