大语言模型设置
了解影响模型输出的关键参数
使用提示词时,你通常会通过 API 或直接与大语言模型进行交互(如 DeepSeek 开放平台、豆包 API 等)。可以通过配置一些参数来获得不同的提示结果。调整这些设置对于提高响应的可靠性非常重要,你可能需要进行一些实验才能找出适合你用例的正确设置。
Temperature
Temperature 的参数值越小,模型就会返回越确定的结果。如果调高该参数值,大语言模型可能会返回更随机的结果,也就是说这可能会带来更多样化或更具创造性的产出。
调小 Temperature 实质上是在增加其他可能 Token 的权重。在实际应用方面,对于质量保障(QA)等任务,可以设置更低的 Temperature 值,以促使模型基于事实返回更真实和简洁的结果。对于诗歌生成或其他创造性任务,适度调高 Temperature 参数值可能会更好。
建议:对于需要确定性答案的任务(如事实问答),使用较低的 Temperature(如 0.1-0.3);对于需要创造性的任务(如写作、头脑风暴),使用较高的 Temperature(如 0.7-1.0)。
Top P
Top P(与 Temperature 一起称为核采样,nucleus sampling)可以用来控制模型返回结果的确定性。如果你需要准确和事实的答案,就把参数值调低;如果你在寻找更多样化的响应,可以将其值调高点。
使用 Top P 意味着只有 Token 集合中包含 Top P 概率质量的才会被考虑用于响应,因此较低的 Top P 值会选择最有信心的响应。较高的 Top P 值将使模型考虑更多可能的词语,包括不太可能的词语,从而导致更多样化的输出。
建议:一般建议改变 Temperature 和 Top P 其中一个参数就行,不用两个都调整。
Max Length(最大长度)
可以通过调整 Max Length 来控制大模型生成的 Token 数。指定 Max Length 有助于防止大模型生成冗长或不相关的响应,并控制成本。
Stop Sequences(停止序列)
Stop Sequence 是一个字符串,可以阻止模型继续生成 Token。指定 Stop Sequences 是控制大模型响应长度和结构的另一种方法。例如,可以通过添加 "11" 作为 Stop Sequence 来告诉模型生成不超过 10 个项的列表。
Frequency Penalty(频率惩罚)
Frequency Penalty 是对下一个生成的 Token 进行惩罚,这个惩罚和 Token 在响应和提示中已出现的次数成比例。Frequency Penalty 越高,某个词再次出现的可能性就越小。这个设置通过给重复数量多的 Token 设置更高的惩罚来减少响应中单词的重复。
Presence Penalty(存在惩罚)
Presence Penalty 也是对重复的 Token 施加惩罚,但与 Frequency Penalty 不同的是,惩罚对于所有重复 Token 都是相同的。出现两次的 Token 和出现 10 次的 Token 会受到相同的惩罚。此设置可防止模型在响应中过于频繁地生成重复的词。
如果你希望模型生成多样化或创造性的文本,可以设置更高的 Presence Penalty;如果你希望模型生成更专注的内容,可以设置更低的 Presence Penalty。
建议:与 Temperature 和 Top P 一样,一般建议改变 Frequency Penalty 和 Presence Penalty 其中一个参数就行,不要同时调整两个。