板端运行时,需提供采样配置文件对模型输出的logits进行采样。
该配置文件位于部署包 oellm_runtime/configs/{model}_config 目录,文件名为 generation_config.json,内含使用的采样策略。
generation_config.json 中可设置的参数如下:
以下是采样配置文件中各参数的具体说明:
| 参数名称 | 参数类型 | 参数说明 |
do_sample | bool | 是否开启随机采样,不开启即采用 argmax。 取值范围:true,false。 |
temperature | float | 温度系数。取值范围:[0.0, 2.0],推荐设置范围:[0.6, 1.0]。 |
top_k | int | 保留概率最高的k个token进行采样,设置为1时相当于贪心采样。设置范围:[1, +∞),推荐设置范围:[20, 80]。 |
top_p | float | 累计概率采样阈值。取值范围:[0.0, 1.0],推荐设置范围:[0.85, 0.95]。 |
typ_p | float | 基于信息论的典型性阈值。取值范围:[0.0, 1.0],推荐设置范围:[0.90, 0.98]。 |
min_p | float | 最小概率阈值,过滤低概率token。取值范围:[0.0, 1.0],推荐设置范围:[0.05, 0.15]。 |
penalty_last_n | int | 惩罚窗口。取值范围:[0, 2048],推荐设置取值:32,64,128。 |
frequency_penalty | float | 频率惩罚。取值范围:[0.0, 2.0],推荐设置范围:[0.1, 0.5]。 |
presence_penalty | float | 存在惩罚。取值范围:[0.0, 2.0],推荐设置范围:[0.2, 0.6]。 |
repetition_penalty | float | 重复惩罚。取值范围:[0.0, 2.0],推荐设置范围:[1.05, 1.2]。 |
min_keep | int | 至少保留的候选词数。取值范围:[1, +∞)。 |