ubuntu离线安装Ollama并部署Llama3.1 70B INT4

news/2025/2/26 10:05:19

文章目录

  • 1.下载Ollama
  • 2. 下载安装Ollama的安装命令文件install.sh
  • 3.安装并验证Ollama
  • 4.下载所需要的大模型文件
    • 4.1 加载`.GGUF`文件(推荐、更容易)
    • 4.2 加载`.Safetensors`文件(不建议使用)
  • 5.配置大模型文件

参考:
1、 如何在离线的Linux服务器上部署 Ollama,并运行 Qwen 大模型(附教程)
2、 【三步搭建 本地 编程助手 ollama + codegeex】


本文的目的是将Ollama和Llama3.1 70B INT4版本离线安装在一台有4张A5000显卡的Ubuntu20.04系统上

1.下载Ollama

版本:v0.5.11
下载地址:https://github.com/ollama/ollama/releases
文件:ollama-linux-amd64.tgz

下载好之后,解压该文件

sudo tar -C /usr -xzf ollama-linux-amd64.tgz

给这个文件添加权限:

sudo chmod +x /usr/bin/ollama # 这条命令没有用

根据下面的文章进行操作:Ollama系列—【如何离线安装ollama?】按这个操作完了不用下载和执行install.sh,直接跳到4.下载所需要的大模型文件

2. 下载安装Ollama的安装命令文件install.sh

下载地址:https://github.com/ollama/ollama/blob/main/scripts/install.sh
下载完应该需要对这个文件进行修改

把下面的内容删除:

if curl -I --silent --fail --location "https://ollama.com/download/ollama-linux-${ARCH}.tgz${VER_PARAM}" >/dev/null ; then
    status "Downloading Linux ${ARCH} bundle"
    curl --fail --show-error --location --progress-bar \
        "https://ollama.com/download/ollama-linux-${ARCH}.tgz${VER_PARAM}" | \
        $SUDO tar -xzf - -C "$OLLAMA_INSTALL_DIR"
    BUNDLE=1
    if [ "$OLLAMA_INSTALL_DIR/bin/ollama" != "$BINDIR/ollama" ] ; then
        status "Making ollama accessible in the PATH in $BINDIR"
        $SUDO ln -sf "$OLLAMA_INSTALL_DIR/ollama" "$BINDIR/ollama"
    fi
else
    status "Downloading Linux ${ARCH} CLI"
    curl --fail --show-error --location --progress-bar -o "$TEMP_DIR/ollama"\
    "https://ollama.com/download/ollama-linux-${ARCH}${VER_PARAM}"
    $SUDO install -o0 -g0 -m755 $TEMP_DIR/ollama $OLLAMA_INSTALL_DIR/ollama
    BUNDLE=0
    if [ "$OLLAMA_INSTALL_DIR/ollama" != "$BINDIR/ollama" ] ; then
        status "Making ollama accessible in the PATH in $BINDIR"
        $SUDO ln -sf "$OLLAMA_INSTALL_DIR/ollama" "$BINDIR/ollama"
    fi
fi

2.将两个文件上传到linux服务器,放于同一文件夹下

执行install.sh文件

chmod +x install_ollama.sh    #给脚本赋予执行权限
./install_ollama.sh
# 如果报错误: bash: ./build_android.sh:/bin/sh^M:解释器错误: 没有那个文件或目录,执行下面命令后,再执行./install_ollama.sh命令
sed -i 's/\r$//' install_ollama.sh

3.安装并验证Ollama

vim /etc/systemd/system/ollama.service
[Unit]
Description=Ollama Service
After=network-online.target

[Service]
ExecStart=/usr/local/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/bin"
Environment="OLLAMA_HOST=0.0.0.0:11434"
Environment="OLLAMA_ORIGINS=*"

[Install]
WantedBy=default.target
修改后重载服务文件,重启ollama
sudo systemctl daemon-reload
sudo systemctl restart ollama

查看ollama运行状态
sudo systemctl status ollama.service

4.防火墙配置

开放11434端口
sudo firewall-cmd --permanent --zone=public --add-port=11434/tcp

重新加载:sudo firewall-cmd --reload

5.访问测试:使用其他计算机访问:http:/<服务器域名>11434
若返回Ollama is running,说明可成功访问

4.下载所需要的大模型文件

在下载模型前首先需要清楚Ollama是如何加载离线的大模型的
使用ollama导入模型话,有两种的大模型的文件格式可以使用,分别是GGUF和Safetensors文件(Safetensors文件需要使用llama.cpp先转换为GGUF文件才行)

分别对两种下载并导入到Ollama中的方式进行介绍:
1)下载对应的Llama-3.1-70B、INT4计算精度的GGUF文件:Meta-Llama-3.1-70B-Instruct-Q4_K_M.gguf
下载地址:https://www.modelscope.cn/models/lmstudio-community/Meta-Llama-3.1-70B-Instruct-GGUF/files
2)下载的Safetensors文件:Meta-Llama-3.1-70B-Instruct-GPTQ-INT4: 因为比较麻烦,所以就不想用了
下载地址:https://hf-mirror.com/hugging-quants/Meta-Llama-3.1-70B-Instruct-GPTQ-INT4/tree/main

4.1 加载.GGUF文件(推荐、更容易)

可以参考:Ollama自定义导入DeepSeek-R1-Distill-Qwen-1.5B模型(第二部分)
创建Modelfile文件,并写入以下内容:

FROM ./deepseek-r1-distill-qwen-1.5b-q2_k.gguf # 以deepseek模型文件为例

执行下面命令来验证

ollama create my_DeepSeek-R1-Distill-Qwen-1.5B -f Modelfile
ollama ls
ollama run my_DeepSeek-R1-Distill-Qwen-1.5B

在uugf文件同一个目录下创建Modelfile文件,

touch Modelfile

使用插入模式i,并写入以下内容:

FROM ./Meta-Llama-3.1-70B-Instruct-Q4_K_M.gguf # 

在uugf文件同一个目录下执行下面命令来验证

ollama create llama-70B-INT4 -f Modelfile
ollama ls
ollama run llama-70B-INT4

4.2 加载.Safetensors文件(不建议使用)

Ollama 仅支持 GGUF 格式的模型,因此需使用llama.cpp库.safetensors 转换为 .gguf 格式:
因为好像需要llama.cpp对该文件进行处理,比较麻烦就不介绍了
可以参考:Ollama自定义导入DeepSeek-R1-Distill-Qwen-1.5B模型(第三部分)

5.配置大模型文件

因为我们的服务器是完全内网环境,所以即便安装ollama后也无法下载大模型,因此需要我们手动将模型放到ollama可以识别的地方。
默认情况下ollama模型的所在路径为:

macOS: ~/.ollama/models 
Linux: **/usr/share/ollama/.ollama/models**
Windows: C:Users<username>.ollamamodels

自己在服务器上创建一个路径,打开ollama配置文件/etc/systemd/system/ollama.service

在里面加入你新创建的路径
在这里插入图片描述
接下来,找一个可以上网的主机,执行ollama run ***,当大模型下载完成后,找到models目录,将整个目录拷贝到服务器你新创建的路径下。

重启ollama,之后再执行ollama list命令,如果看到有模型了,证明搞定。


http://www.niftyadmin.cn/n/5868524.html

相关文章

文件下载技术的终极选择:`<a>` 标签 vs File Saver.js

文件下载技术的终极选择&#xff1a;<a> 标签 vs File Saver.js 在 Web 开发中&#xff0c;文件下载看似简单&#xff0c;实则暗藏玄机。工作种常纠结于 <a> 标签的原生下载和 File Saver.js 等插件的灵活控制之间。本文将从原理、优缺点、场景对比到实战技巧&…

【Elasticsearch】script_fields 和 runtime_fields的区别

script_fields和runtime_fields都是 Elasticsearch 中用于动态计算字段值的功能&#xff0c;但它们在实现方式、应用场景和性能表现上存在显著区别。以下是两者的详细对比&#xff1a; 1.定义和应用场景 • script_fields&#xff1a; • 定义&#xff1a;通过 Painless 脚本…

蓝桥杯 Java B 组之记忆化搜索(滑雪问题、斐波那契数列)

Day 5&#xff1a;记忆化搜索&#xff08;滑雪问题、斐波那契数列&#xff09; &#x1f4d6; 一、记忆化搜索简介 记忆化搜索&#xff08;Memoization&#xff09; 是一种优化递归的方法&#xff0c;它利用 哈希表&#xff08;HashMap&#xff09;或数组 存储已经计算过的结果…

架构思维:架构的演进之路

文章目录 引言为什么架构思维如此重要架构师的特点软件架构的知识体系如何提升架构思维大型互联网系统架构的演进之路一、大型互联网系统的特点二、系统处理能力提升的两种途径三、大型互联网系统架构演化过程四、总结 引言 在软件开发行业中&#xff0c;有很多技术人可能会问…

1.4常规es报错问题

问题一&#xff1a;unable to install syscall filter [2016-11-06T16:27:21,712][WARN ][o.e.b.JNANatives ] unable to install syscall filter: Java.lang.UnsupportedOperationException: seccomp unavailable: requires kernel 3.5 with CONFIG_SECCOMPandCONFIG_SECCOM…

PCEP使用

PCEP&#xff08;Path Computation Element Protocol&#xff09;主要用于网络中路径计算的请求和响应&#xff0c;特别是在多协议标签交换&#xff08;MPLS&#xff09;和光网络等环境中。以下是 PCEP 的使用方法和步骤&#xff1a; PCEP 的使用步骤 环境准备&#xff1a; 确…

idea + Docker + 阿里镜像服务打包部署

一、下载docker desktop软件 官网下载docker desktop&#xff0c;需要结合wsl使用 启动成功的画面(如果不是这个画面例如一直处理start或者是stop需要重新启动&#xff0c;不行就重启电脑) 打包成功的镜像在这里&#xff0c;如果频繁打包会导致磁盘空间被占满&#xff0c;需…

视频裂变加群推广分享引流源码

源码介绍 视频裂变加群推广分享引流源码 最近网上很火&#xff0c;很多人都在用&#xff0c;适合引流裂变推广 测试环境&#xff1a;PHP7.4(PHP版本不限制) 第一次访问送五次观看次数&#xff0c;用户达到观看次数后需要分享给好友或者群,好友必须点击推广链接后才会增加观看次…