AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


58k+star!ollama快速部署llama3大模型
发布日期:2024-05-02 18:19:55 浏览次数: 2362


本期给大家推荐有58k+star的开源大模型管理项目:ollama

ollama是一款旨在简化大语言模型本地部署和运行的实用工具。它提供了一个轻量级且可扩展的框架,让开发者能够在本地机器上便捷地构建和管理LLMs。

这个框架非常适合初学者使用,它的调用方式已经封装成与OpenAI ChatGPT相同的标准输入输出,方便对接上层的问答系统。它支持众多大型模型,只需一个命令即可下载模型文件并启动服务,使用起来十分便捷高效。本文主要介绍如何利用docker部署ollama工具,快速部署llama3大模型服务。

下面是ollama支持的大模型列表:

完整的模型列表可以访问: https://ollama.com/library

github地址:

https://github.com/ollama/ollama

官网下载地址:

https://ollama.com/download
ollama的安装过程简洁明了,如果你是macOS、Windows、Linux,可以直接访问上面的官网地址,下载安装包,一键安装服务,在此处就不详细叙述了。
大部分的情况下,服务器一般都是linux的操作系统,本文推荐使用docker方式部署,方便系统环境之间的隔离!下面主要介绍如何利用docker安装ollama工具,并运行llama3大模型!



本文内容主要分为三个部分:

一、CPU方式部署ollama
二、GPU方式部署ollama
三、llama3 大模型的使用教程


下面开始正式教程




部署前的准备工作:

1、安装好docker;

2、内存或者显存大小要求:

 7B模型-至少需要8GB可用内存(显存);

13B模型-至少需要16GB可用内存(显存);



一、CPU方式部署ollama

1、拉取docker镜像

docker pull ollama/ollama

2、部署ollama容器

docker run -d -v  $PWD/ollama:/root/.ollama -p 11434:11434 \--name ollama ollama/ollama
参数说明:
--name ollama :表示创建的容器名为ollama   
-p 11434:11434:表示你的服务器11434端口,映射到容器内的11434端口;需要确保你的服务器11434端口未被占用
$PWD:表示当前位置的绝对路径;
-v $PWD/ollama:/root/.ollama:将服务器上当前所在路径下的ollama目录挂载映射到容器内的/root/.ollama目录;
ollama/ollama:表示你的镜像名;


3、进入ollama容器内部

docker exec -it ollama /bin/bash

4、运行llama3 模型服务

ollama run llama3

模型文件会自动下载;

等待下载完成即可,详细的使用教程请看下面的第三小节


二、GPU方式部署ollama

1、安装 NVIDIA Container Toolkit. (若已安装则跳过这步!)


详细教程:
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html#installation


2、利用docker创建ollama容器


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

参数说明:

--gpus=all : 挂载全部的gpu

--name ollama :表示创建的容器名为ollama   
-p 11434:11434:表示你的服务器11434端口,映射到容器内的11434端口;需要确保你的服务器11434端口未被占用
$PWD:表示当前位置的绝对路径;
-v $PWD/ollama:/root/.ollama:将服务器上当前所在路径下的ollama目录挂载映射到容器内的/root/.ollama目录;
ollama/ollama:表示你的镜像名;

容器部署成功后截图:

3、进入ollama容器内部

docker exec -it ollama /bin/bash

4、运行llama3 模型服务

ollama run llama3

模型文件会自动下载;

等待下载完成

问题1:你是谁?

问题2:你会做什么?使用中文回答

llama3-7B的模型权重文件大小:4.3 GB左右:

llama3 大模型的使用教程


1、curl命令行调用方式

浏览器访问:ip:11434;可以看到显示ollama服务器正在运行;


利用curl的方式调用llama3大模型

curl http://localhost:11434/v1/chat/completions \    -H "Content-Type: application/json" \    -d '{        "model": "llama3",        "messages": [            {                "role": "system",                "content": "You are a helpful assistant."            },            {                "role": "user",                "content": "Hello!"            }        ]    }'
运行后截图:


2、 python 代码调llama3大模型


url="http://ip:11434/v1/chat/completions"

完整代码如下:

#!/usr/bin/env python# -*- coding: UTF-8 -*-"""@File    :ollama_function.py@Author  :aixiaoxin@Date import requests
def request_chatgpt_function(): url="http://ip:11434/v1/chat/completions" #ip为你部署的ip    OPENAI_API_KEY="sk-xxxxx"  # 不需要修改 header={"Content-Type": "application/json","Authorization": "Bearer " +OPENAI_API_KEY} data={ "model": "llama3", "messages": [ { "role": "system", "content": "You are a helpful assistant." }, { "role": "user", "content": "你是谁?请用中文回答" } ], "temperature":0, "stream":False } response=requests.post(url=url,headers=header,json=data).json() print(response) return response
if __name__ == "__main__": request_chatgpt_function() # 利用request请求调用


运行截图:

更多调用chatgpt的方式,可以参考下面的文章:

python调用chatgpt的三种方法


以上就是今天的所有内容了!

若有任何gpt相关疑问,可以扫码加入技术交流群,一起探讨,可以通过公众号回复数字2,获取最新二维码。


参考文献:

ollama的docker部署教程:https://hub.docker.com/r/ollama/ollama


「往期
精彩」
点击可直接查

28k+star开源项目LobeChat的部署与使用教程

13k+star的LLM接口管理系统one-api的部署教程

ChatGLM3-6B大模型的部署与使用教程(保姆级)




53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询