参数列表

成员名称

类型

默认值

描述

topkToppSamplingType

TopkToppSamplingType

SINGLE_TOPK_SAMPLING

取样处理类型。

  • SAMPLING_UNDEFINED:未定义,不作为取样处理类型。
  • SINGLE_TOPK_SAMPLING:非batch级别随机种子、top-k。BATCH_TOPK_MULTINOMIAL_SAMPLING:batch级别随机种子、top-k的multinomial取样。
  • BATCH_TOPK_EXPONENTIAL_SAMPLING:batch级别随机种子,top-k的exponential取样。
  • BATCH_TOPK_MULTINOMIAL_LOGPROBS_SAMPLING:batch级别随机种子、top-k的multinomial取样,输出增加logProbs。仅支持Atlas 800I A2 推理产品/Atlas A2 训练系列产品
  • BATCH_TOPK_EXPONENTIAL_LOGPROBS_SAMPLING:batch级别随机种子,top-k的exponential取样,输出增加logProbs。仅支持Atlas 800I A2 推理产品/Atlas A2 训练系列产品
  • SAMPLING_MAX:枚举最大值,不作为取样处理类型。

randSeed

uint32_t

0

top-p阶段随机抽样使用的随机数种子,默认值为0。当topktoppSamplingtype = SINGLE_TOPK_SAMPLING时使用。

topk

uint32_t

100

top-k阶段保留的词的个数,需要小于词表的词数,默认值为100。top-k必须大于0且小于或等于输入probs最后一维的大小。当topktoppSamplingtype = SINGLE_TOPK_SAMPLING时使用。

randSeeds

std::vector<uint32_t>

-

每个batch下top-p阶段随机抽样使用的随机数种子。维度与batch大小一致。当topktoppSamplingtype = BATCH_TOPK_MULTINOMIAL_SAMPLING时使用。

logProbsSize

int32_t

0

为scalar的int型变量。取值范围是(0, 16384],在枚举值为BATCH_TOPK_EXPONENTIAL_LOGPROBS_SAMPLING,BATCH_TOPK_MULTINOMIAL_LOGPROBS_SAMPLING时生效。

rsv[12]

uint8_t

{0}

预留参数。