【通俗易懂】详解AI大模型微调中的常见超参数的作用
一、前言
- 在使用大模型(如 ChatGPT、Claude、Gemini 、通义千问、DeepSeek)时,理解其核心参数对控制输出非常有帮助。
二、🌟常见的核心参数及其作用
参数名 | 作用说明 | 修改后的影响 | 示例解释 |
---|---|---|---|
temperature | 控制回答的随机性和创造性 | 越大回答越“灵活、多变”;越小越“保守、稳定” | temperature=0.2 :适合技术文档temperature=0.9 :适合创意写作、脑洞想法 |
top_p (nucleus sampling) | 控制采样时保留前P概率的词汇子集 | 类似于 temperature,但更稳定;建议二者二选一调整 | top_p=0.9 表示从最可能的 90% 词汇中随机选词 |
max_tokens | 限制输出长度(一个 token ≈ 一个英文单词) | 限制太短会截断回答;太长会浪费资源 | max_tokens=50 :回答简短精炼max_tokens=1000 :可输出长文或结构化 JSON |
presence_penalty | 惩罚重复出现的内容 | 提高“内容多样性” | 增大后模型不容易重复自己 |
frequency_penalty | 惩罚重复出现的词语频率 | 避免模型反复用相同词语表达 | 增大后模型会用更多不同词说话 |
stop (停止词) | 设置一组触发“停止生成”的关键词 | 控制模型在生成到某处就停 | stop=["User:", "Agent:"] 可用于对话格式控制 |
三、各参数调整前后对比
🔹 输入提示词:“写一段介绍咖啡的文案”
(1)temperature – 控制创造力 / 随机性
设置 | 输出示例 | 说明 |
---|---|---|
temperature = 0.2 | “咖啡是一种由咖啡豆制成的饮品,具有提神作用。” | 逻辑清晰、表述严谨,但非常基础和保守 |
temperature = 0.9 | “咖啡是唤醒灵魂的魔法液体,每一滴都藏着故事。” | 更具创意、有文艺感,适合文案写作或宣传语 |
(2)top_p – 控制词汇采样范围(越小越保守)
设置 | 输出示例 | 说明 |
---|---|---|
top_p = 0.3 | “咖啡是一种常见饮品,用于提神。” | 保守、只选最高概率词 |
top_p = 0.95 | “咖啡是夜色中的一抹微光,是生活的片刻温柔。” | 有创意,风格丰富,像温柔诗句 |
(3)max_tokens – 限制回答长度
设置 | 输出示例 | 说明 |
---|---|---|
max_tokens = 10 | “咖啡是一种饮品。” | 仅输出短句或片段 |
max_tokens = 50 | “咖啡不仅是一种饮品,更是一种生活态度,它让我们在忙碌中找到片刻宁静。” | 内容完整、有情感色彩 |
max_tokens = 100 | “咖啡是一种源自非洲的饮品,由烘焙的咖啡豆制成,常用于提神和社交场景,也在文化中具有特殊象征意义。” | 输出更丰富,有背景和细节解释 |
- 在使用大模型时,常遇到的输出被截断的问题可能就需要调整这个参数。
(4)presence_penalty – 惩罚内容重复性(控制话题重复)
设置 | 输出示例 | 说明 |
---|---|---|
presence_penalty = 0.0 | “咖啡是一种饮品。咖啡可以提神。很多人喜欢喝咖啡。” | 重复“咖啡”,容易啰嗦 |
presence_penalty = 1.2 | “咖啡源自异域,香气浓郁,是许多人早晨的仪式感。” | 更倾向于换词说法,避免重复关键词 |
(5)frequency_penalty – 限制词语高频出现(控制用词频率)
设置 | 输出示例 | 说明 |
---|---|---|
frequency_penalty = 0.0 | “咖啡、咖啡、咖啡……人们每天都喝咖啡。” | 高频词重复出现 |
frequency_penalty = 1.0 | “人们喜欢以一杯香浓的热饮开启新的一天。” | 避免重复“咖啡”,选择替代词表达 |
(6)stop – 设置回答的终止点
设置 | 输出示例 | 说明 |
---|---|---|
stop = ["。"] | “咖啡是一种常见饮品” ← 提前停止 | 一旦输出到 “。” 就自动停止 |
stop = ["用户:", "人类:"] | 输出停在模拟对话的下一轮之前 | 用于控制对话节奏,防止生成过多 |
四、适用的调参场景
目标 | 推荐参数设置 |
---|---|
精准回答 / 专业场景 | temperature=0.3 , max_tokens=100 , presence_penalty=0.5 |
创意文案 / 宣传语 | temperature=0.9 , frequency_penalty=1.0 |
避免重复表达 | presence_penalty=1.2 , frequency_penalty=1.0 |
输出控制长度 | max_tokens=50 or 设置 stop |
限制回答话题范围 | top_p=0.4 保守选词 |