常用概念
更新时间:2024-09-13
目录
数据服务相关
数据是模型训练的基础,在整个模型效果中起着至关重要的作用。平台提供统一的数据集管理接口,将分散的数据进行集中式纳管,节省数据集收集和管理成本。
概念名 | 描述 |
---|---|
数据集管理 | 集中管理数据集,对数据进行导入和删除等操作;进行数据集的版本控制,数据纳管标准化运行。 |
BOS目录 | 导入数据集常用。集中保存数据集的BOS桶,选择Bucket地址和文件夹地址,导入该目录下的数据集,该层目录下子文件目录及非相关内容(包括压缩包格式等)不导入,使用BOS需要先开通服务。 |
分享链接 | 导入数据集常用,第三方数据集链接,仅支持来自百度BOS、阿里OSS、华为OBS的共享链接。 |
文本对话-非排序 | 此类数据集用于SFT,一个提示词(prompt)对应一个标注(response)。 |
文本对话-含排序 | 此类数据集用于奖励模型训练,一个提示词(prompt)对应多个标注(response),并且依据人类反馈对标注进行排序。 |
query问题集 | Prompt集,用于强化学习训练,无需标注,作为问题集组合,会利用prompt对奖励模型进行质问。 |
众测标注 | 将数据标注任务发布至百度众测平台,百度众测团队具备10年以上的数据服务经验和丰富的标注人力,完成数据标注。 |
单轮对话 | 只涉及一个核心问题,对话的双方只需要针对这个问题进行回答和交流,不需要对之前的回答进行进一步的追问或解释。 |
多轮对话 | 对话的双方需要在一系列问题中进行多次交流和回答,每次回答都可能引出下一个问题。 |
大模型训练相关
大模型训练是本平台的核心功能,统一查看模型的训练状态选择更加适合的模型训练方式。
概念名 | 描述 |
---|---|
迭代轮次 | Epoch,控制训练过程中的迭代轮数。可以根据数据规模适当调整Epoch大小,若用1000条数据SFT,Epoch推荐为10。若用10000条数据SFT,Epoch推荐为2。 |
数据批 | Batch_size,即一次训练所抓取的数据样本数量,Batch_size大小影响训练速度和模型的优化。 |
学习率 | Learning rate (LR),是在梯度下降的过程中更新权重时的超参数,过高会导致模型难以收敛,过低则会导致模型收敛速度过慢,平台已给出默认推荐值,可根据经验调整。 |
全量更新 | 训练过程中对大模型的全部参数进行更新。 |
Prompt Tuning | 在固定预训练大模型本身的参数的基础上,增加prompt embedding参数,并且训练过程中只更新prompt参数。 |
LoRA | 在固定预训练大模型本身的参数的基础上,在保留自注意力模块中原始权重矩阵的基础上,对权重矩阵进行低秩分解,训练过程中只更新低秩部分的参数。 |
奖励模型 | 训练的最终目的是刻画模型的输出是否在人类看来表现不错。 |
强化学习 | 再励学习、评价学习或增强学习,利用问题集质问奖励模型,合成问题最优解的应答。 |
采样率 | 对数据集进⾏随机采样,取值范围为[0.01-10]。当数据集过⼤或质量不⾼,可以利⽤⽋采样(采样率⼩于1)来缩减训练数据的⼤⼩;当数据集过⼩或质量较⾼,可以利⽤过采样(采样率⼤于1)来增加训练数据的⼤⼩,数值越⼤训练时对该部分数据的关注度越⾼,但训练时⻓及费⽤越⾼,推荐过采样率范围为[1-5]。 |
大模型管理相关
集中管理平台训练、压缩及预置的生成式大模型,支持对模型进行评估、压缩及部署。
概念名 | 描述 |
---|---|
贪心搜索greedy search | 直接选择每个输出的最大概率,直到出现终结符或最大句子长度。贪心算法在翻译每个字的时候,直接选择条件概率最大的候选值作为当前最优。 |
vLLM | 快速且易于使用的 LLM 推理和服务库,它是一个大型语言模型推理加速工具,它通过优化内存管理、连续批处理、CUDA核心优化和分布式推理支持等技术手段,显著提高了大型语言模型的推理速度和效率。更多知识了解可点击获取vLLM、vLLM的实践与应用 |
束搜索(beam search) | 解决优化问题的一种启发式方法,它是在分枝定界方法基础上发展起来的,它使用启发式方法估计k个最好的路径,仅从这k个路径出发向下搜索,即每一层只有满意的结点会被保留,其它的结点则被永久抛弃,从而比分枝定界法能大大节省运行时间。 |
num_beams | 参数用于束搜索(beam search)算法,其用途是控制生成的多个候选句子的数量,该参数控制的是每个生成步要保留的生成结果的数量,用于在生成过程中增加多样性或生成多个可能的结果。 |
多项式采样(Multinomial Sampling) | 每一个时间步,根据概率分布随机采样字(每个概率>0的字都有被选中的机会)。 |
BOS目录 | 导入第三方模型时常用。集中保存第三方大模型的BOS桶,选择Bucket地址和文件夹地址,导入该目录下的模型,该层目录下子文件目录及非相关内容(包括压缩包格式等)不导入,使用BOS需要先开通服务。 |
HuggingFace > Transformers | 支持导入的第三方模型格式,详细目录可查看模型格式。 |
续写模式 | 导入模型时的输入输出格式,适用Pretrain或Post-Pretrain Base模型。 |
对话模式 | 导入模型时的输入输出格式,对话模式适用经过指令精调的Chat模型。 |
评估数据集 | 模型进行评估时,通常是在与训练数据集相似的情况下收集的,用来代表真实世界的样本数据,可以是平台数据集或预置数据集。 |
基于裁判员模型 | 模型评估时,使用能力更强的大模型(文心系列大模型)作为裁判员,对被评估模型的生成结果进行自动化打分,适用于开放性或复杂问答场景。 |
量化压缩 | 模型压缩时,同等QPS目标下,降低推理显存占用。 |
稀疏化 | 模型压缩时,在同等算力资源下,降低单Token时延、提升QPS。 |
动态图编程 | 采用 Python 的编程风格,解析式地执行每一行网络代码,并同时返回计算结果。体验更佳、更易调试,但是因为采用 Python 实时执行的方式,消耗较大,在性能方面与 C++ 有一定差距。 |
静态图编程 | 采用先编译后执行的方式。需先在代码中预定义完整的神经网络结构,框架会将神经网络描述为 Program 的数据结构,并对 Program 进行编译优化,再调用执行器获得计算结果。调试难度大,但是将前端 Python 编写的神经网络预定义为 Program 描述,转到 C++ 端重新解析执行,脱离了 Python 依赖,往往执行性能更佳,并且预先拥有完整网络结构也更利于全局优化。 |
大模型服务相关
发布公有云服务,将训练完成的模型部署在百度云服务器,通过云服务接口调用模型。
概念名 | 描述 |
---|---|
私有资源池 | 服务托管在私有资源池时,可设定在线服务部署的算力单元来保障QPS。 |
温度 | temperature,较高的数值会使输出更加随机,而较低的数值会使其更加集中和确定。建议该参数和top_p只设置1个。 |
多样性 | top_p,影响输出文本的多样性,取值越大,生成文本的多样性越强。建议该参数和temperature只设置1个。 |
重复惩罚 | penalty_score,用通过对已生成的token增加惩罚,减少重复生成的现象。说明:值越大表示惩罚越大。 |
AK/SK | 在创建应用时生成的API Key和Secret Key,调用应用时不轻易泄露的重要凭证。 |
QPS | Queries Per Second,每秒处理查询次数。如默认QPS=5,即API每秒最多可以处理5个请求。 |
RPM | Requests Per Minute,每分钟处理请求数。如默认QPS=5,默认RPM=300,即API每分钟最多可以处理300个请求。 |
TPM | Tokens Per Minute,每分钟处理tokens数(输入+输出)。如默认QPS=5,TPM=300k,即API最多可以消耗300k(30万)tokens,即每个服务平均处理1000tokens。 |
Prompt工程相关
平台支持对Prompt模板的使用和管理,并且可以对单独或批量的Prompt进行优化。
概念名 | 描述 |
---|---|
Prompt | 提示词,简单的理解成它是给大模型的指令。它可以是一个问题、一段文字描述,甚至可以是带有一堆参数的文字描述。大模型会基于 prompt 所提供的信息,生成对应的文本或者图片。 |
思维链条 | 在prompt优化时常用,拆解Prompt内容,逐步进行推理,建议仅在数学计算或逻辑推理场景下开启。 |
Tip:API相关内容可查看API列表。