拓冰建站拓冰建站
首页 / 资讯中心 / 正文

Ornith-1.5-9B 采样参数调优指南:temperature、top_p 等 6 个关键设置如何影响输出质量

Ornith-1.5-9B 采样参数调优指南temperature、top_p 等 6 个关键设置如何影响输出质量【免费下载链接】Ornith-1.5-9B项目地址: https://ai.gitcode.com/hf_mirrors/ornith-ai/Ornith-1.5-9BOrnith-1.5-9B 是 Ornith 团队推出的 9B 推理模型官方 README 明确给出了 temperature、top_p、top_k、presence_penalty 等推荐采样参数。本文带你逐一看懂这些参数为什么推理模型要用 temperature1.0top_p 与 top_k 如何分工以及通用任务与代码任务两套参数该怎么选。一、采样参数速查先记住这张表在调用 API 或服务端启动 Ornith-1.5-9B 时这些参数决定了每个 token 的挑选方式。官方推荐值来自 README.md 的 Quickstart 部分参数通用任务精准编码任务一句话作用temperature1.00.6控制输出的随机程度top_p0.950.95核采样按概率截断候选池top_k2020只保留概率最高的前 20 个候选min_p0.00.0按相对概率过滤候选0 即关闭presence_penalty1.50.0惩罚已出现过的内容抑制重复repetition_penalty1.01.0重复惩罚1.0 即不生效两点提醒不要只设 temperature 就完事。Ornith 的推荐组合里同时固定了 top_p、top_k 和 presence_penalty只改 temperature、其余参数用框架默认值效果往往达不到官方评测水平。服务端要开启解析器。Ornith-1.5-9B 默认以think…/think开头进行思考vLLM/SGLang 需加--reasoning-parser qwen3才能把思考内容分离到reasoning_content字段详见 README.md Serving Ornith-1.5-9B 一节。二、每个参数到底在做什么1. temperature随机性的总开关temperature 对 token 概率分布做锐化或平滑值越低输出越确定、越聚焦高概率词值越高分布越平冷门词也被选中输出越发散。新手常犯的错误是给推理模型设temperature0或0.2以为越冷越聪明。事实恰好相反——见第四节。2. top_p按概率截断候选池核采样只保留累计概率达到 p 的最小候选词集合。top_p0.95意味着丢弃长尾 5% 的概率质量是通用对话的事实标准。设得过低如 0.1会让输出变得单调甚至卡壳。3. top_k按数量截断候选池与 top_p 不同top_k 直接保留概率最高的 k 个词。top_k20是 Ornith 的固定推荐。top_p 和 top_k 会同时生效先取交集两个都设置相当于双保险避免极端候选进入采样。4. min_p动态过滤min_p把绝对概率阈值按当前最大概率的比例缩放。官方两套配置均为0.0即关闭不需要调整。5. presence_penalty治重复的良药惩罚已经出现过的 token值越大越不容易复述。注意它和repetition_penalty按出现次数惩罚1.0 为关闭机制不同通用任务推荐presence_penalty1.5闲聊、长文创作时有效防止模型原地打转编码任务推荐0.0代码里变量名、函数名天然高频惩罚过强反而会破坏代码一致性。6. max_tokens别忘了上限采样参数之外max_tokens决定单次输出长度上限。官方 API 示例README.md Basic Usage中普通问答用 1024工具调用用 2048长任务可放开到数万。三、官方推荐参数组合两套场景直接抄通用任务temperature1.0 top_p0.95适用对话、写作、问答、工具调用、Agent 长任务。temperature1.0不是随便设而是与训练分布对齐——第五节会解释。配合presence_penalty1.5保证长输出不重复。精准编码任务temperature0.6 top_p0.95适用写函数、改 bug、代码生成等对确定性要求高的场景。把温度降到 0.6 让输出更聚焦同时presence_penalty归零保护代码里正常的高频词。这套组合也接近 ClawEval 评测所用配置temp0.6 256K 上下文见 README.md 基准注释。四、为什么官方评测都用 temperature1.0这是 Ornith-1.5 采样调优中最反直觉的一点。查看 README.md 中各基准的评测设置基准任务temperaturetop_p备注Terminal-Bench 2.1Terminus-2 / Claude Code1.01.0128K 上下文SWE-bench Verified / Pro / Multilingual1.00.95256K 上下文NL2Repo1.01.0400K 上下文、48K 输出ClawEval0.6—256K 上下文MCP-Atlas——thinking 模式500 任务子集原因很直接Ornith-1.5 是通过强化学习持续自我改进训练的推理模型训练时的 rollout 采样温度就是 1.0。推理时温度显著偏离训练温度模型会进入没练过的分布推理链质量下降。所以想复现官方水平SWE-bench Verified 70.6、Terminal-Bench 46.2 等成绩→ 用temperature1.0, top_p0.95~1.0想要更保守的输出 → 最低建议不低于 0.6不建议temperature 0.5或top_p 0.5这类激进设置。五、如何控制思考长度Ornith-1.5-9B 默认在回答前先输出think思考块见 README.md NOTE 提示框。思考长度主要受两点影响max_tokens 上限思考块与最终答案共享这个额度。预算太小时推理链会被中途截断导致答案不完整或格式错乱。长任务请给足额度。采样参数温度过低会使模型不敢探索分支思考链容易变短、变直按推荐值设置反而能获得完整推理过程。服务端启用--reasoning-parser qwen3后前端可直接读取独立的reasoning_content字段展示思考流无需手动解析think标签。六、调优避坑与常见问题输出反复重复同一段话优先调presence_penalty0 → 0.5 → 1.0 逐步加编码场景不要超过 0.5通用场景可到 1.5。不要直接上repetition_penalty 1.0它对正常词频的副作用更大。想让输出更稳定、更短把temperature从 1.0 降到 0.6同时把max_tokens调小。注意不要低于 0.6。vLLM 和 SGLang 的参数写法有区别吗两者都是 OpenAI 兼容接口采样参数在请求体里写法一致区别在服务端启动参数vLLM 用--max-model-lenSGLang 用--context-length。完整命令见 README.md Serving 部分。想本地跑量化版可在 Ollama 中执行ollama run ornith-1.5:9bllama.cpp 加载 GGUF 构建详见 README.md Agentic Usage。注意 Ollama/llama.cpp 的参数名是temperature、top_p、top_k与本文表格一一对应。七、总结场景推荐配置通用对话 / Agent / 工具调用temperature1.0, top_p0.95, top_k20, presence_penalty1.5代码生成与修复temperature0.6, top_p0.95, top_k20, presence_penalty0.0复现官方基准成绩按各基准注释执行主体为temperature1.0, top_p0.95~1.0三句话记住 Ornith-1.5-9B 的采样调优temperature 别低于 0.6官方评测用 1.0、top_p 与 top_k 固定 0.95/20、presence_penalty 按场景在 0 和 1.5 之间选。模型本体的技术细节可参考 config.json对话模板见 chat_template.jinja。【免费下载链接】Ornith-1.5-9B项目地址: https://ai.gitcode.com/hf_mirrors/ornith-ai/Ornith-1.5-9B创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门