安装Ollama

Ollama 是一个用于运行和管理大型语言模型的工具,它是一个轻量级服务,可在本地环境中实现对模型的使用和管理,保证了数据的隐私和安全性。

Ollama 支持多种大型语言模型,例如 llama、phi、mistral、gemma 等,具有较强的功能扩展性,例如支持模型的下载、删除、更新等操作,方便用户对模型进行管理。同时,它还支持与其他工具和平台的集成,如 OpenAI 兼容的 API,进一步扩展了其应用范围和功能。

下载

​ 访问 Ollama 官网,点击 “Windows” 按钮下载安装程序,然后双击安装程序进行安装。

在这里插入图片描述

安装完成后,打开 Windows 的命令提示符(PowerShell 等),输入 ollama -v(ollama --version) 查看安装版本。

在这里插入图片描述在这里插入图片描述

若出现版本信息就代表ollama安装成功了。

配置

​ 打开系统环境变量配置,添加一个环境变量 OLLAMA_MODELS,将其值设置为你指定的文件夹路径(例如 D:\ollama_model),这样可以避免模型文件自动保存在 C 盘(C:\Users\用户\.ollama\models)导致 C 盘空间不足。修改后在这里插入图片描述
重启终端(如PowerShell或CMD)以使更改生效。

模型安装

Ollama支持的模型列表

模型 参数 模型大小 安装
Llama 3.2 3B 2.0GB ollama run llama3.2
Llama 3 8B 4.7GB ollama run llama3
Llama 3 70B 40GB ollama run llama3:70b
Phi-3 3.8B 2.3GB ollama run phi3
Mistral 7B 4.1GB ollama run mistral
Neural Chat 7B 4.1GB ollama run neural-chat
Starling 7B 4.1GB ollama run starling-lm
Code Llama 7B 3.8GB ollama run codellama
Llama 2 Uncensored 7B 3.8GB ollama run llama2-uncensored
LLaVA 7B 4.5GB ollama run llava
Gemma 2B 1.4GB ollama run gemma:2b
Gemma 7B 4.8GB ollama run gemma:7b
Solar 10.7B 6.1GB ollama run solar

可以访问 Ollama 模型仓库,查看具体支持所有模型
在这里插入图片描述

如需安装llama3.2点击进入
在这里插入图片描述

在命令行窗口中录入指令 ollama run llama3.2安装
在这里插入图片描述

安装完成后,使用命令ollama list来查看已下载的模型列表。

在这里插入图片描述

模型运行

​ 模型的运行和安装指令一样,都是ollama run 模型名称,如果模型未安装会自动安装。

在这里插入图片描述

​ 使用/bye退出

API调用

​ Ollama服务启动后可以用API访问,默认API地址是http://localhost:11434/api/generate

​ llama3 API访问文档 ollama/docs/api.md at main · ollama/ollama (github.com)

请求参数

Body 参数application/json

{
    "model": "llama3.2:latest",
    "prompt": "hello"
}

参数解释如下:

  • model(必需):模型名称。
  • prompt:用于生成响应的提示文本。
  • images(可选):包含多媒体模型(如llava)的图像的base64编码列表。

高级参数(可选):

  • format:返回响应的格式。目前仅支持json格式。
  • options:模型文件文档中列出的其他模型参数,如温度(temperature)。
  • system:系统消息,用于覆盖模型文件中定义的系统消息。
  • template:要使用的提示模板,覆盖模型文件中定义的模板。
  • context:从先前的/generate请求返回的上下文参数,可以用于保持简短的对话记忆。
  • stream:如果为false,则响应将作为单个响应对象返回,而不是一系列对象流。
  • raw:如果为true,则不会对提示文本应用任何格式。如果在请求API时指定了完整的模板化提示文本,则可以使用raw参数。
  • keep_alive:控制模型在请求后保持加载到内存中的时间(默认为5分钟)
返回响应
{
    "model": "llama3.2:latest",
    "created_at": "2024-10-24T11:59:56.0672712Z",
    "response": "Hello",
    "done": false
}
{
    "model": "llama3.2:latest",
    "created_at": "2024-10-24T11:59:56.0953897Z",
    "response": "!",
    "done": false
}
{
    "model": "llama3.2:latest",
    "created_at": "2024-10-24T11:59:56.1254815Z",
    "response": " How",
    "done": false
}
{
    "model": "llama3.2:latest",
    "created_at": "2024-10-24T11:59:56.1566546Z",
    "response": " can",
    "done": false
}
{
    "model": "llama3.2:latest",
    "created_at": "2024-10-24T11:59:56.1860801Z",
    "response": " I",
    "done": false
}
{
    "model": "llama3.2:latest",
    "created_at": "2024-10-24T11:59:56.2160333Z",
    "response": " assist",
    "done": false
}
{
    "model": "llama3.2:latest",
    "created_at": "2024-10-24T11:59:56.2465181Z",
    "response": " you",
    "done": false
}
{
    "model": "llama3.2:latest",
    "created_at": "2024-10-24T11:59:56.2778098Z",
    "response": " today",
    "done": false
}
{
    "model": "llama3.2:latest",
    "created_at": "2024-10-24T11:59:56.3085796Z",
    "response": "?",
    "done": false
}
{
    "model": "llama3.2:latest",
    "created_at": "2024-10-24T11:59:56.3406455Z",
    "response": "",
    "done": true,
    "done_reason": "stop",
    "context": [...],
    "total_duration": 3027612100,
    "load_duration": 2601356400,
    "prompt_eval_count": 26,
    "prompt_eval_duration": 145138000,
    "eval_count": 10,
    "eval_duration": 273777000
}

返回值的解释如下:

  • total_duration:生成响应所花费的总时间。
  • load_duration:以纳秒为单位加载模型所花费的时间。
  • prompt_eval_count:提示文本中的标记(tokens)数量。
  • prompt_eval_duration:以纳秒为单位评估提示文本所花费的时间。
  • eval_count:生成响应中的标记数量。
  • eval_duration:以纳秒为单位生成响应所花费的时间。
  • context:用于此响应中的对话编码,可以在下一个请求中发送,以保持对话记忆。
  • response:如果响应是以流的形式返回的,则为空;如果不是以流的形式返回,则包含完整的响应。

在这里插入图片描述

如果Ollama服务未启动,可通过指令ollama serve启动服务

在这里插入图片描述

安装Open WebUI

​ 由于Ollama运行模型是基于命令行窗口,操作不方便,通过安装Open WebUI可实现类似ChatGPT的方式与模型交互,提供友好的聊天体验。

​ Open WebUI 是一个功能丰富、用户友好的自托管 Web 用户界面,具有高性能和响应性,能够快速处理用户的请求并返回准确的答案,增强代码的可读性,对于开发者或涉及代码交流的场景非常有用。另外,Open WebUI支持检索增强生成(RAG),将文档交互无缝地集成到聊天体验中,用户可以直接将文档加载到聊天中或添加文件到文档库,并在提示符中使用特定命令访问。

前提

启用 Hyper-V 和容器功能
  • 打开 “控制面板”,选择 “程序”>“程序和功能”。
  • 在左侧选择 “启用或关闭 Windows 功能”。
  • 勾选 “Hyper-V” 和 “适用于 Linux 的 Windows 子系统” 以及 “容器”,然后点击 “确定”,等待系统配置完成并重启电脑(如果该功能不可用,需开启BIOS中的虚拟化功能)。
    在这里插入图片描述
设置DNS

将DNS的首选项设置成114.114.114.114
在这里插入图片描述

安装Docker

下载

访问 Docker 官网,选择适合你的 Windows 系统版本进行下载并安装,安装过程中可能会遇到一些问题,如网络问题导致下载缓慢、权限问题等。如果遇到问题,可以参考 Docker 官方文档或在相关技术论坛上寻求帮助。

在这里插入图片描述

验证

在命令行窗口输入docker -v(docker --version),如果能显示docker的版本信息代表安装成功了。
在这里插入图片描述

安装WebUI

打开命令提示符或 PowerShell,输入

docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main

该命令中:

  • -d:表示在后台运行容器。
  • -p 3000:8080:将容器的 8080 端口映射到主机的 3000 端口,这样你可以通过 http://localhost:3000 访问 Open WebUI。
  • --add-host=host.docker.internal:host-gateway:添加一个主机名到容器的 /etc/hosts 文件中,以便容器可以访问主机。
  • -v open-webui:/app/backend/data:将主机上的 open-webui 目录挂载到容器的 /app/backend/data 目录,确保数据库正确安装并防止数据丢失。
  • --name open-webui:为容器命名为 open-webui
  • --restart always:设置容器在退出或重启时自动重新启动。

在这里插入图片描述

安装完成之后,在浏览器中访问 http://localhost:3000。如果一切正常,你应该能看到 Open WebUI 的界面。

在这里插入图片描述

或在docker容器看到open-webui就代表安装成功并可以正常使用了。
在这里插入图片描述

配置

Open WebUI安装完成,基本不需要配置,会自动加载本机安装的Ollama环境,如果本机装的有stable-diffusion-webui环境,在图像设置里也会自动加载。
在这里插入图片描述

如果需要启用新用户注册功能,可在管理员面板中开启。

Logo

免费领 200 小时云算力,进群参与显卡、AI PC 幸运抽奖

更多推荐