大模型部署实战 之 部署 Llama3.1-部署与使用

大模型(LLM)狭义上指基于深度学习算法进行训练的自然语言处理(NLP)模型,主要应用于自然语言理解和生成等领域,广义上还包括机器视觉(CV)大模型、多模态大模型和科学计算大模型等。
Llama3.1

2024 年 7 月 23 日 Meta宣布推出迄今为止最强大的开源模型——Llama 3.1 405B,同时发布了全新升级的 Llama 3.1 70B 和 8B 模型。

Llama 3.1 405B支持上下文长度为128K Tokens,在基于15万亿个Tokens、超1.6万个H100 GPU上进行训练,这也是Meta有史以来第一个以这种规模进行训练的Llama模型。

部署流程

创建实例

NVIDIA-GeForc-RTX-4090,该配置为60GB内存,24GB的显存(本次测试的LLaMA3.1 8B 版本至少需要GPU显存16G)

本次测试环境:

ubuntu 22.04 python 3.12 cuda 12.1 pytorch 2.4.0

conda create -n llama3 python=3.12
conda activate llama3
pip install langchain==0.1.15
pip install streamlit==1.36.0
pip install transformers==4.44.0
pip install accelerate==0.32.1
wget http://file.s3/damodel-openfile/Llama3/Llama-3.1-8B-Instruct.tar
tar -xf Llama-3.1-8B-Instruct.tar

使用教程

模型下载好后,准备加载模型及启动Web服务等工作,新建 llamaBot.py 文件并在其中输入以下内容

from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
import streamlit as st# 创建一个标题和一个副标题
st.title("💬 LLaMA3.1 Chatbot")
st.caption("🚀 A streamlit chatbot powered by Self-LLM")# 定义模型路径
mode_name_or_path = '/root/workspace/Llama-3.1-8B-Instruct'# 定义一个函数,用于获取模型和tokenizer
@st.cache_resource
def get_model():# 从预训练的模型中获取tokenizertokenizer = AutoTokenizer.from_pretrained(mode_name_or_path, trust_remote_code=True)tokenizer.pad_token = tokenizer.eos_token# 从预训练的模型中获取模型,并设置模型参数model = AutoModelForCausalLM.from_pretrained(mode_name_or_path, torch_dtype=torch.bfloat16).cuda()return tokenizer, model# 加载LLaMA3的model和tokenizer
tokenizer, model = get_model()# 如果session_state中没有"messages",则创建一个包含默认消息的列表
if "messages" not in st.session_state:st.session_state["messages"] = []# 遍历session_state中的所有消息,并显示在聊天界面上
for msg in st.session_state.messages:st.chat_message(msg["role"]).write(msg["content"])# 如果用户在聊天输入框中输入了内容,则执行以下操作
if prompt := st.chat_input():# 在聊天界面上显示用户的输入st.chat_message("user").write(prompt)# 将用户输入添加到session_state中的messages列表中st.session_state.messages.append({"role": "user", "content": prompt})# 将对话输入模型,获得返回input_ids = tokenizer.apply_chat_template(st.session_state["messages"],tokenize=False,add_generation_prompt=True)model_inputs = tokenizer([input_ids], return_tensors="pt").to('cuda')generated_ids = model.generate(model_inputs.input_ids,max_new_tokens=512)generated_ids = [output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)]response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]# 将模型的输出添加到session_state中的messages列表中st.session_state.messages.append({"role": "assistant", "content": response})# 在聊天界面上显示模型的输出st.chat_message("assistant").write(response)print(st.session_state)
streamlit run llamaBot.py --server.address 0.0.0.0 --server.port 1024

在这里插入图片描述
参考链接

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

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

相关文章

【智能算法应用】樽海鞘群算法求解二维路径规划问题

摘要 路径规划是机器人导航和自主无人机领域中的关键问题。本文提出了一种基于智能优化算法——樽海鞘群算法(Salp Swarm Algorithm, SSA)的二维路径规划方法。该算法模拟樽海鞘的链式运动行为,旨在寻找障碍物环境中的最优路径。通过仿真实验…

java项目之健身房管理系统源码(springboot)

风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的健身房管理系统。项目源码以及部署相关请联系风歌,文末附上联系信息 。 项目简介: 健身房管理系统的主要使用…

2024年【茶艺师(高级)】考试资料及茶艺师(高级)考试总结

题库来源:安全生产模拟考试一点通公众号小程序 茶艺师(高级)考试资料考前必练!安全生产模拟考试一点通每个月更新茶艺师(高级)考试总结题目及答案!多做几遍,其实通过茶艺师&#xf…

带摄像头的挖耳勺好用吗?5款好用的可视挖耳勺!

生活水平的提高带动人们越来越关注自己的个人健康护理,耳道清洁也是其中的一项。市面上出现一种带摄像头的挖耳勺,很多小伙伴不知道它的功能是什么,这一篇小编就跟大家说清楚可视挖耳勺到底好不好用!并给大家推荐5款超好用的可视挖…

【程序员必读】近年来编程提效工具大合集。小白必看!

在快节奏的工作环境中,开发者们常常面临着时间紧迫、任务繁重的挑战。选择合适的编程工具,能够显著提升工作效率,帮助你在代码编写、调试和团队协作中事半功倍。那么,究竟哪些编程工具能让你的工作效率翻倍呢?&#x1…

liunx系统虚拟机

https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/ 下载地址 DVD版本 安装vm软件12通过vm软件来创建一个虚拟机空间通过vm软件在创建好的虚拟机空间上,安装我们的centos操作系统使用centos你得需要将鼠标点击进入界面中,但是鼠标会消失&#xf…

HT5169内置BOOST升压的11W I2S输入D类音频功放

1 特性 ● 电源供电 升压输入VBAT:2.5V-5.5V; 升压输出PVDD可调,最高7.5V DVDD/AVDD分辨率:3.3V ● 音频性能 9.0W (VBAT3.7V, PVDD 7.5V, RL3Ω.THDN10%) 11.0W(VBAT3.7V, PVDD 7.5V, RL2Ω.THDN10% 5.5W (VBAT3.7V, PVDD 6.5V, RL4Ω.THDN10%) ● 灵活的…

企业代码补全增强使用实践

通义灵码提供了企业代码补全增强的能力,在开发者使用通义灵码 IDE 插件的行间代码生成时,可以结合企业上传的代码库作为上下文进行行间代码补全,使代码补全更加贴合企业代码规范、业务特点。本文将分享如何构建高质量的企业代码库&#xff0c…

DeepSpeed Chat: 一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍

DeepSpeed Chat: 一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍 1. 概述 近日来,ChatGPT及类似模型引发了人工智能(AI)领域的一场风潮。 这场风潮对数字世界产生了革命性影响。ChatGPT类模型具有惊人的泛用性&#xff0c…

雷达系统中杂波信号的建模与仿真

雷达系统中杂波信号的建模与仿真 2 杂波建模与模拟方法 2.1 杂波建模 杂波可以说是雷达在所处环境中接收到的不感兴趣的回波[4]。就像目标回波一样,杂波也是极为复杂的。为了有效地克服杂波对信号检测的影响,需要知道杂波的幅度特性以及频谱特性。除独…

1,2,3-TBMB作为接头获得不同的双环肽构象;TBMB;TBAB,TATA不同linker

使用1,2,3-三(溴甲基)苯(1,2,3TBMB)来获得具有不同构象的双环肽,这些构象不同于由1,3,5-TBMB形成的传统双环化产物. Bicyclepepitde 楚肽生物可提供产品; 图片来源:Org. Biomol. Chem., 2024, D…

Modbus调试工具和源码分享

我们应该知道了学习Modbus协议应该具备主从两个设备才行,但是在学习过程中如果没有真实的物理设备,应该怎么调试呢? 我们可以通过软件工具来模拟主从设备,下面我们推荐几个比较实用的工具。 以下内容包含:实用工具、…

共享盘显示脱机/无法访问

报错现象:用户端共享盘显示脱机/无法访问,服务器端网盘正常,其他用户正常 解决办法: 方案1:重启报错用户端电脑,重新登录共享盘(已测好用) 方案2:尝试启动脱机文件&…

PowerBI-l7-如何为Power BI报表设计动画背景

需求: 经常会看到别人家的报告上面的动态的背景很漂亮 这是怎么做到的呢? 操作 插入图片的时候直接选用为GIF的动态图片即可

RLHF 的启示:微调 LSTM 能更好预测股票?

作者:老余捞鱼 原创不易,转载请标明出处及原作者。 写在前面的话: 在财务预测领域,准确预测股票价格是一项具有挑战性但至关重要的任务。传统方法通常难以应对股票市场固有的波动性和复杂性。这篇文章介绍了一种创新方法,该方法将长短期记忆 (LSTM) 网络与基于评…

设计模式、系统设计 record part01

技术路线: 工程师》设计师》分析师》架构师 管理路线: 项目经理》技术经理 工程师: 编程技术、测试技术 设计师: 工程师设计技术 分析师: 设计师分析技术 架构师: 分析师架构技术 项目经理: 时间…

数据结构 ——— 编写函数,删除有序数组中的重复项

目录 题目要求 代码实现 题目要求 一个升序排列的数组 nums ,要求原地删除重复出现的元素,使每个元素只出现一次,并返回删除后数组的新长度,元素的相对顺序应该保持一致 代码实现 代码演示: int removeDuplicate…

两步飞跃办公室,2024年常备远程控制神器,居家办公真轻松

现在科技发展得可快了,咱们的生活和工作都跟以前不一样了。2024 年,在家上班一点都不新鲜,好多人都这么干。在这个数字化的时代呀,有很多方便的工具出现。向日葵远程控制软件就是个好东西,能帮咱们高效地远程办公。想试…

探索 Midjourney 中文版:开启人工智能绘画新征程

Midjourney 中文版是专门为中国创作者精心打造的人工智能绘画神器。它打破了语言的壁垒,以熟悉的中文界面和指令输入方式,让每一个怀揣创意梦想的人都能轻松驾驭。无需再为复杂的英文指令而苦恼,在这里,你只需用中文表达心中的想象…

SOLIDWORKS 2025新版本揭秘 | 设计、协作和数据管理篇

除非另有说明,否则所有增强功能均适用于 3DEXPERIENCE SOLIDWORKS 和 SOLIDWORKS Cloud Services。 1|更髙效的协作和数据管理 直接从 SOLIDWORKS 访问社区,轻松与业界同行建立联系并开展协作。 利用实时通知时刻关注蕞新动态,…