Ollama教程,本地部署大模型Ollama,docker安装方法,仅供学习使用

不可商用!!仅仅提供学习使用!

先上视频教学:

Ollama教程,本地部署大模型Ollama,docker安装方法,仅供学习使用!



资料获取   :

Ollama下载包和安装文档在这里:  阿里云地址

[打call]

[打call]

[星星眼]


https://www.alipan.com/s/ft9WkSX5zbH
点击链接保存,或者复制本段内容,打开「阿里云盘」APP ,无需下载极速在线查看,视频原画倍速播放。​​​​​​​

简易教学

Ollama教程:本地部署大模型Ollama

一、Ollama简介

Ollama是一个开源的大型语言模型服务工具,它帮助用户快速在本地运行大模型。用户可以通过简单的安装指令,在本地运行开源大型语言模型,如Llama 2等。

二、本地部署Ollama

  1. 下载Ollama
    • 访问Ollama官网(https://ollama.ai/download),根据你使用的系统下载相应版本。
    • 截止到2024年2月16日,Ollama已经支持Windows系统。
  2. 安装Ollama
    • 在Linux系统中,可以通过执行以下命令进行安装:curl https://ollama.ai/install.sh | sh
    • 在Windows系统中,直接双击运行安装文件即可。
  3. 使用Ollama
    • 访问Ollama的模型库(https://ollama.ai/library),检索并运行你想使用的模型。例如,运行Llama 2的命令为:ollama run llama2
  4. 配置Ollama的模型路径
    • Ollama的模型默认会存储在用户文件夹下的.ollama/models文件夹中。你可以通过配置环境变量OLLAMA_MODELS来指定模型路径。
  5. 下载和运行模型
    • 以llama3模型为例,该模型有8B和70B两个版本,分别代表80亿和700亿个训练参数。你可以通过命令ollama run llama3来默认安装8B模型,或者使用ollama run llama3:8b来指定安装8B模型。

Docker安装Ollama方法

  1. 安装NVIDIA Container Toolkit(如果使用NVIDIA GPU)
    • 配置repository:curl -s -L <https://nvidia.github.io/libnvidia-container/stable/rpm/nvidia-container-toolkit.repo> | sudo tee /etc/yum.repos.d/nvidia-container-toolkit.repo
    • 安装NVIDIA Container Toolkit包:sudo yum install -y nvidia-container-toolkit
  2. 配置Docker以使用NVIDIA驱动
    • 执行命令:sudo nvidia-ctk runtime configure --runtime=docker
    • 重启Docker服务:sudo systemctl restart docker
  3. 拉取和运行Ollama镜像
    • 使用CUDA运行:docker run -d --restart=always --gpus=all -v /mydata/docker/local/ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
    • 使用AMD显卡运行:docker run -d --restart=always --device /dev/kfd --device /dev/dri -v /mydata/docker/local/ollama/ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama:rocm
  4. 运行模型
    • 首次运行会拉取镜像,之后可以直接运行。例如,运行Llama3 7B的命令为:docker exec -it ollama ollama run llama3

以上是关于Ollama本地部署和Docker安装方法的详细教程。

补充

配置Ollama的模型路径

配置Ollama的模型路径通常涉及到设置环境变量,这样Ollama就能知道在哪里查找和加载模型文件。以下是一般步骤来配置Ollama的模型路径:

  1. 确定模型存储位置
    首先,你需要确定你的模型文件存放在哪个目录下。这个目录可以是本地文件系统上的任何位置。

  2. 设置环境变量
    在Unix/Linux系统中,你可以使用export命令来设置环境变量。在Windows系统中,你可以通过“系统属性”->“高级”->“环境变量”来设置。

    对于Unix/Linux系统,你可以打开你的shell配置文件(比如~/.bashrc~/.bash_profile),并添加以下行来设置环境变量:

     

    bash复制代码

    export OLLAMA_MODELS=/path/to/your/models

    替换/path/to/your/models为你的模型实际存放的目录路径。

    然后,你需要使这个更改生效。如果你已经打开了shell,你可以运行source ~/.bashrc(或你的配置文件名)来加载新的环境变量。否则,你可以关闭并重新打开你的shell。

    对于Windows系统,你需要:

    • 右键点击“此电脑”或“计算机”,选择“属性”。
    • 点击“高级系统设置”。
    • 在“高级”选项卡中,点击“环境变量”。
    • 在“系统变量”部分,点击“新建”来创建一个新的环境变量。
    • 输入变量名OLLAMA_MODELS和变量值(即你的模型路径)。
    • 点击“确定”保存更改。
  3. 重启Ollama
    如果你已经运行了Ollama服务,你可能需要重启它以使新的环境变量设置生效。这通常可以通过停止服务并重新启动来完成。

  4. 验证配置
    在Ollama中运行一个命令来加载或列出模型,以确保Ollama能够正确找到并加载模型文件。

注意,Ollama的确切配置方法可能会根据其版本和文档有所不同。因此,建议参考Ollama的官方文档或GitHub存储库中的README文件以获取最准确的信息。此外,如果Ollama提供了一个配置文件或命令行选项来设置模型路径,那么你也可以使用那些方法。

找不到环境变量在哪里?

当您提到找不到环境变量在哪里时,我理解您可能是在询问如何在不同的操作系统中查看或设置环境变量。以下是在不同操作系统中查看和设置环境变量的清晰步骤:

Windows系统

  1. 查看环境变量
    • 右键点击“此电脑”或“计算机”,选择“属性”。
    • 点击“高级系统设置”。
    • 在“高级”选项卡中,点击“环境变量”。
    • 在这里,您可以看到“用户变量”和“系统变量”两个部分。用户变量仅对当前用户有效,而系统变量对所有用户都有效。
  2. 设置环境变量
    • 在“用户变量”或“系统变量”部分,点击“新建”来创建一个新的环境变量。
    • 输入变量名(如MY_ENV_VAR)和变量值(如C:\path\to\your\directory)。
    • 点击“确定”保存更改。

Linux系统

  1. 查看环境变量
    • 打开终端。
    • 输入printenv命令查看所有环境变量。
    • 或者,使用echo $VARIABLE_NAME(将VARIABLE_NAME替换为您要查看的变量名)来查看特定环境变量的值。
  2. 设置环境变量(临时,仅在当前终端会话中有效):
    • 在终端中,使用export VARIABLE_NAME=value命令(将VARIABLE_NAME替换为您要设置的变量名,value替换为值)。
  3. 设置环境变量(永久):
    • 对于所有用户,编辑/etc/profile/etc/environment/etc/bash.bashrc文件(取决于您的系统和需求)。
    • 对于当前用户,编辑~/.bashrc~/.bash_profile~/.profile~/.zshrc文件(取决于您使用的shell)。
    • 在文件的末尾添加export VARIABLE_NAME=value
    • 保存文件后,重新加载配置文件(如source ~/.bashrc)或重新登录以使更改生效。

Mac系统

  1. 查看环境变量
    • 打开终端。
    • 输入printenv命令查看所有环境变量。
    • 或者,使用echo $VARIABLE_NAME(将VARIABLE_NAME替换为您要查看的变量名)来查看特定环境变量的值。
  2. 设置环境变量(临时,仅在当前终端会话中有效):
    • 在终端中,使用export VARIABLE_NAME=value命令(将VARIABLE_NAME替换为您要设置的变量名,value替换为值)。
  3. 设置环境变量(永久):
    • 对于所有用户,编辑/etc/profile/etc/launchd.conf文件(但请注意,/etc/launchd.conf在较新版本的macOS中可能不再使用)。
    • 对于当前用户,编辑~/.bash_profile~/.zshrc~/.profile文件(取决于您使用的shell)。
    • 在文件的末尾添加export VARIABLE_NAME=value
    • 保存文件后,重新加载配置文件(如source ~/.bash_profilesource ~/.zshrc)或重新登录以使更改生效。

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

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

相关文章

Web自动化测试-掌握selenium工具用法,使用WebDriver测试Chrome/FireFox网页(Java

目录 一、在Eclipse中构建Maven项目 1.全局配置Maven 2.配置JDK路径 3.创建Maven项目 4.引入selenium-java依赖 二、Chrome自动化脚本编写 1.创建一个ChromeTest类 2.测试ChromeDriver 3.下载chromedriver驱动 4.在脚本中通过System.setProperty方法指定chromedriver的…

vi和vim有什么不同?

vi 和 vim 都是流行的文本编辑器&#xff0c;它们之间有以下主要区别&#xff1a; 历史&#xff1a; vi 是一个非常古老的文本编辑器&#xff0c;最初由 Bill Joy 在 1976 年为 Unix 系统编写。vim&#xff08;Vi IMproved&#xff09;是 vi 的一个增强版&#xff0c;由 Bram M…

Ubuntu 20.04安装CMake 3.22.6版本

Ubuntu 20.04通过apt安装的cmake版本是3.16.3&#xff0c;默认安装到/usr/bin/cmake路径。 $ cmake Command cmake not found, but can be installed with:sudo snap install cmake # version 3.29.3, or sudo apt install cmake # version 3.16.3-1ubuntu1.20.04.1See sna…

Multer 文件上传中间件 和 Busboy表单解析

Multer 是一个node.js中间件&#xff0c;用于处理 multipart/form-data类型的表单数据&#xff0c;主要用于上传文件。只处理 multipart/form-data 类型的表单数据。 Multer是基于Busboy解析的文件参数信息&#xff0c;获取fileStream&#xff0c;并通过storage转存的file.str…

Unity + 雷达 粒子互动(待更新)

效果预览: 花海(带移动方向) VFX 实例 脚本示例 使用TouchScript,计算玩家是否移动,且计算移动方向 using System.Collections; using System.Collections.Generic; using TouchScript; using TouchScript.Pointers; using UnityEngine; using UnityEngine.VFX;public …

AI预测福彩3D采取888=3策略+和值012路一缩定乾坤测试6月1日预测第8弹

今天继续基于8883的大底&#xff0c;使用尽可能少的条件进行缩号。好了&#xff0c;直接上结果吧~ 首先&#xff0c;888定位如下&#xff1a; 百位&#xff1a;6,5,4,7,8,9,1,0 十位&#xff1a;7,8,6,5,9,3,1,0 个位&#xff1a;5,7,6,4,2,…

看广告赚金币提现小游戏app开发源码

开发一个看广告赚金币并可以提现的小游戏APP&#xff0c;源码的搭建涉及到多个方面&#xff0c;包括前端界面设计、后端逻辑处理、数据库管理以及广告平台的对接等。以下是一些建议的步骤和考虑因素&#xff1a; 前端界面设计&#xff1a; 使用HTML5、CSS3和JavaScript等技术…

第十三届蓝桥杯B组c++国赛

A - 2022&#xff1a; 题目&#xff1a; 笔记&#xff1a; 一道经典的dp题&#xff1a; &#xff08;1&#xff09;明确dp数组含义&#xff1a; dp[i][j][k]: 表示前i个数字中选择j个凑成k的方法数。 &#xff08;2&#xff09;确定状态转移方程&#xff1a; dp[i][j][k…

C++中的引用和解引用,及在Lambda中的简单使用

目录 摘要 引用&#xff08;Reference&#xff09; 定义 用法 解引用&#xff08;Dereference&#xff09; 定义 用法 Lambda表达式结合引用和解引用 引用结合Lambda表达式 解引用结合Lambda表达式 较为复杂的使用 总结 摘要 在C中&#xff0c;引用&#xff08;Re…

linux 内核哪种锁可以递归调用 ?

当数据被多线程并发访问(读/写)时&#xff0c;需要对数据加锁。linux 内核中常用的锁有两类&#xff1a;自旋锁和互斥体。在使用锁的时候&#xff0c;最常见的 bug 是死锁问题&#xff0c;死锁问题很多时候比较难定位&#xff0c;并且影响较大。本文先会介绍两种引起死锁的原因…

Java-----String类

1.String类的重要性 经过了C语言的学习&#xff0c;我们认识了字符串&#xff0c;但在C语言中&#xff0c;我们表示字符串进行操作的话需要通过字符指针或者字符数组&#xff0c;可以使用标准库中提供的一系列方法对字符串的内容进行操作&#xff0c;但这种表达和操作数据的方…

沟通程序化(1):跟着鬼谷子学沟通—“飞箝”之术

沟通的基础需要倾听&#xff0c;但如果对方听不进你的话&#xff0c;即便你说的再有道理&#xff0c;对方也很难入心。让我们看看鬼谷子的“飞箝”之术能给我们带来什么样的启发吧&#xff01; “飞箝”之术&#xff0c;源自中国古代兵法家、纵横家鼻祖鬼谷子的智慧&#xff0…

SpringBootWeb 篇-深入了解 Spring 异常处理、事务管理和配置文件参数配置化、yml 配置文件

&#x1f525;博客主页&#xff1a; 【小扳_-CSDN博客】 ❤感谢大家点赞&#x1f44d;收藏⭐评论✍ 文章目录 1.0 配置文件 1.1 yml 配置文件 1.2 参数配置化 1.2.1 使用 Value 注解注入单个配置参数 1.2.2 使用 ConfigurationProperties 注解将一组相关配置参数注入到一个类中…

discuz论坛怎么修改备案信息

大家好&#xff0c;今天给大家分享下discuz如何填写备案信息并且展示在网站首页。大家都知道国内网站都需要备案&#xff0c;不通过备案的网站上是没办法通过域名打开的。大家也可以通过搜索网创有方&#xff0c;或者直接点击网创有方 查看悬挂备案号后的效果。 首先大家可以看…

如何在CentOS中合理划分磁盘空间以优化系统性能

目录 前言 理想的分区方案 为什么需要单独分区 安全性 性能 管理和维护 稳定性和可靠性 升级和兼容性 结论 前言 在进行CentOS系统的安装和配置时&#xff0c;合理划分磁盘空间是确保系统性能、安全性和易于管理的关键步骤。本文将探讨如何根据系统的硬件配置和预期用途…

安全测试扫描利器-Burpsuite

&#x1f525; 交流讨论&#xff1a;欢迎加入我们一起学习&#xff01; &#x1f525; 资源分享&#xff1a;耗时200小时精选的「软件测试」资料包 &#x1f525; 教程推荐&#xff1a;火遍全网的《软件测试》教程 &#x1f4e2;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1…

vscode常用插件及插件安装方式

一、常用插件 Chinese (Simplified) (简体中文) Language Pack for Visual Studio Code 说明&#xff1a;中文语言包扩展&#xff08;简体&#xff09; open in browser 说明&#xff1a;可以在默认浏览器或应用程序中打开当前文件 Auto Rename Tag 说明&#xff1a;自动重…

Linux 命令:awk

1. 写在前面 本文主要介绍 Linux “awk” 命令&#xff1a;“awk” 是另一个强大的文本处理工具&#xff0c;用于处理和操作结构化数据&#xff0c;如日志文件和命令输出。它可以根据需要为我们打印特定的列值。 公众号&#xff1a; 滑翔的纸飞机 2. awk 命令 我们能用 awk 做…

Android 控件保持宽高比得几种方式

文章目录 Android 控件保持宽高比得几种方式adjustViewBounds百分比布局ConstraintLayout自定义View Android 控件保持宽高比得几种方式 adjustViewBounds 仅适用于 ImageView&#xff0c;保持横竖比。 <ImageViewandroid:layout_width"match_parent"android:l…

动态规划(Dynamic-Programming)问题讲解

动态规划类问题 从已知子问题的解&#xff0c;推导出当前问题的解 推导过程可以表达为一个数学公式用一维或二维数组来保存之前的计算结果&#xff08;可以进一步降维优化&#xff09; 将当前问题 分解成子问题 &#xff0c;找出递归公式&#xff0c;分阶段进行求解 求解过程中…