本文详细介绍了ollama工具的离线部署与使用方法。ollama类似docker,但对模型文件进行分层管理。文章分步骤讲解了Linux系统下的离线安装过程,包括获取、解压和配置文件。同时详细说明了ollama的使用方法,包括启动服务、加载已知模型、创建自定义模型的Modelfile编写,以及运行模型时的性能监控。通过具体示例展示了如何部署自研语义大模型,为开发者提供了实用参考。

前排提示,文末有大模型AGI-CSDN独家资料包哦!

ollama离线部署自研语义大模型

ollama的感觉和docker很像,都是采用的一种文件管理的方式,不同的是docker是对镜像做分层的管理,而ollama是对模型文件做分层的管理,并形成了一个管理的API的服务,然后ollama的底层模型运行还是用的llamacpp的方式,所以他的模型文件都是gguf的格式。

1、ollama的安装

ollama的官方文档中,如果是windwos或者是mac系统,是做了一个打包的,无脑双击下一步就好了。但是在linux系统中是使用一个命令行进行安装的,如下所示:

curl -fsSL https://ollama.com/install.sh | sh

这个是从github上下载一些文件的,如果是网络环境的原因,可能没有办法下载下来。可以直接在github上找到release的tgz包,倒出拷贝进去就行。

github仓库的地址如下:

https://github.com/ollama/ollama

这个脚本的作用也就是查看系统的版本型号等,然后下载对应的压缩包。

如果是采用离线部署的方式,拿到压缩包后解压缩

tar -zxvf **ollama-linux-arm64.tgz**

会产生两个文件夹

bin└── ollamalib└── ollama    ├── cuda_v12    │   ├── libcublasLt.so.12 -> libcublasLt.so.12.8.4.1    │   ├── libcublasLt.so.12.8.4.1    │   ├── libcublas.so.12 -> libcublas.so.12.8.4.1    │   ├── libcublas.so.12.8.4.1    │   ├── libcudart.so.12 -> libcudart.so.12.8.90    │   ├── libcudart.so.12.8.90    │   └── libggml-cuda.so    ├── cuda_v13    │   ├── libcublasLt.so.13 -> libcublasLt.so.13.1.0.3    │   ├── libcublasLt.so.13.1.0.3    │   ├── libcublas.so.13 -> libcublas.so.13.1.0.3    │   ├── libcublas.so.13.1.0.3    │   ├── libcudart.so.13 -> libcudart.so.13.0.96    │   ├── libcudart.so.13.0.96    │   └── libggml-cuda.so    ├── libggml-base.so -> libggml-base.so.0    ├── libggml-base.so.0 -> libggml-base.so.0.0.0    ├── libggml-base.so.0.0.0    └── libggml-cpu.so

bin文件夹中的是一个可执行文件,之后所有的命令操作都是用这个,把ollama拷贝到/usr/local/bin/目录下即可。

lib文件夹中是一些库文件,把ollama文件夹拷贝到/usr/local/lib/下面即可。

2、ollama使用

首先要启动ollama,相当于是docker的守护进程,直接运行

ollama serve

然后新开一个窗口,可以使用ollama ps命令查看当前已经加载的模型。

如果是想跑一些已知的模型,比如qwen2.5,可以直接在命令行运行

ollama run qwen2.5:3b

这样ollama会自己到他的模型库中下载模型,然后运行。

如果是跑自研的或者微调过的一些模型的话,应该使用create方法来创建模型

create的时候和docker比较像,和dockerfile一样要写一个modelfile文件,如下所示

FROM /home/kylin/xxxx-int4.ggufTEMPLATE """<|im_start|>system{{ .System }}<|im_end|><|im_start|>user{{ .Prompt }}<|im_end|><|im_start|>assistant"""PARAMETER temperature 0.8PARAMETER top_k 10PARAMETER top_p 0.95PARAMETER num_ctx 1024PARAMETER stop "<im_end>"

第一行是模型引用的文件路径,然后是template的格式,最后是一些温度参数、终止符等。将上面的文件另存为Modelfile。

然后使用命令

ollama create xxx_modename -f Modelfile

就可以创建出名为xxx_modename的模型了,如果要运行这个模型的话,使用

ollama run xxx_modename --verbose

加上—verbose可以详细的输出模型运行时性能情况,比如用时长短、tokens每秒等信息。

在ollama serve窗口,也会有一些日志输出的内容可以参考。

**total duration:       21.600294491sload duration:        413.778184msprompt eval count:    129 token(s)prompt eval duration: 869.928318msprompt eval rate:     148.29 tokens/seval count:           160 token(s)eval duration:        20.084895753seval rate:            7.97 tokens/s**

读者福利:倘若大家对大模型感兴趣,那么这套大模型学习资料一定对你有用。

针对0基础小白:

如果你是零基础小白,快速入门大模型是可行的。
大模型学习流程较短,学习内容全面,需要理论与实践结合
学习计划和方向能根据资料进行归纳总结

包括:大模型学习线路汇总、学习阶段,大模型实战案例,大模型学习视频,人工智能、机器学习、大模型书籍PDF。带你从零基础系统性的学好大模型!

😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

请添加图片描述

👉AI大模型学习路线汇总👈

大模型学习路线图,整体分为7个大的阶段:(全套教程文末领取哈)

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

👉大模型实战案例👈

光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

在这里插入图片描述

👉大模型视频和PDF合集👈

这里我们能提供零基础学习书籍和视频。作为最快捷也是最有效的方式之一,跟着老师的思路,由浅入深,从理论到实操,其实大模型并不难

在这里插入图片描述

👉学会后的收获:👈

• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

👉获取方式:

😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐