【LLM】一、利用ollama本地部署大模型

news2024/11/26 5:40:17

目录

前言

一、Ollama 简介

1、什么是Ollama

2、特点:

二、Windows部署

1.下载

2.安装

3.测试安装

4.模型部署:

5.注意

三、  Docker部署

 1.docker安装

2.ollama镜像拉取        

3.ollama运行容器

4.模型部署:

 5.注意:

总结


前言

        最近,自己在学习一些大模型的相关知识,所以近期会不定时更新大模型的实操指南,这里为LLM系列第一篇文章,主要内容是在本地搭建自己的LLM服务。

        随着AI的发展,越来越多的开软软件供我们选择,如:Hugging Face 、Transformers、LangChain、Ollama、vllm等,本篇以O llama为例,在本地搭建自己的大模型服务。话不多说,正文开始。


一、Ollama 简介

官网地址:ollama官网

1、什么是Ollama

        Ollama 是一个开源框架,专为在本地机器上便捷部署和运行大型语言模型(LLM)而设计,极大地简化了大模型在本地运行的过程。对用户来说,只需要通过执行几条命令就能在本地运行开源大模型,如qwen、llama等。

2、特点:

  • 简化部署:Ollama 目标在于简化在 Docker 容器中部署大型语言模型的过程,使得非专业用户也能方便地管理和运行这些复杂的模型。
  • 轻量级与可扩展:作为轻量级框架,Ollama 保持了较小的资源占用,同时具备良好的可扩展性,允许用户根据需要调整配置以适应不同规模的项目和硬件条件。
  • API支持:提供了一个简洁的 API,使得开发者能够轻松创建、运行和管理大型语言模型实例,降低了与模型交互的技术门槛。
  • 预构建模型库:包含一系列预先训练好的大型语言模型,用户可以直接选用这些模型应用于自己的应用程序,无需从头训练或自行寻找模型源。
  •  跨平台支持:提供针对 macOS、Windows(预览版)、Linux 以及 Docker 的安装指南,确保用户能在多种操作系统环境下顺利部署和使用 Ollama。

二、Windows部署

1.下载

        进入目录一中给出的ollama的官网,然后选择你安装的版本即可:

        

            Windows下应该是

2.安装

        windows下双击上边的exe文件,选择install安装即可.

3.测试安装

        进入到cmd下,输入Ollama,出现下列内容则证明安装成功,安装成功后,该服务会开机自启,不需要每次手动运行        

4.模型部署:

        直接cmd命令行里输入ollama run xxx(xxx为你要部署的模型名字,如)即可。同时,大家也可以前往ollama官网查看支持的模型,如下:

        在红框中搜索你想要部署的模型,如qwen2

                

              选择模型大小,然后复制右侧命令到cmd中即可,运行成功的界面如下:

                

5.注意

  • Windows下模型默认下载到 C:\Users\%username%\.ollama\models下,如果你要更改,需要在电脑“高级环境变量”中创建一个新的变量OLLAMA_MODELS,如下:

        模型将会保存在D:\ollama\models下

  • 监听端口默认为11434,如果你要更改默认端口,同上,在环境变量中新增OLLAMA_HOST,如下:

        

        这样修改之后,你本地请求ip:1006即可。

  • 如果按照以上方式修改了环境变量,记得重启ollama服务,否则不会生效。

三、  Docker部署

 1.docker安装

        这部部分自行百度下,网上很多教程,需要注意的是,如果你电脑有gpu的话记得去安装docker的gpu版本。

 2.ollama镜像拉取        

docker pull ollama/ollama

 3.ollama运行容器

        CPU 下:

docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

        GPU下:              

docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

   其中, -v ollama:/root/.ollama表示你要将本地的ollama目录挂载到容器中,该目录可自己指定,是用来存放模型的。最好自己创建下。--name.   ollama为容器名,也可以自己指定

 4.模型部署:

        部署方式同二.4中,即直接ollama run xxx即可,x x x是你要部署的模型型号。

5.注意:

  •   当你想使用所有的gpu时,则执行3中的命令即可,如果要指定gpu,执行下列命令:
  • docker run -d --gpus "device=7"  -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
  • 如果你更改监听端口,则执行下列命令:
  • docker run -d --gpus=all  -v ollama:/root/.ollama -p xxx:11434 --name ollama ollama/ollama

        其中,x x x即为你要监听的本机端口号


总结

        以上就是本篇全部内容,后续会不定时更新该系列文章,如果觉的有用的话,别忘了三连🐶

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

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

相关文章

Ubuntu系统复制文件到共享文件夹出错

1、问题描述 Ubuntu系统复制文件到共享文件夹时,出现拼接文件时出错:输入/输出错误。 使用cp命令: cp -Rf XXX YYY 也是出错: cp: 写入 xxx 出错: 输入/输出错误 2、查看磁盘空间 查看磁盘空间,显示空间还有剩余…

【C语言】qsort()函数详解:能给万物排序的神奇函数

🦄个人主页:修修修也 🎏所属专栏:C语言 ⚙️操作环境:Visual Studio 2022 目录 一.qsort()函数的基本信息及功能 二.常见的排序算法及冒泡排序 三.逐一解读qsort()函数的参数及其原理 1.void* base 2.size_t num 3.size_t size 4.int (*compar)(c…

ANN文献综述

人工神经网络文献综述 摘要 人工神经网络(Artificial Neural Networks, ANNs)是由多个简单的、相互连接的处理单元组成的自适应系统,通过调整这些单元之间的连接强度,ANNs能够实现对复杂数据的建模和预测。本文综述了ANNs的基本…

进程、程序、应用程序之间的关系

文章目录 进程和程序进程和应用程序总结参考资料 进程和程序 程序:程序是存放在硬盘中的可执行文件,主要包括代码指令和数据。程序本身是一个静态的文件,只有在被操作系统加载到内存中并执行时才会变成进程。 进程:进程是程序在…

换根dp,CF 633F - The Chocolate Spree

一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 633F - The Chocolate Spree 二、解题报告 1、思路分析 2600的题,但是不算很困难。 先考虑暴力做法,如何得到两条不相交的路径? 枚举删除的边,得到两棵子树…

Django自动生成Swagger接口文档 —— Python

1. 前言 当接口开发完成,紧接着需要编写接口文档。传统的接口文档通常都是使用Word或者一些接口文档管理平台进行编写,但此类接口文档维护更新比较麻烦,每次接口有变更,需要手动修改接口文档。在实际的工作中,经常会遇…

不错的用户需求访谈方法

不错的用户需求访谈方法,可以用如下的矩阵,用来引导用户访谈:

产科管理系统 专科电子病历系统源码,前后端分离架构,多家医院产科广泛运用,系统稳定,功能齐全

产科管理系统 专科电子病历系统源码,前后端分离架构,多家医院产科广泛运用,系统稳定,功能齐全 产科管理系统,特别是产科信息管理系统(Obstetrical Information Management System,简称OIMS&…

NXP i.MX8系列平台开发讲解 - 3.18 Linux tty子系统介绍(一)

专栏文章目录传送门:返回专栏目录 Hi, 我是你们的老朋友,主要专注于嵌入式软件开发,有兴趣不要忘记点击关注【码思途远】 目录 1. TTY 起源 2. Linux 系统中的TTY 2.1 Linux TTY 设备形式 2.2 Linux TTY framework 2.3 驱动核心相关文件…

一键直达:2024最新Win10系统安装包!快来下载!

对于想体验Win10系统最新功能的用户来说,寻找可靠的最新系统安装包是特别重要的。接下来系统之家小编就给大家带来2024年最新Win10系统安装包,有需要的小伙伴一键点击就能开始下载。该系统安装步骤简单易懂,无需担心任何装机经验。 推荐下载&…

浅谈k8s中cni0和docker0的关系和区别

最近在复习k8s网络方面的知识,查看之前学习时整理的笔记和文档还有过往自己总结的博客之后发现一个问题,就是在有关flannel和calico这两个k8s网络插件的文章和博客中,会涉及到cni0和docker0这两个网桥设备,但是都没有明确说明他们…

AIGI赋能未来:人工智能如何重塑电子电路学习体验

文章目录 一、掌握基础知识与技能1. 扎实理论基础2. 熟练使用工具 二、融合AI技术提升学习效率1. 利用AI辅助学习平台2. 应用AI工具进行电路设计与仿真 三、探索创新应用方向1. 关注AI与电子电路的交叉领域2. 参与开源项目和竞赛 四、培养跨学科思维1. 加强数学与计算机科学知识…

单机多网卡互通——问题跟踪+工具分析

一、背景 想搭建soft ROCE(RXE)与实体ROCE设备互联的测试环境&#xff0c;为了节省机器以及使用方便&#xff0c;预想在配备ROCE卡的主机上&#xff0c;用另一个网卡绑定soft ROCE&#xff0c;然后互通。 [ETH1 ROCE] <--------------------> [ETH2 RXE] 二、问题跟…

【qt】如何获取网卡的信息?

网卡不只一种,有有线的,有无线的等等 我们用QNetworkInterface类的静态函数allInterfaces() 来获取所有的网卡 返回的是一个网卡的容器. 然后我们对每个网卡来获取其设备名称和硬件地址 可以通过静态函数humanReadableName() 来获取设备名称 可以通过静态函数**hardwareAddre…

TC3xx NvM小细节解读

目录 1.FlsLoader Driver和FlsDmu Driver 2. FlsLoader小细节 3.小结 大家好&#xff0c;我是快乐的肌肉&#xff0c;今天聊聊TC3xx NvM相关硬件细节以及MCAL针对NvM的驱动。 1.FlsLoader Driver和FlsDmu Driver 在最开始做标定的时候&#xff0c;认为标定数据既然是数据&…

Java传引用问题

本文将介绍 Java 中的引用传递&#xff0c;包括其定义、实现方式、通过引用修改原来指向的内容和通过引用修改当前引用的指向的区别 目录 1、引用传递的概念 2、引用传递的实现方式 3、传引用会发生的两种情况&#xff1a; 通过引用修改当前引用的指向 通过引用修改原来指…

C++基础(七):类和对象(中-2)

上一篇博客学的默认成员函数是类和对象的最重要的内容&#xff0c;相信大家已经掌握了吧&#xff0c;这一篇博客接着继续剩下的内容&#xff0c;加油&#xff01; 目录 一、const成员&#xff08;理解&#xff09; 1.0 引入 1.1 概念 1.2 总结 1.2.1 对象调用成员函数 …

人工智能系列-NumPy(二)

&#x1f308;个人主页&#xff1a;羽晨同学 &#x1f4ab;个人格言:“成为自己未来的主人~” 链接数组 anp.array([[1,2],[3,4]]) print(第一个数组&#xff1a;) print(a) print(\n) bnp.array([[5,6],[7,8]]) print(第二个数组&#xff1a;) print(b) print(\n) print…

web基础与HTTP协议(企业网站架构部署与优化)

补充&#xff1a;http服务首页文件在/var/www/html下的&#xff0c;一定是index.html命名的文件。才会显示出来。 如果该路径下没有相应的文件&#xff0c;会显示/usr/share/httpd/noindex下的index.html文件。 如果/usr/share/httpd/noindex没有index.html文件&#xff0c;会…