使用 ollama 部署最新的Llama 3 70B本地模型

news2025/3/9 22:32:44

一、ollama是什么?

在本地启动并运行大型语言模型。运行Llama 3,Mistral, Gemma, Code Llama和其他模型。自定义并创建您自己的。
综合优点:
  • 快速下载+容器自动运行大模型,现在下载,马上上手。
  • 本地利用 cpu 运行大模型,本地安全可靠。
  • ollama 命令,管理大模型相对方便,也可以多个大模型中切换。
  • 终端直接开始聊天。
  • 社区提供了支持 web api 方式访问 WebUI。
官方网站: Ollama
github :  ollama/ollama: Get up and running with Llama 3, Mistral, Gemma, and other large language models. (github.com)

二、准备和安装工作

设备需求和辅助软件:

  • Ollama自带docker ,为了方便部署软件。
  • 良好的网络环境,大模型还是要先下载下来的。
  • 配置要求:一般来说参数越大,需要配置越好。
  • 存储空间:确保硬盘空间充足,并且学会设置环境变量来调整保存model的地址,别再下载到C盘了!

model地址和环境变量设置

win10输入path或者环境变量

增加系统环境变量

变量名(不能变):OLLAMA_MODELS

(盘符和地址自主选择,建议先创建好文件夹)D:\Ollama

下载ollama

进入 ollama 下载页面,选择自己的系统版本的下载并安装即可。

检验是否安装成功

输入 ollama 命令,正常的得出命令行输出,表示已经安装成功,下面有 ollama 的常用命令:

 ollama

Usage:
  ollama [flags]
  ollama [command]

Available Commands:
  serve       Start ollama
  create      Create a model from a Modelfile
  show        Show information for a model
  run         Run a model
  pull        Pull a model from a registry
  push        Push a model to a registry
  list        List models
  cp          Copy a model
  rm          Remove a model
  help        Help about any command

Flags:
  -h, --help      help for ollama
  -v, --version   Show version information

Use "ollama [command] --help" for more information about a command.

三、ollama 模型库

详见library (ollama.com),用于搜索已收录的模型库。以下是一些流行的模型:

模型

参数尺寸执行下载
Llama3 8B8B4.7GBollama run llama3:8b
Llama3 70B70B40GBollama run llama3:70b
Mistral7B26GBollama run mistral
Code Llama 7b7B3.8GBollama run codellama:7b
Code Llama 13b13B7.4GBollama run codellama:13b
Code Llama 34b34B19GBollama run codellama:34b
Code Llama 70b70B39GBollama run codellama:70b
Gemma2B1.7GBollama run gemma:2b
Gemma7B5GBollama run gemma:7b

Llama 3的亮点和特性如下:

  • 基于超过15T token训练,大小相当于Llama 2数据集的7倍还多;
  • 训练效率比Llama 2高3倍;
  • 支持8K长文本,改进的tokenizer具有128K token的词汇量,可实现更好的性能;
  • 在大量重要基准测试中均具有最先进性能;
  • 增强推理和代码能力;
  • 安全性有重大突破,带有Llama Guard 2、Code Shield 和 CyberSec Eval 2的新版信任和安全工具,还能比Llama 2有更好“错误拒绝表现”。

四、下载运行模型

ollama run llama3:8b # 运行llama3 8b大模型

直接使用 run 命令 + 模型名字就可以运行模型。

如果之前没有下载过,那么会自动下载。(由于网络环境的原因,一开始可能比较慢,但会随着时间进展有所优化,如果模型比较大,要耐心等待一段时间)

下载完毕之后可以在终端中直接进行对话了。

直接在终端中对话:用 llama3 模型写一个 nextjs组件或者 回答你的一些知识类问题

根据实际测试,llama3  70B在windows10环境下,基本占用32GB内存,llama3 8B基本占用16GB内存。

建议至少不低于48GB或64GB内存,否则没有足够内存支持运行其他程序。

第三方API调用

API调用默认端口11434

本地地址参考:127.0.0.1:11434

五、可视化UI界面可以试试 Open WebUI

LLMs用户友好的WebUI(以前的Ollama WebUI): open-webui/open-webui: User-friendly WebUI for LLMs (Formerly Ollama WebUI) (github.com)

docker 部署

如果您的计算机上有 Ollama,请使用以下命令:

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

如果 Ollama 位于不同的服务器上,要连接到另一台服务器上的 Ollama,请将 OLLAMA_BASE_URL 更改为服务器的 URL:

docker run -d -p 3000:8080 -e OLLAMA_BASE_URL=https://example.com -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main

安装完成后,可以通过访问Open WebUI。😄

http://localhost:3000

注意:端口3000常被其他的开发程序占用,可以根据自己的实际情况调整端口

进入聊天界面

如果您想将本地 Docker 安装更新到最新版本,可以使用 Watchtower 来完成:

在命令的最后部分,如果不同,请将 open-webui 替换为您的容器名称。

docker run --rm --volume /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --run-once open-webui

以上,只是一个基本的流程,实际使用还有很多好的功能与用法。ollama 大部分代码基于 go 开发,大家可以多多探索。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1623526.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Docker】Docker Network(网络)

文章目录 一、Docker为什么需要网络管理二、Docker网络架构简介CNMLibnetwork驱动 三、常见网络类型四、Docker网络管理命令docker network createdocker network inspectdocker network connectdocker network disconnectdocker network prunedocker network rmdocker network…

实验6 用例图

一、实验目的 1、通过绘制用例图,掌握其基本原理。 2、能对简单问题进行用例图分析,并描绘用例。 二、实验项目内容(实验题目) 1、用Microsoft Visio绘制下列描述文字的用例图。 “远程网络教学系统”的功能需求如下: 学生登…

腾讯清华联合打造Eurus:用偏好树推进大语言模型的推理能力大突破

目录 引言:推动开源大型语言模型(LLMs)在复杂推理任务中的发展 EURUS模型介绍 ULTRAINTERACT数据集的创新 EURUS在多个推理任务中的表现分析 偏好学习在推理任务中的应用和影响 EURUS-RM-7B奖励模型的评估 结论:EURUS系列模型的创新点和对开源推理…

kubernetes中DaemonSet控制器

一、概念 使用DaemonSet控制器,相当于在节点上启动了一个守护进程。通过DaemonSet控制器可以确保在每个节点上运行Pod的一个副本。如果有心的node节点加入集群,则DaemonSet控制器会自动给新加入的节点增加一个Pod的副本;反之,当有…

SKF 与KISSSOFT的连接

SKF 与KISSSOFT的连接 HEDZER TILLEMA,荷兰SKF B.V.产品线经理 最近(2019年),瑞典滚动轴承制造商斯凯孚(SKF)和瑞士齿轮箱设计软件开发商KISSsoft已将斯凯孚的轴承计算服务整合到KISSsoft的软件中。借助 K…

轻松实现宅急送快递信息自动查询

在日常生活中,我们经常需要查询快递信息,而传统的查询方式往往需要我们手动输入每一个运单号,这种方式不仅繁琐,而且效率低下。那么,有没有一种方法可以让我们更快速、更便捷地查询快递信息呢?答案是肯定的…

【Python】异常、模块与包

目录 捕获异常 异常的传递 Python中的模块 模块的导入方式 as定义别名 自定义模块 Python包 第三方包 综合案例 当我们的程序遇到了BUG, 那么接下来有两种情况: ① 整个程序因为一个BUG停止运行 ② 对BUG进行提醒, 整个程序继续运行 但是在真实工作中, 我们肯定不能…

【Spring Security系列】Spring Security整合JWT:构建安全的Web应用

前言 在企业级开发或者我们自己的课程设计中,确保用户数据的安全性和访问控制非常重要。而Spring Security和JWT是都两个强大的工具,它俩结合可以帮助我们实现这一目标。 Spring Security提供了全面的安全功能,而JWT则是一种用于身份验证的…

(C++) this_thread 函数介绍

文章目录 &#x1f6a9;前言⭐std::this_thread&#x1f579;️get_id()&#x1f5a5;️Code&#x1f516;get_id介绍&#x1f3f7;️其他介绍 &#x1f579;️sleep_for<>()&#x1f5a5;️Code&#x1f516;sleep_for介绍&#x1f3f7;️其他介绍 &#x1f579;️sleep…

第三节课,后端登录【1】

一、总任务 二、登录接口 get 请求&#xff0c;有缺陷&#xff0c;长度有限制 三、登录逻辑 四、代码书写位置 4.1 编写业务逻辑的位置 五、写代码 5.1 代码1 5.1.1 细节 按 CtrlAltShiftL ,快速格式化 5.1. 2 自动生成接口参数 先/** 再回车 效果图 5.2 按 alt enter …

数据结构练习-算法与时间复杂度

----------------------------------------------------------------------------------------------------------------------------- 1. 设n是描述问题规模的非负整数&#xff0c;下列程序段的时间复杂度是( )。 x0;while(n>(x1)*(x1)xx1; A.O(logn) B.O(n^(1/2)) C.O(n)…

ubuntu无法用快捷键启动终端(CTRL+AIT+T)

我的电脑不知道安装什么东西之后&#xff0c;就不能用快捷键&#xff08;CTRLAITT&#xff09;打开终端了 只能在文件夹内&#xff0c;点击鼠标右键选择终端&#xff0c;然后打开终端 一直这么用了几个月&#xff0c;今天实在受不了了&#xff0c;所以解决此问题 本文参考文章…

Seata 的AT模式写隔离问题,求大佬解答。

引用Seata 是什么&#xff1f; | Apache Seata AT 模式 前提​ 基于支持本地 ACID 事务的关系型数据库。Java 应用&#xff0c;通过 JDBC 访问数据库。 整体机制​ 两阶段提交协议的演变&#xff1a; 一阶段&#xff1a;业务数据和回滚日志记录在同一个本地事务中提交&…

岭回归(概念+实例)

目录 前言 一、基本概念 1. 引言 2. 岭回归的原理 3. 数学表达式 4. 岭回归的优点 5. 岭回归的局限性 6. 实际应用 二、具体实例 前言 “岭回归”这个词源于英文“Ridge Regression”&#xff0c;是一种用于处理回归分析中多重共线性&#xff08;multicollinearity&am…

java-spring-mybatis -学习第一天-基础知识讲解

目录 前置条件(创建一个项目) Mybatis 定义 可能出现的问题 这边如果连接不上数据库 ​编辑 Dao接口设计 Mybatis流程 创建实体类 User 和其属性 创建Mapper的接口类 测试类测试 实例数据库数据的更新 实例数据库数值的删除 最重要的是有一个原始的数据库 -我这边…

传统行业还在使用FTP传输?试试这套FTP替代传输解决方案!

在数字化转型的浪潮中&#xff0c;传统企业对文件传输的需求日益增长。然而&#xff0c;许多企业仍在使用传统的文件传输协议&#xff08;FTP&#xff09;来处理文件传输任务。尽管FTP在早期被广泛采用&#xff0c;但其固有的弊端逐渐成为企业发展的桎梏&#xff0c;所以找一个…

SQL中的锁

一、概述 介绍 锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中&#xff0c;除传统的计算资(CPU、RAM、I/0)的争用以外&#xff0c;数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题&#xff0c;锁冲…

大模型 AI 框架昇思 MindSpore 2.3.RC1 发布,训练、推理性能大幅提升,JIT 编译强化

经过社区开发者们几个月的开发与贡献&#xff0c;现正式发布昇思 MindSpore2.3.RC1 版本&#xff0c;通过多维混合并行以及确定性 CKPT 来实现超大集群的高性能训练&#xff0c;支持大模型训推一体架构&#xff0c;大模型开发训练推理更简、更稳、更高效&#xff0c;并在训推一…

【CMU15-445 Part-19】Multi-Version Concurrency Control

Part19-Multi-Version Concurrency Control 其实说到底 MVCC不仅是一种并发控制协议&#xff0c;更是一个系统构建&#xff08;数据组织的方法&#xff09;。 简介 writer 不会 block readers&#xff0c;reader 也不会 block writers。只读事务可以读到一个consistent的sna…

nlp 自然语言处理的dataset数据库积累

下面的这个和 entity recognition有关的。 Weights & Biases