flashinfer.logits_processor.MinP

class flashinfer.logits_processor.MinP(**params: Any)

最小概率 p 过滤处理器。

保留概率至少为最大概率 p 倍的 token。

TensorType.PROBS -> TensorType.PROBS

参数:

min_p (floattorch.Tensor, Runtime) – 最小概率阈值,作为最大概率的比例。必须在 (0, 1] 内。可以是一个标量或每批次的张量。

示例

>>> import torch
>>> from flashinfer.logits_processor import LogitsPipe, Softmax, MinP, Sample
>>> torch.manual_seed(42)
>>> pipe = LogitsPipe([MinP()])
>>> probs = torch.randn(2, 2, device="cuda")
>>> probs_normed = probs / probs.sum(dim=-1, keepdim=True)
>>> probs_normed
tensor([[ 0.0824,  0.9176], [-0.2541,  1.2541]], device='cuda:0')
>>> minp_probs = pipe(probs_normed, min_p=0.05)
>>> minp_probs
tensor([[0.0824, 0.9176], [0.0000, 1.0000]], device='cuda:0')
__init__(**params: Any)

MinP 处理器的构造函数。不需要编译时参数。

方法

__init__(**params)

MinP 处理器的构造函数。

legalize(input_type)

将处理器合法化为低级运算符列表。