LLaMA 3.1 模型在DAMODEL平台的部署与实战:打造智能聊天机器人

LLaMA 3.1 模型在DAMODEL平台的部署与实战:打造智能聊天机器人

文章目录

前言

一、LLaMA 3.1 的特点

二、LLaMA3.1的优势

三、LLaMA3.1部署流程

(一)创建实例

(二)通过JupyterLab登录实例

(3)部署LLaMA3.1

(4)使用教程

总结


前言

LLama3.1 是 Meta(Facebook 母公司)发布的系列大语言模型之一,属于 LLaMA(Large Language Model Meta AI)模型系列。LLaMA 模型的目标是通过更高效的设计在保持模型性能的前提下,显著降低其计算和资源需求。LLaMA 3.1 是该系列的最新版本,继承了前面版本,如 LLaMA 1 和 LLaMA 2的许多技术优势,并对模型架构、训练数据和推理能力进行了改进。


一、LLaMA 3.1 的特点

LLaMA 3.1主要有以下4个特点:

  • 规模较大且高效:LLaMA 3.1 在参数量上相比前代有所增加,但在设计和训练过程中注重提高效率,因此能够在相对较少的资源下达到与更大模型相似的性能水平。
  • 更多的训练数据:该版本的模型通过更广泛、更丰富的语料库进行训练,覆盖了更多领域的信息,使得它在回答问题、生成内容以及自然语言理解方面更强大。
  • 优化的推理性能:LLaMA 3.1 通过对推理算法和模型架构的优化,减少了推理时间,提高了在不同任务上的响应速度。
  • 开源的方式:与前代模型类似,LLaMA 3.1 也继续采用开源模式,这意味着研究人员和开发人员可以在其基础上进行进一步的研究和开发。这种开放性是 Meta 希望推动 AI 社区共同进步的一个关键策略。

二、LLaMA3.1的优势

相较于 OpenAI 的 GPT 系列或 Google 的 PaLM 系列,LLaMA 系列模型的优势在于其高效性,即在保持较高的生成能力和理解能力的同时,资源消耗更低。LLaMA 3.1 通过对模型结构的精简和训练数据的多样化,在许多任务上能够提供接近甚至超过这些主流模型的性能。


三、LLaMA3.1部署流程

DAMODEL地址:丹摩DAMODEL|让AI开发更简单!算力租赁上丹摩!

(一)创建实例

(1)登录后点击控制台,选择GPU云实例并创建实例

(2)付费类型选择按量付费,示例配置选4 NVIDIA-L40S

(3)GPU、数据硬盘按照默认的即可

(4)镜像框架选择PyTorch 2.4.0,选择密钥对后点击立即创建

(5)实例状态变为运行中时即实例创建成功

(二)通过JupyterLab登录实例

(3)部署LLaMA3.1

使用conda 管理环境,DAMODEL示例已经默认安装了 conda 24.5.0 ,直接创建环境即可

在终端输入:

conda create -n llama3 python=3.12

效果图:

第一次在终端使用conda命令,需要先进行conda初始化,初始化完成后重新开下终端

conda init

效果图:

初始化后切换到新创建的环境

conda activate llama3

安装LLaMA3.1需要的依赖

pip install langchain==0.1.15 pip install streamlit==1.36.0 pip install transformers==4.44.0 pip install accelerate==0.32.1

效果图:

依赖安装完毕后,需要下载Llama-3.1-8B模型,使用命令进行内网下载Llama-3.1-8B-Instruct模型即可

wget http://file.s3/damodel-openfile/Llama3/Llama-3.1-8B-Instruct.tar

效果图:

模型下载完成后解压缩Llama-3.1-8B-Instruct.tar

tar -xf Llama-3.1-8B-Instruct.tar

(4)使用教程

Llama-3.1-8B模型下载完成后,新建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(): # 从预训练的模型中获取tokenizer tokenizer = 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 服务,server.port 可以更换端口:

streamlit run llamaBot.py --server.address 0.0.0.0 --server.port

使用丹摩平台提供的端口映射功能,将内网端口映射到公网:

添加好后,通过示例端口的访问链接即可打开LLaMA3.1 Chatbot交互界面,可以跟该机器人进行对话


四、总结


本文介绍了 LLaMA 3.1 模型的特点、优势以及在 DAMODEL 平台上的部署流程。LLaMA 3.1 是 Meta 发布的最新大语言模型,具有高效的计算设计和优异的推理性能。其主要优势在于相较于 OpenAI 的 GPT 系列或 Google 的 PaLM 系列,LLaMA 3.1 在消耗较少资源的情况下依然能够提供强大的生成和理解能力。

文章还详细描述了如何通过 DAMODEL 平台部署 LLaMA 3.1 的步骤,从创建 GPU 实例,到配置环境(使用 conda 管理 Python 环境),再到安装必要的依赖和下载模型文件。最后,还展示了如何构建一个基于 Streamlit 的聊天机器人,通过 LLaMA 3.1 生成对话内容并与用户交互。

Read more

OpenVR高级设置:终极SteamVR优化指南

OpenVR高级设置:终极SteamVR优化指南 【免费下载链接】OpenVR-AdvancedSettingsOpenVR Advanced Settings Dashboard Overlay 项目地址: https://gitcode.com/gh_mirrors/op/OpenVR-AdvancedSettings 想要获得更流畅、更沉浸的VR体验吗?OpenVR-AdvancedSettings正是你需要的强大工具!这款免费的VR设置工具专为SteamVR设计,让你在虚拟现实世界中享受前所未有的控制权。 🎯 为什么你需要这款VR设置工具? OpenVR-AdvancedSettings是一个开源的桌面覆盖应用,它扩展了SteamVR的功能限制。无论你是VR新手还是资深玩家,这个工具都能帮助你: * 实时监控系统性能,避免卡顿和延迟 * 自定义音频设置,优化语音交流体验 * 调节虚拟边界,确保使用安全 * 深度优化画面质量,提升视觉沉浸感 📊 强大的性能监控中心 统计页面是你的VR系统"健康检查站",在这里你可以: * 追踪头显移动距离和旋

场景深耕:低延迟高并发EasyDSS无人机RTMP高清推流直播技术剖析

场景深耕:低延迟高并发EasyDSS无人机RTMP高清推流直播技术剖析

从交通工程巡检到文旅宣传,从警务安防到水利监测,无人机直播已成为各行业数字化转型的重要工具。而EasyDSS凭借RTMP低延迟推流、高清直播的核心优势,深度贴合不同行业的场景需求,打造定制化解决方案,让无人机直播真正落地生根,为行业发展提质增效,实现“技术赋能业务”的核心价值。 在交通工程领域,传统人工巡检面临作业面绵长、地形复杂、安全隐患难追溯等痛点,某公路项目就曾面临这样的困境,每天安排6名安全员不间断巡查,仍存在监管死角,夜间施工时人工巡检更是力不从心。 引入EasyDSS无人机RTMP推流直播解决方案后,通过智能机巢部署无人机,结合控飞平台,按预设航线自动开展巡检,搭载8K高清摄像头捕捉施工场景,通过RTMP协议将实时画面低延迟推流至管理平台,延迟控制在2秒内,不仅降低了人工成本,更实现了安全隐患的早发现、早处置。 在文旅宣传领域,传统“图片+短视频”的宣传模式存在体验感缺失、信任度不足等问题,难以展现景区的宏大规模与动态美景。 EasyDSS与无人机构建起7×24小时“空中直播间”,无人机通过RTMP协议将景区实时画面推流至EasyDSS平台,再由平台实现

Gemini 全能 QQ 机器人部署手册 (V1.0 Release)

Gemini 全能 QQ 机器人部署手册 (V1.0 Release) 核心架构:OneBot V11 (NapCat) + NoneBot2 + Gemini Flash 适用系统:Ubuntu 22.04 LTS (阿里云/腾讯云) 🟢 第一阶段:基础设施准备 SSH 连接服务器后,复制以下命令执行。 安装必要软件 (Docker + Python) # 更新软件源sudoapt update &&sudoapt upgrade -y# 安装 Dockercurl-fsSL https://get.docker.com |bash# 安装 Python3 及虚拟环境工具sudoaptinstall python3-pip python3-venv -y# 创建项目文件夹mkdir-p

Stable Diffusion的3个替代方案

Stable Diffusion的3个替代方案

Stable Diffusion 虽然不再像2022-2023年那样热门,但仍然是最重要的开源权重图像模型之一。它允许用户使用自己的自定义数据集对模型进行微调,从而获得对相似度、艺术风格或特定角色细节的精确控制。但这需要一定的模型训练知识,设置和微调过程并不简单,训练时间也取决于训练数据的大小。 1、PixAI PixAI 是一个专门针对动漫风格和高度风格化数字艺术作品进行优化的AI图像生成平台。平台提供数百个社区微调模型和一套强大的工具,帮助你轻松将创意想法转化为现实。 平台专为动漫主题视觉而设计,既作为创作工具,也作为社交网络,允许你从头创作新作品或"混音"其他社区成员生成的图像。 最有趣的是能够轻松训练自己的 LoRA (Low-Rank Adaptation)。过去这是一项复杂的任务,现在只需上传训练图像,分配触发名称,等待平台烘焙自定义图像模型即可。 使用现有的风格化模型,只需简单的提示词就能实现精美的动漫风格图像,无需明确告诉AI需要特定的风格、色调、着色等。 2、ChatGPT ChatGPT 是目前最受欢迎的通用聊天应用,其图像生成功能由 GPT-Im