PEFT
加入 Hugging Face 社区
并获得增强的文档体验
模型合并
PEFT 提供了几个内部工具,用于使用 TIES 和 DARE 方法合并 LoRA 适配器。
peft.utils.merge_utils.prune
< 源码 > ( tensor: Tensor density: float method: typing.Literal['magnitude', 'random'] rescale: bool = False ) → torch.Tensor
参数
- tensor (
torch.Tensor
) — 要剪枝的张量。 - density (
float
) — 要保留的值的比例。应在 [0,1] 范围内。 - method (
str
) — 用于剪枝的方法。应为 [“magnitude”, “random”] 之一。 - rescale (
bool
) — 是否重新缩放结果以保留原始张量的期望值。
剪枝后的张量。
根据 method
剪枝任务张量的值。
peft.utils.merge_utils.calculate_majority_sign_mask
< 源码 > ( tensor: Tensor method: typing.Literal['total', 'frequency'] = 'total' ) → torch.Tensor
参数
- tensor (
torch.Tensor
) — 用于获取掩码的张量。 - method (
str
) — 用于获取掩码的方法。应为 [“total”, “frequency”] 之一。
多数符号掩码。
获取跨任务张量的多数符号的掩码。任务张量堆叠在维度 0 上。
peft.utils.merge_utils.disjoint_merge
< 源码 > ( task_tensors: Tensor majority_sign_mask: Tensor ) → torch.Tensor
参数
- task_tensors (
torch.Tensor
) — 要合并的任务张量。 - majority_sign_mask (
torch.Tensor
) — 跨任务张量的多数符号掩码。
合并后的张量。
使用不相交合并方法合并任务张量。
peft.utils.merge_utils.task_arithmetic
< 源码 > ( task_tensors: list weights: Tensor ) → torch.Tensor
参数
- task_tensors(
List[torch.Tensor]
) — 要合并的任务张量。 - weights (
torch.Tensor
) — 任务张量的权重。
合并后的张量。
使用 `任务算术` 合并任务张量。
peft.utils.merge_utils.ties
< 源码 > ( task_tensors: list weights: Tensor density: float majority_sign_method: typing.Literal['total', 'frequency'] = 'total' ) → torch.Tensor
参数
- task_tensors(
List[torch.Tensor]
) — 要合并的任务张量。 - weights (
torch.Tensor
) — 任务张量的权重。 - density (
float
) — 要保留的值的比例。应在 [0,1] 范围内。 - majority_sign_method (
str
) — 用于获取多数符号掩码的方法。应为 [“total”, “frequency”] 之一。
合并后的张量。
使用 `ties` 合并任务张量。
peft.utils.merge_utils.dare_linear
< 源码 > ( task_tensors: list weights: Tensor density: float ) → torch.Tensor
参数
- task_tensors(
List[torch.Tensor]
) — 要合并的任务张量。 - weights (
torch.Tensor
) — 任务张量的权重。 - density (
float
) — 要保留的值的比例。应在 [0,1] 范围内。
合并后的张量。
使用 `dare 线性` 方法合并任务张量。
peft.utils.merge_utils.dare_ties
< 源码 > ( task_tensors: list weights: Tensor density: float majority_sign_method: typing.Literal['total', 'frequency'] = 'total' ) → torch.Tensor
参数
- task_tensors(
List[torch.Tensor]
) — 要合并的任务张量。 - weights (
torch.Tensor
) — 任务张量的权重。 - density (
float
) — 要保留的值的比例。应在 [0,1] 范围内。 - majority_sign_method (
str
) — 用于获取多数符号掩码的方法。应为 [“total”, “frequency”] 之一。
合并后的张量。
使用 `dare ties` 合并任务张量。
< > 在 GitHub 上更新
© . This site is unofficial and not affiliated with Hugging Face, Inc.