赞
踩
来源:大模型技术栈全览
Tokenizer是用于将文本切分为更小的单元(token)的方法,常用于自然语言处理(NLP)和机器翻译(MT)等任务中。不同的tokenizer有不同的优缺点和适用场景:
参考:
NLP 中的Tokenizer:BPE、BBPE、WordPiece、UniLM 理论
大模型中的分词器tokenizer:BPE、WordPiece、Unigram LM、SentencePiece
理解tokenizer之WordPiece: Subword-based tokenization algorithm
position encoding方是用于给Transformer模型添加位置信息的方法。不同的position encoding方案有不同的优缺点和适用场景,以下是两种方法:
综述:利用位置编码实现长度外推
大模型基础|位置编码|RoPE|ALiBi
ALiBi位置编码深度解析:代码实现、长度外推
混合精度下位置编码竟有大坑,LLaMA等主流开源模型纷纷中招
注意力机制是一种能够有效地捕捕获序列内的长距离依赖的神经网络技术,它可以用于处理各种序列数据,如自然语言、音频、视频等。Transformer 是 Google Brain 团队于 2017 年在论文《Attention Is All You Need》中提出的一种新的神经网络架构,它完全基于自注意力机制来处理序列数据,摒弃了之前常用的循环网络结构。Transformer 主要包括编码器(Encoder)和解码器(Decoder)两部分,每部分由多个相同的层堆叠而成。每一层都包含一个自注意力子层和一个前馈神经网络子层。Transformer 在机器器翻译、文本生成、对话系统等领域取得了显显著的性能提升。
SFT是Supervised Fine Tuning的缩写,它是一种用于自然语言处理的技术,它通过对预训练的语言模型进行微调,使其适应特定任务。在大模型SFT中,使用的是大型的预训练语言模型,例如LLAMA、GPT等,这些模型具有数十亿甚至数百亿个参数,可以处理大量的文本数据。
SFT的基本思想是利用指令(instruction)来引导模型生成特定任务所需的输出。指令是一种简短的文本,用于描述任务的目标和要求,例如“翻译以下句子”、“写一首诗”等。指令可以作为模型的输入的一部分,也可以作为模型的输出的一部分,具体取决于任务的类型。SFT的优点是可以动态地适应多种不同的任务,而不需要为每个任务单独设计模型或损失函数。
SFT的训练过程如下:
以下是一个简单的sfttrainer的例子,它使用了huggingface的数据集库中的imdb数据集,对facebook的opt-350m模型进行了指令微调,使其可以根据指令生成影评的摘要或情感分析的结果:
from datasets import load_dataset
from trl import SFTTrainer
dataset = load_dataset("imdb", split="train")
trainer = SFTTrainer(
"facebook/opt-350m",
train_dataset=dataset,
dataset_text_field="text",
max_seq_length=512,
)
trainer.train()
大模型基础|预训练|有监督微调SFT
实践篇3:大模型有监督微调SFT(Supervised Finetuning)
GPT系列模型(1-4)调研 & 对SFT/RLHF的思考
大模型之Bloom&LLAMA----SFT(模型微调)
Supervised Fine-tuning Trainer
RLHF是Reinforcement Learning from Human Feedback的缩写,它是一种用于对预训练的生成式语言模型进行指令微调的技术,它可以让模型根据不同的指令生成不同的内容,例如翻译、写诗、编程等。RLHF的优点是可以直接地优化人类反馈作为奖励的语言模型,使其与人类的偏好和价值观对齐。
RLHF的训练过程可以分为三个步骤:
详解大模型RLHF过程(配代码解读)
ChatGPT 背后的“功臣”——RLHF 技术详解
大模型入门(六)—— RLHF微调大模型
OpenAI独家绝技RLHF也被开源超越啦?!DPO让小白轻松玩转RLHF![已开源]
大模型分布式并行训练技术是一种用于加速大型深度学习模型训练的技术,它可以将模型和数据分布在多个计算设备上,同时进行训练,从而提高训练效率和扩展性。大模型分布式并行训练技术主要有两种类型:模型并行和数据并行。
模型并行是指将模型的参数或计算图划分为多个部分,分配到不同的设备上,每个设备只负责一部分模型的运算,然后通过通信协调各个部分的结果。模型并行可以处理超大规模的模型,但是也会增加通信的开销和复杂度。模型并行的方法有:
LLM(六):GPT 的张量并行化(tensor parallelism)方案
大模型训练:分布式训练之并行技术
图解大模型训练之:流水线并行(Pipeline Parallelism),以Gpipe为例
Techniques for training large neural networks
数据并行是一种用于加速大型深度学习模型训练的技术,它可以将数据划分为多个部分,分配到不同的设备上,每个设备负责一部分数据的运算,然后通过通信汇总各个设备的结果。数据并行可以处理大量的数据,但是也会增加内存的占用和通信的量。简单介绍一下它们的原理和特点:
图解大模型训练之:数据并行上篇(DP, DDP与ZeRO)
大模型分布式训练并行技术(二)-数据并行
[ LLM 分布式训练系列 01 ] 概览 && 数据并行(Data Parallelism)- DP, DDP, ZeRO
PyTorch 源码解读之 DP & DDP:模型并行和分布式训练解析
大模型训练moe是指混合专家(Mixture-of-experts,简称MoE)的,这是一种用于提高大型神经网络性能的技术,它可以将模型的一部分替换为多个专家,每个专家只负责处理一部分输入数据,从而增加模型的参数量和表达能力,同时减少计算量和训练时间。MoE的核心组件是门控网络(Gating network),它可以根据输入数据的特征,动态地选择合适的专家进行计算,然后将各个专家的输出进行加权平均,得到最终的结果。
大模型训练moe的主要挑战是如何在多个GPU上实现高效的分布式并行训练和推理,因为MoE的结构会引入额外的通信和同步的开销,以及内存和带宽的限制。为了解决这些问题,业界提出了一些优化的方法和系统,例如:
更全更快更强!HetuMoE开源:万亿大模型MoE训练系统
对MoE大模型的训练和推理做分布式加速——DeepSpeed-MoE论文速读
OpenAI 研究员最新博客:如何在多GPU上训练真正的大模型?
PEFT是指参数高效微调(Parameter-Efficient Fine-Tuning)的,这是一种用于对大型预训练模型进行有效适应的技术,它只微调模型的一小部分参数,而不是所有的参数,从而降低了计算和存储的成本。PEFT的方法有很多种,您提到的Adapter类、Prompt类和LoRA类是其中的三种,简单介绍一下它们的原理和特点:
大模型高效微调综述下: DiffPruning、BitFit、LoRa、AdaLoRA、MAM Adapters、UniPELT
【peft】huggingface大模型加载多个LoRA并随时切换
详解大模型微调方法LoRA Adapter(内附实现代码)
大模型PEFT技术原理(一):BitFit、Prefix Tuning、Prompt Tuning
上下文扩展技术的,这是一种用于提高大型语言模型(LLM)对长文本的处理能力的技术,它可以让模型在不增加参数量的情况下,扩展其注意力范围,从而提高模型的语言理解和生成能力。上下文扩展技术有很多种,简单介绍一下它们的原理和特点:
Attention Sinks in LLMs for endless fluency
Optimizing your LLM in production
剪枝是一个关于如何通过删除大型预训练语言模型中的一些参数或层来减少模型大小和计算复杂度的主题。这样可以提高模型在不同平台上的适应性和效率,同时保持或提高模型的生成能力和泛化能力。大语言模型剪枝的方法可以分为以下几类:
NeurIPS 2023 | LLM-Pruner: 大语言模型的结构化剪枝
目前针对大模型蒸馏的方法有哪些?
大语言模型量化是一种技术,用于通过降低模型参数的数值精度,来减少模型的存储空间和计算复杂度。这样可以提高模型在不同平台上的适应性和效率,同时保持或提高模型的生成能力和泛化能力。
根据是否需要使用校准数据集来确定量化的阈值和比例,大语言模型量化的方法可以分为以下两类:
使用 AutoGPTQ 和 transformers 让大语言模型更轻量化
LLM(十一):大语言模型的模型量化(INT8/INT4)技术
LLM量化综合指南(8bits/4bits)
大模型量化技术原理-LLM.int8()、GPTQ
大模型量化技术原理-SmoothQuant
大模型量化技术原理-AWQ、AutoAWQ
大模型量化技术原理-SpQR
显存优化技术是指一些方法和算法,旨在减少大型语言模型(LLM)在推理或训练过程中对显存的消耗和占用。这些技术可以提高LLM的性能和效率,以及支持更长的序列和更大的批量大小。
经典显存优化技术分别是:
大语言模型推理性能优化综述
vLLM框架原理——PagedAttention
实用干货 | 大语言模型推理中的挑战与优化方案
为什么现在大家都在用 MQA 和 GQA?
FlashAttention2详解(性能比FlashAttention提升200%)
FlashAttenion-V3: Flash Decoding详解
LLM调度优化技术是指一些方法和算法,旨在提高LLM推理服务的性能和效率,通过合理地安排和执行不同的请求和任务。这些技术可以降低延迟,提高吞吐量,节省资源,适应动态的工作负载,以及支持多样化的应用场景。
四种LLM调度优化技术分别是:
LLM请求优化技术是指一些方法和算法,旨在提高LLM推理服务的质量和效果,通过合理地设计和处理不同的请求和响应。这些技术可以降低网络延迟,提高用户满意度,节省资源,适应动态的用户需求,以及支持多样化的应用场景。
两种LLM请求优化技术分别是:
加速LLM的采样和解码过程,即从模型的概率分布中抽取单词的过程。这些方法可以分为两类:一类是对模型或系统进行修改,以提高计算效率或并行性;另一类是对生成过程进行优化,以减少生成的步数或增加生成的并行度。它们的主要思想和特点如下:
Blockwise Parallel Decoding: 一种加速LLM解码的并行方法
Speculative Decoding for 2x Faster Whisper Inference
Skeleton-of-Thought: Large Language Models Can Do Parallel Decoding
模型并行策略是指一些方法和算法,旨在将一个大型的语言模型(LLM)分割成多个部分,并在不同的设备上并行地执行推理计算。这些策略可以解决LLM的内存限制问题,提高LLM的推理速度和效率,以及支持更长的序列和更大的批量大小。
两种模型并行策略分别是:
大模型训练 Pipeline Parallel 流水并行性能有没有什么评价指标?或者分析方法?
深度学习并行训练算法一锅炖: DDP, TP, PP, ZeRO
数据并行(DP)、张量模型并行(TP)、流水线并行(PP)
大模型算子融合是指通过合理地设计和实现不同的算子和优化策略。这些方法和技术可以减少内存占用,降低计算开销,提高并行度,适应不同的硬件平台,以及支持多样化的应用场景。
两种优化方法分别是:
RAG是一种先进的人工智能技术,它将信息检索与文本生成相结合,使AI模型能够从知识源中检索相关信息,并将其其融入生成的文本中。RAG的核心思想是利用VecDBs作为LLMs的外部知识库,以提高LLMs在回答复杂问题时的准确性和丰富性。RAG框架有两个主要组件:检索模型和生成模型。这些组件可以根据应用场景进行不同的配置和微调,共同使RAG模型成为一个非常灵活和强大的工具。
Chain-of-Note(CoN)是一种新的方法,旨在提高 RALMs(Retrieval Augmented Language Models)在面对对噪声、无关文档和未知场景时的的鲁棒性3。CoN 的核心思想是为检索文档生成顺序阅读笔记,使其能够全面评估它们与给定问题的相关性,并将这些信息整合到最终答案中。
self-rag是一种新的检索增强生成(RAG)的方法,它可以让大型语言模型(LLM)自己检索、生成和评价相关的信息,从而提高生成文本的质量和准确性。self-rag的主要特点是:
LLM(廿一):从 RAG 到 Self-RAG —— LLM 的知识增强
RAG (检索增强生成)技术详解:揭秘基于垂直领域专有数据的Chatbots是如何实现的
LangChain是一个基于大型语言模型(LLMs)和向量数据库(VecDBs)的新型解决方案,旨在解决LLMs在处理和集成来自外部数据库的大量动态数据时面临的挑战。LangChain提供了多种文档加载器(DocLoader)和文本分割器(TextSplitter),以帮助您轻松地将文档从不同的源加载到LangChain系统,并对文档进行适当的转换和组合。
Langchain文档分割器代码详解
让Langchain与你的数据对话(一):数据加载与分割
一文搞懂大模型RAG应用(附实践案例)
一文搞定检索增强生成(RAG)的理解和LangChain实现(附详细代码)
向量数据库是一种特殊的数据库,它以多维向量的形式保存信息。根据数据的复杂性和细节,每个向量的维数变化很大,从几个到几千个不等。这些数据可能包括文本、图像、音频和视频,使用各种过程 (如机器学习模型、词词嵌入或特征提取技术)将其转换为向量。矢量数据库的主要优点是它能够根据数据的的矢量接近度或相似性快速准确地定位和检索数据。这允许基于语义或上下文相关性的搜索,而不是像传统数据库那样仅仅依赖于精确匹配或设置标准。
一些常见的向量数据库包括NSW, NSG, HNSW, DiskAnn, LSH, IVF。其中,HNSW全称Hierarchical NSW,NSW是Navigable Small World,即“可导航小世界网络”算法。HNSW这种图索引结构因为其稳定、优秀的性能表现以及简单的参数配置,已经成为向量检索场景的标配。DiskANN是一种基于于磁盘的ANNS(近似最近邻搜索)解决方案,它能够在单个机器上实现高达5000 QPS(查询每秒)并且保持高达95% recall。
主流向量数据库一览
向量数据库|一文全面了解向量数据库的基本概念、原理、算法、选型
向量数据库简介和5个常用的开源项目介绍
RAG 的优化方法主要包括以下几个方面:
检索增强生成技术(RAG)深度优化指南:原理、挑战、措施、展望
大模型RAG问答技术架构及核心模块:从Embedding、prompt-embedding到Reranker
NLP(八十三)RAG框架中的Rerank算法评估
LLM in Reranking——利用LLM进行重排
大模型Agent是指能够利用大语言模型(LLM)进行记忆检索、决策推理和行动顺序选择等,把Agent的智能程度提升到了新的高度。大模型Agent的基本组件包括以下几个方面:
对齐微调是指将大语言模型的行为与人类的价值观或偏好对对齐,从而提高其在不同任务和场景中的适应性和可信度。
在工具调用领域,有几种基于对对齐微调的方案:
解密Prompt系列13. LLM Agent-指令微调方案: Toolformer & Gorilla
大语言模型(LLM)微调技术笔记
Chain of Hindsight Aligns Language Models with Feedback 阅读笔记
ReAct和Reflexion是两种不同的框架,它们都试图通过结合推理和动作来优化Agent的行为。它们的主要特点和区别是:
ReAct论文解读:LLM ReAct范式,在大语言模型中结合推理和动作
【论文阅读】Reflexion: 大模型如何从错误经验中学习?
Prompt Engineering是一种利用大语言模型(LLM)进行各种任务的技术,它通过设计和修改输入文本(即prompt),来引导和优化模型的输出。Prompt Engineering的目的是让模型能够正确理解和执行用户的指令,从而提高模型的效率和可靠性。
您提到的思维链(CoT)、思维树(ToT)和思维图(GoT)是三种不同的Prompt Engineering技术,它们都是基于工具调用的范式,即让模型能够调用外部的API或函数来完成一些特定的任务2。我将简要介绍它们的主要特点和区别:
从思维链(CoT),到思维树(ToT),再到思维图(GoT):用LLMs解决复杂问题!
漫谈Prompt(提示工程)与CoT(思维链)
有几个流行的框架可以用于训练大规模的 transformer 模型。包括
使用DeepSpeed-Megatron-LM训练模型
如何使用 Megatron-LM 训练语言模型
Colossal-AI
有几个流行的推理服务框架可以用于训练和部署大规模的 transformer 模型,如 Llama 2、Vicuna、Alpaca 等。
Llama2-Chinese项目:5-推理加速
llama.cpp
Llama.cpp Tutorial: A Complete Guide to Efficient LLM Inference and Implementation
推理加速框架是一些用于提高大规模语言模型(LLM)的推理性能和效率的工具和方法。它们通常利用了一些优化技术,如量化、并行化、缓存、内存管理等,来减少推理时间和资源消耗。一些推理加速框架的简要介绍如下:
Text Generation Inference
大模型部署推理方法汇总:以LLama2为例
LLM推理部署(一):LLM七种推理服务框架总结
大模型推理加速工具:vLLM
压缩框架是一些用于减少大规模语言模型(LLM)的参数数量和内存占用的工具和方法。它们通常利用了一些优化技术,如量化、剪枝、蒸馏等,来提高模型的效率和可移植性。一些压缩框架的简要介绍如下:
Transformers 中原生支持的量化方案概述
大语言模型量化方法对比:GPTQ、GGUF、AWQ
embedding 训练框架是一些用于训练和使用文本嵌入模型的工具和方法。文本嵌入模型可以将任意文本映射为低维稠密向量,以用于检索、分类、聚类或语义匹配等任务。两个 embedding 训练框架的简要介绍如下:
[nlp] 语义模型:FlagEmbedding 理论
[nlp] 语义模型 FlagEmbedding 实践
FlagEmbedding
向量数据库是一种用于存储和检索高维向量数据的数据库,它可以支持多种相似性度量和索引方法,以实现快速和准确的向量检索。向量数据库可以应用于多种场景,如图像搜索、语音识别、推荐系统、自然语言处理等。一些向量数据库的简要介绍如下:
笔记︱几款多模态向量检索引擎:Faiss 、milvus、Proxima、vearch、Jina等
AI向量数据库【Top 10】
LLM 应用框架是指基于语言模型的应用程序设计和开发的架构。不同的 LLM 应用框架可能有不同的特点和优势,例如推理速度、可扩展性、灵活性等。根据您的需求和场景,您可以选择合适的 LLM 应用框架来实现您想要的功能。
AutoChain —轻量级且可测试的 LangChain 替代品
AutoGPT: build & use AI agents
LlamaIndex
Langchain
一文详解最热的 LLM 应用框架 LangChain
使用 OpenAI、LangChain 和 LlamaIndex 构建自己的 DevSecOps 知识库
Python 前端框架是指用 Python 语言开发 Web 应用的工具和方法。在机器学习领域,有两个流行的 Python 前端框架,分别是 Streamlit 和 Gradio。它们都可以快速构建和部署机器学习模型的交互式 Web 应用,但有不同的特点和适用场景。
快速生成 AI 应用的框架对比:Gradio、Streamlit 和 Dash
Gradio入门到进阶全网最详细教程[一]:快速搭建AI算法可视化部署演示(侧重项目搭建和案例分享)
Streamlit和Gradio快速构建和部署机器学习模型的交互式应用
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。