核采样概率阈值

Top-P (Nucleus Sampling)

Top-P(核采样)是控制采样范围的参数:只保留累计概率达到 P 的最可能 Token 集合作为候选,从集合内按相对概率采样,典型值 0.1 ~ 0.95,是 Temperature 的常见替代方案。

详细解释

Top-P(Nucleus Sampling,核采样) 是另一种调”创造性”的主流方式,思路和 Temperature 互补:Temperature 是”拉平/拉尖整个概率分布”,而 Top-P 是硬切一刀——把所有候选 Token 按概率从高到低排序,从顶部开始累积,直到累计概率刚好达到参数 p,后面概率太小的 Token 直接丢掉,再也不可能被抽到。

举例:词表里 10 个 Token 的概率分别是 [0.45, 0.3, 0.12, 0.05, 0.03, 0.02, 0.015, 0.01, …]:

  • Top-P = 0.9:累加 0.45+0.3+0.12+0.05+0.03 → =0.95 ≥ 0.9,停止。候选集 = 前 5 个。
  • Top-P = 0.8:累加到 0.45+0.3+0.12 = 0.87 ≥ 0.8,候选集 = 前 3 个。
  • Top-P = 0.5:只留第 1 个(贪心解码,等价于 Temperature=0)。
  • Top-P = 1.0:不做截断,保留全部(完全放开)。

Top-P 推荐值速查表

Top-P直观感受适用任务
0.1 ~ 0.3非常保守,几乎只选第一名代码生成、JSON 抽取、数学题
0.4 ~ 0.6中等保守,留出几个备选客服、FAQ、事实问答
0.7 ~ 0.9平衡态,默认档通用对话、翻译、文案
0.9 ~ 0.95高多样性创意写作、长文续写
0.95 ~ 1.0非常开放,低概率词也可能抽中纯创意发散,注意控制不要跑飞

与 Temperature、Top-K 的三角关系

参数工作方式OpenAI 是否原生支持
Temperature缩放 logits 再 softmax✅ 支持(0–2)
Top-P按累计概率截断”长尾”✅ 支持(0–1)
Top-K按固定数量截断前 K 个❌ OpenAI 官方不支持,DeepSeek/Claude/Gemini 等支持

黄金规则:Top-P 和 Temperature 只调其中一个,另一个留默认值(Top-P=1 / Temperature=1)。如果两个同时乱改,采样行为会很难预测和复现。

唯元智创(Weimeta)作为聚合平台会把你传的 Top-P / Top-K 按上游模型能力自动做兼容转换:例如上游不支持 Top-K 时,会估算成等效 Top-P 传过去,保证采样风格尽量一致。

常见问题

Top-P=0.5 和 Top-K=50 我该调哪个?
优先 Top-P:因为它是”动态 K”——在模型信心很高时(下一个词几乎确定)Top-P=0.9 实际只留 1–2 个候选等价于 Top-K=2;而模型信心低时,Top-P=0.9 会留几百上千候选给模型选择空间,比固定 Top-K=50 更智能。