首页 > 其他分享 >使用TensorRT-LLM部署ChatGLM3

使用TensorRT-LLM部署ChatGLM3

时间:2024-03-26 17:14:55浏览次数:28  
标签:6b ChatGLM3 -- chatglm3 TensorRT git LLM

说明:

TensorRT-LLM是NVIDIA开发的高性能推理

TensorRT-LLM 是 NVIDIA 推出的一个专门用于编译和优化大语言模型推理的综合程序库。 可在 NVIDIA GPU 上加速和优化最新的大语言模型(LLM)的推理性能。 官网地址为:https://github.com/THUDM/ChatGLM3/blob/main/tensorrt_llm_demo/README.md   环境介绍: 服务器系统:Ubuntu22.04
显卡:A100(8张)   操作步骤:

 1、TensorRT-LLM 代码需要使用 git-lfs 拉取所以下载git git-lfs

apt-get update && apt-get -y install git git-lfs

2、clone项目

git clone https://github.com/NVIDIA/TensorRT-LLM.git

cd TensorRT-LLM

3、使用 v0.7.0 Release 版本
git checkout tags/v0.7.0 -b release/0.7.0
git submodule update --init --recursive
git lfs install
git lfs pull

4、构建docker镜像并安装TensorRT-LLM 

cd TensorRT-LLM/docker

(注意切换路径 这里是相对路径 如果和我的路径不一样记得切换)

make release_build

(大约需要1个小时)

5、运行docker镜像

make release_run

运行后会看到起来的容器

6、进入容器安装依赖

docker exec -it ec /bin/bash

cd ./examples/chatglm
pip install -r requirements.txt
apt-get update
apt-get install git-lfs

 

7、下载模型

git clone https://huggingface.co/THUDM/chatglm3-6b chatglm3_6b

git clone https://huggingface.co/THUDM/chatglm3-6b-base chatglm3_6b_base
git clone https://huggingface.co/THUDM/chatglm3-6b-32k chatglm3_6b_32k

先下载第一个模型测试 因为我在docker里下载超时 所以先下载到本地在上传至docker里

网址为:https://huggingface.co/THUDM/chatglm3-6b/tree/main

将里面的全部下载

注意我没有截全

 

全部下载后进入容器

cd /code/tensorrt_llm/examples/chatglm

新建文件夹

mkdir chatglm3_6b

然后退出容器

把下载的文件都上至到这个路径下/code/tensorrt_llm/examples/chatglm/chatglm3_6b

上传完后 在进入容器

进入目录

cd /code/tensorrt_llm/examples/chatglm

9、执行代码测试

python3 ../run.py --input_text "秦皇岛周末限号吗" \
--max_output_len 1024 \
--tokenizer_dir chatglm3_6b \
--engine_dir trt_engines/chatglm3_6b/fp16/1-gpu

可以把 "秦皇岛周末限号吗" 换成自己的内容

结果如图:

 后续功能待完善...

 

标签:6b,ChatGLM3,--,chatglm3,TensorRT,git,LLM
From: https://www.cnblogs.com/likecoke/p/18097085

相关文章

  • ChatGLM3
    一、安装anacondacd/data/srcwgethttps://repo.anaconda.com/archive/Anaconda3-2024.02-1-Linux-x86_64.shbashAnaconda3-2021.05-Linux-x86_64.sh-p/opt/anaconda3vim/etc/profile文件末添加下面一行 exportPATH=/opt/anaconda3/bin:$PATHsource/etc/profileconda--v......
  • Elasticsearch:使用在本地计算机上运行的 LLM 以及 Ollama 和 Langchain 构建 RAG 应用
    无需GPU的隐私保护LLM。在本博客中,我将演示使用不同的工具Ollama构建的RAG应用程序。与本文相关的所有源代码均已发布在github上。请克隆存储库以跟随文章操作。我们可以通过如下的方式来克隆:gitclonehttps://github.com/liu-xiao-guo/ollama_es什么是 Ollam......
  • LLM - 大语言模型的指令微调(Instruction Tuning) 概述
    欢迎关注我的CSDN:https://spike.blog.csdn.net/本文地址:https://blog.csdn.net/caroline_wendy/article/details/137009993大语言模型的指令微调(InstructionTuning)是一种优化技术,通过在特定的数据集上进一步训练大型语言模型(LLMs),使其能够更好地理解和遵循人类的指......
  • 使用GaLore在本地GPU进行高效的LLM调优
    训练大型语言模型(llm),即使是那些“只有”70亿个参数的模型,也是一项计算密集型的任务。这种水平的训练需要的资源超出了大多数个人爱好者的能力范围。为了弥补这一差距,出现了低秩适应(LoRA)等参数高效方法,可以在消费级gpu上对大量模型进行微调。GaLore是一种新的方法,它不是通过直......
  • 大模型推理框架 vLLM 源码解析(二):Block 模块分配和管理
    1.Block概览vLLM的一个很大创新点是将物理层面的GPU和CPU可用内存切分成若干个block,这样可以有效降低内存碎片化问题。具体而言,vLLM的block分为逻辑层面(logical)和物理层面(physical),二者之间存在映射关系。下图很好解释了两个层面block的关系。假设每个block可以......
  • LLM finetune
    微调微调的目的有几个:1. 和人类对齐,减少一些hullucination和toxiccontent;2.引入domainknowledge;3.做一些promptengineering低效的事情,比如不用提供大量的样本。但是也有可能因此而产生灾难性遗忘。同时需要对样本量和质量进行把控。 SFT(supervisedfine-tuning)实......
  • 【Coursera GenAI with LLM】 Week 3 LLM-powered applications Class Notes
    ModeloptimizationstoimproveapplicationperformanceDistillation:usesalargermodel,theteachermodel,totrainasmallermodel,thestudentmodel,wefreezeteacher'sweightsandgeneratecompletions,alsogeneratestudentmodel'scompl......
  • LLM-通义千问:新能源参考书
    问题一:新能源入门参考书对于新能源技术的学习,以下是一些推荐的入门参考书籍:《新能源概论》:作者孙逢春,该书全面介绍了太阳能、风能、生物质能、海洋能等各种新能源的基本原理、利用技术及其发展趋势,适合初学者了解新能源领域的全貌。《新能源科学与工程导论》:作者张华,该书......
  • LLM进阶——预训练语言模型
    文章目录一、概念二、GPT1、概念2、自回归3、zero-shot三、bert1、概念2、maskedLM一、概念最早的预训练语言模型(plms)是word2vec,现在的模型(gpt&bert)都是基于transformer以下是一些常见的预训练语言模型分类:基于Transformer的模型:BERT(BidirectionalEncoder......
  • 贝尔曼方程【Bellman Equation】
    强化学习笔记主要基于b站西湖大学赵世钰老师的【强化学习的数学原理】课程,个人觉得赵老师的课件深入浅出,很适合入门.第一章强化学习基本概念第二章贝尔曼方程文章目录强化学习笔记一、状态值函数贝尔曼方程二、贝尔曼方程的向量形式三、动作值函数参考资料第......