随笔 - 128  文章 - 0  评论 - 75  阅读 - 11万
10 2023 档案
DeepSpeed框架:1-大纲和资料梳理
摘要:DeepSpeed是一个深度学习优化软件套件,使分布式训练和推理变得简单、高效和有效。它可以做些什么呢?训练/推理具有数十亿或数万亿参数的密集或稀疏模型;实现出色的系统吞吐量并有效扩展到数千个GPU;在资源受限的GPU系统上进行训练/推理;实现前所未有的低延迟和高吞吐量的推理;以低成本实现极限压缩, 阅读全文
posted @ 2023-10-12 01:22 扫地升 阅读(3086) 评论(0) 推荐(1) 编辑
CUDA C编程权威指南:2.2-给核函数计时
摘要:本文主要通过例子介绍了如何给核函数计时的思路和实现。实现例子代码参考文献[7],只需要把相应章节对应的CMakeLists.txt文件拷贝到CMake项目根目录下面即可运行。 1.用CPU计时器计时(sumArraysOnGPU-timer.cu)[7] 在主函数中用CPU计时器测试向量加法的核函数 阅读全文
posted @ 2023-10-09 00:10 扫地升 阅读(536) 评论(0) 推荐(0) 编辑
CUDA C编程权威指南:2.1-CUDA编程模型
摘要:本文主要通过例子介绍了CUDA异构编程模型,需要说明的是Grid、Block和Thread都是逻辑结构,不是物理结构。实现例子代码参考文献[2],只需要把相应章节对应的CMakeLists.txt文件拷贝到CMake项目根目录下面即可运行。 1.Grid、Block和Thread间的关系 GPU中最 阅读全文
posted @ 2023-10-08 10:52 扫地升 阅读(573) 评论(0) 推荐(2) 编辑
Langchain-Chatchat项目:3-Langchain计算器工具Agent思路和实现
摘要:本文主要讨论Langchain-Chatchat项目中自定义Agent问答的思路和实现。以"计算器工具"为例,简单理解就是通过LLM识别应该使用的工具类型,然后交给相应的工具(也是LLM模型)来解决问题。一个LLM模型可以充当不同的角色,要把结构化的Prompt模板写好,充分利用LLM的Zero/O 阅读全文
posted @ 2023-10-07 23:29 扫地升 阅读(1600) 评论(0) 推荐(0) 编辑
Langchain-Chatchat项目:2.1-通过GPT2模型来检索NebulaGraph
摘要:在官方例子中给出了通过chain = NebulaGraphQAChain.from_llm(ChatOpenAI(temperature=0), graph=graph, verbose=True)来检索NebulaGraph图数据库。本文介绍了通过GPT2替换ChatOpenAI的思路和实现,暂 阅读全文
posted @ 2023-10-07 23:29 扫地升 阅读(280) 评论(0) 推荐(0) 编辑
Langchain-Chatchat项目:1.2-Baichuan2项目整体介绍
摘要:由百川智能推出的新一代开源大语言模型,采用2.6万亿Tokens的高质量语料训练,在多个权威的中文、英文和多语言的通用、领域benchmark上取得同尺寸最佳的效果,发布包含有7B、13B的Base和经过PPO训练的Chat版本,并提供了Chat版本的4bits量化。 一.Baichuan2模型 B 阅读全文
posted @ 2023-10-07 23:28 扫地升 阅读(987) 评论(0) 推荐(0) 编辑
Langchain-Chatchat项目:1.1-ChatGLM2项目整体介绍
摘要:ChatGLM2-6B是开源中英双语对话模型ChatGLM-6B的第2代版本,引入新的特性包括更长的上下文(基于FlashAttention技术,将基座模型的上下文长度由ChatGLM-6B的2K扩展到了32K,并在对话阶段使用8K的上下文长度训练);更高效的推理(基于Multi-QueryAtte 阅读全文
posted @ 2023-10-07 23:28 扫地升 阅读(461) 评论(0) 推荐(0) 编辑
Langchain-Chatchat项目:1-整体介绍
摘要:基于Langchain与ChatGLM等语言模型的本地知识库问答应用实现。项目中默认LLM模型改为THUDM/chatglm2-6b[2],默认Embedding模型改为moka-ai/m3e-base[3]。 一.项目介绍 1.实现原理 本项目实现原理如下图所示,过程包括加载文件->读取文本->文 阅读全文
posted @ 2023-10-07 23:27 扫地升 阅读(2071) 评论(0) 推荐(0) 编辑
Boost程序库完全开发指南:1.2-C++基础知识点梳理
摘要:主要整理了N多年前(2010年)学习C++的时候开始总结的知识点,好长时间不写C++代码了,现在LLM量化和推理需要重新学习C++编程,看来出来混迟早要还的。 1.const_cast <new_type> (expression)[1] 解析:const_cast转换符用来移除变量的const或v 阅读全文
posted @ 2023-10-05 01:29 扫地升 阅读(144) 评论(0) 推荐(0) 编辑
Boost程序库完全开发指南:1.1-C++基础知识点梳理
摘要:主要整理了N多年前(2010年)学习C++的时候开始总结的知识点,好长时间不写C++代码了,现在LLM量化和推理需要重新学习C++编程,看来出来混迟早要还的。 1.shared_ptr 解析:shared_ptr是一种计数指针,当引用计数变为0时,shared_ptr所指向的对象将会被删除。如下所示 阅读全文
posted @ 2023-10-05 01:29 扫地升 阅读(61) 评论(0) 推荐(0) 编辑
Boost程序库完全开发指南:1-开发环境和构建工具
摘要:Boost官方于2019年12月发布的1.72版编写,共包含160余个库/组件,涵盖字符串与文本处理、容器、迭代器、算法、图像处理、模板元编程、并发编程等多个领域,使用Boost,将大大增强C++的功能和表现力。环境:Windows 10,WSL2,Ubuntu 20.04 LTS,Rider(WS 阅读全文
posted @ 2023-10-05 01:28 扫地升 阅读(203) 评论(0) 推荐(0) 编辑
CUDA C编程权威指南:1.3-CUDA基础知识点梳理
摘要:主要整理了N多年前(2013年)学习CUDA的时候开始总结的知识点,好长时间不写CUDA代码了,现在LLM推理需要重新学习CUDA编程,看来出来混迟早要还的。 1.CUDA数组 解析:CUDA数组是使用cudaMallocArray()、cudaMalloc3DArray()分配的,使用cudaFr 阅读全文
posted @ 2023-10-05 01:28 扫地升 阅读(324) 评论(0) 推荐(0) 编辑
CUDA C编程权威指南:1.2-CUDA基础知识点梳理
摘要:主要整理了N多年前(2013年)学习CUDA的时候开始总结的知识点,好长时间不写CUDA代码了,现在LLM推理需要重新学习CUDA编程,看来出来混迟早要还的。 1.闭扫描和开扫描 对于一个二元运算符和一个元输入数组。如果返回输出数组为,那么是闭扫描;如果返回输出数组为,那么是开扫描。串行闭扫描算法, 阅读全文
posted @ 2023-10-05 01:27 扫地升 阅读(178) 评论(0) 推荐(0) 编辑
CUDA C编程权威指南:1.1-CUDA基础知识点梳理
摘要:主要整理了N多年前(2013年)学习CUDA的时候开始总结的知识点,好长时间不写CUDA代码了,现在LLM推理需要重新学习CUDA编程,看来出来混迟早要还的。 1.CUDA 解析:2007年,NVIDIA推出CUDA(Compute Unified Device Architecture,统一计算设 阅读全文
posted @ 2023-10-05 01:27 扫地升 阅读(512) 评论(0) 推荐(0) 编辑
CUDA C编程权威指南:1-基于CUDA的异构并行计算
摘要:什么是CUDA?CUDA(Compute Unified Device Architecture,统一计算设备架构)是NVIDIA(英伟达)提出的并行计算架构,结合了CPU和GPU的优点,主要用来处理密集型及并行计算。什么是异构计算?这里的异构主要指的是主机端的CPU和设备端的GPU,CPU更擅长逻 阅读全文
posted @ 2023-10-05 01:26 扫地升 阅读(200) 评论(0) 推荐(0) 编辑
Llama2-Chinese项目:8-TRL资料整理
摘要:TRL(Transformer Reinforcement Learning)是一个使用强化学习来训练Transformer语言模型和Stable Diffusion模型的Python类库工具集,听上去很抽象,但如果说主要是做SFT(Supervised Fine-tuning)、RM(Reward 阅读全文
posted @ 2023-10-05 01:26 扫地升 阅读(829) 评论(0) 推荐(0) 编辑
Llama2-Chinese项目:7-外延能力LangChain集成
摘要:本文介绍了Llama2模型集成LangChain框架的具体实现,这样可更方便地基于Llama2开发文档检索、问答机器人和智能体应用等。 1.调用Llama2类 针对LangChain[1]框架封装的Llama2 LLM类见examples/llama2_for_langchain.py,调用代码如下 阅读全文
posted @ 2023-10-05 01:25 扫地升 阅读(203) 评论(0) 推荐(0) 编辑
Llama2-Chinese项目:6-模型评测
摘要:测试问题筛选自AtomBulb[1],共95个测试问题,包含:通用知识、语言理解、创作能力、逻辑推理、代码编程、工作技能、使用工具、人格特征八个大的类别。 1.测试中的Prompt 例如对于问题"列出5种可以改善睡眠质量的方法",如下所示: [INST] <<SYS>>You are a helpf 阅读全文
posted @ 2023-10-05 01:25 扫地升 阅读(83) 评论(0) 推荐(0) 编辑
Llama2-Chinese项目:5-推理加速
摘要:随着大模型参数规模的不断增长,在有限的算力资源下,提升模型的推理速度逐渐变为一个重要的研究方向。常用的推理加速框架包含lmdeploy、FasterTransformer和vLLM等。 一.lmdeploy推理部署 lmdeploy由上海人工智能实验室开发,推理使用C++/CUDA,对外提供pyth 阅读全文
posted @ 2023-10-05 01:24 扫地升 阅读(1535) 评论(0) 推荐(0) 编辑
Llama2-Chinese项目:4-量化模型
摘要:一.量化模型调用方式 下面是一个调用FlagAlpha/Llama2-Chinese-13b-Chat[1]的4bit压缩版本FlagAlpha/Llama2-Chinese-13b-Chat-4bit[2]的例子: from transformers import AutoTokenizerfro 阅读全文
posted @ 2023-10-05 01:24 扫地升 阅读(1280) 评论(0) 推荐(0) 编辑
Llama2-Chinese项目:3.2-LoRA微调和模型量化
摘要:提供LoRA微调和全量参数微调代码,训练数据为data/train_sft.csv,验证数据为data/dev_sft.csv,数据格式为"<s>Human: "+问题+"\n</s><s>Assistant: "+答案。本文主要介绍Llama-2-7b模型LoRA微调以及4bit量化的实践过程。 阅读全文
posted @ 2023-10-01 23:50 扫地升 阅读(2380) 评论(0) 推荐(0) 编辑
Llama2-Chinese项目:3.1-全量参数微调
摘要:提供LoRA微调和全量参数微调代码,训练数据为data/train_sft.csv,验证数据为data/dev_sft.csv,数据格式如下所示: "<s>Human: "+问题+"\n</s><s>Assistant: "+答案 举个例子,如下所示: <s>Human: 用一句话描述地球为什么是独 阅读全文
posted @ 2023-10-01 00:06 扫地升 阅读(1280) 评论(2) 推荐(1) 编辑

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

点击右上角即可分享
微信分享提示