【免费下载链接】K2-Horizon-MoVA-36B-A4B-oQ4e项目地址https://ai.gitcode.com/hf_mirrors/mlx-community/K2-Horizon-MoVA-36B-A4B-oQ4e点击查看免费下载K2-Horizon-MoVA-36B-A4B-oQ4e 是一个 36B 总参、4B 激活参数的 MoE 推理模型。它的 Chat Template聊天模板藏着两个关键机制控制思考深度的ifm|think思考块和结构化工具调用的ifm|tool_call。本文带你逐行读懂这套模板掌握reasoning_effort与工具调用格式的完整配置方法。 模板本体在 chat_template.jinja它是连接「你输入的对话」与「模型看到的 token 序列」之间的桥梁。 先搞懂Chat Template 是什么普通文本模型只认 token它不知道什么是系统提示、什么是用户提问、什么是思考过程。Chat Template 就是那套约定它把你结构化的对话角色 内容 工具翻译成模型熟悉的标记文本。K2-Horizon 采用 IFM 的自定义模板核心能力有两点会思考把推理过程包在ifm|think里深度可调。会调工具把函数调用写成ifm|tool_call结构便于程序稳定解析。想先看模型规格可打开 config.json512K 上下文、100 个专家、每 token 激活 8 个。 30 秒速览核心标签一览标签作用出现位置\|ifm\|im_start\|/\|ifm\|im_end\|每条消息的「开始 / 结束」分隔符所有消息ifm\|think深度思考块highassistant 回复ifm\|think_fast快速思考块mediumassistant 回复ifm\|think_faster极速思考块lowassistant 回复ifm\|tool_call单次工具调用assistant 回复ifm\|arg_key/ifm\|arg_value参数名 / 参数值工具调用内部ifm\|arg_type参数类型仅 xml_typed工具调用内部\|ifm\|begin_of_text\|文本起始特殊 tokenbos序列开头\|ifm\|endoftext\|文本结束特殊 tokeneos序列结尾特殊 token 的对应关系见 special_tokens_map.json。️ 消息分隔符对话的开头与结尾所有消息都被|ifm|im_start|和|ifm|im_end|包起来中间先写角色再换行|ifm|im_start|user 你好请解释量子纠缠 |ifm|im_end||ifm|im_start|标志一条新消息开始紧接着是角色system/user/assistant/tool。|ifm|im_end|标志该消息结束。这套分隔符让模型能清晰地区分谁在说话、说到哪结束是支持多轮对话的基础。生成时模型默认以high推理启动相关默认值写在模板末尾chat_template.jinja。 思考块全解ifm|think 的三档深度K2-Horizon 是推理模型思考内容会被单独包进一个标签块方便前端把「思考过程」和「最终答案」分开展示。三档由reasoning_effort参数控制reasoning_effort思考标签思考深度适用场景high默认ifm\|think最深复杂推理、数学、代码mediumifm\|think_fast中等日常问答lowifm\|think_faster最快轻量任务、低延迟一条 assistant 消息的真实结构长这样高深度示例|ifm|im_start|assistant ifm|think 先确认定义再推导两个粒子态的关联…… /ifm|think量子纠缠是指…… |ifm|im_end|注意一个新手容易踩的坑历史 assistant 消息必须带一个思考字段think、reasoning、reasoning_content、think_fast、think_faster之一否则模板会直接抛出异常报错。多轮对话回填历史时务必保留这一字段。️ 工具调用全解ifm|tool_call 的三种格式当模型需要调用函数时它会把所有调用包进ifm|tool_calls每次调用单独占一个ifm|tool_call。格式由tool_call_format决定共三种1json 格式—— 每行一个 JSON 对象最紧凑ifm|tool_calls ifm|tool_call{name: get_weather, arguments: {city: 北京}}/ifm|tool_call /ifm|tool_calls2xml 格式默认—— 用标签拆出参数名与参数值ifm|tool_calls ifm|tool_callget_weather ifm|arg_keycity/ifm|arg_key ifm|arg_value北京/ifm|arg_value /ifm|tool_call /ifm|tool_calls3xml_typed 格式—— 在 xml 基础上额外给出参数类型ifm|arg_keycity/ifm|arg_key ifm|arg_typestring/ifm|arg_type ifm|arg_value北京/ifm|arg_value⚠️ 约定字符串与标量参数直接写纯文本数组和对象参数写成 JSON 字面量。三种格式的渲染逻辑分别见 chat_template.jinja。除了模型「发起调用」模板还会在 system 消息里先「声明可用工具」。工具声明的呈现格式由tool_presentation_format控制json/xml/markdown三种渲染宏分别对应 JSON、XML、Markdown 视图。 一次完整对话长什么样把上面几块拼起来一次「带工具的推理对话」的 token 序列大致是|ifm|begin_of_text| |ifm|im_start|system # Tools You may call one or more tools... ifm|tools function nameget_weather description查询天气/description parameters param namecity typestring requiredtrue城市名/param /parameters /function /ifm|tools ... |ifm|im_end| |ifm|im_start|user 北京今天天气怎么样 |ifm|im_end| |ifm|im_start|assistant ifm|think 用户要北京天气需要调用 get_weather…… /ifm|think ifm|tool_calls ifm|tool_callget_weather ifm|arg_keycity/ifm|arg_key ifm|arg_value北京/ifm|arg_value /ifm|tool_call /ifm|tool_calls |ifm|im_end| |ifm|im_start|tool {...工具返回结果...} |ifm|im_end|模型跑完后oMLX 会自动把这些ifm|...标签剥离用户只看到干净的回答与结构化的reasoning_content。 关键文件导航想深入阅读这些文件最值得看模板本体chat_template.jinja —— 思考块与工具调用的全部渲染逻辑模型架构配置config.json —— 专家数、上下文长度、量化位宽特殊 tokenspecial_tokens_map.json生成默认值generation_config.jsonHuggingFace 模型实现modeling_k2_horizon.py自定义配置类configuration_k2_horizon.pyMLX 运行入口k2_horizon_mova_mlx.py使用与基准README.md 快速上手如何配置推理与工具调用开启深度推理—— 通过chat_template_kwargs传入reasoning_effortfrom openai import OpenAI client OpenAI(base_urlhttp://localhost:8000/v1, api_keyEMPTY) response client.chat.completions.create( modelK2-Horizon-MoVA-36B-A4B-oQ4e, messages[{role: user, content: 解释量子纠缠}], extra_body{chat_template_kwargs: {reasoning_effort: high}}, ) print(推理过程:, response.choices[0].message.reasoning_content) print(最终答案:, response.choices[0].message.content)命令行快速跑一句pip install -U mlx-lm python3 -m mlx_lm.generate \ --model K2-Horizon-MoVA-36B-A4B-oQ4e \ --prompt Explain why long-context evaluation is difficult. \ --max-tokens 512 --temp 1.0 --top-p 0.95记住三条黄金法则想要高质量答案就保持reasoning_efforthigh默认即高。多轮对话回填历史时assistant 消息别丢思考字段。需要程序稳定解析工具调用时优先选json或xml_typed格式。理解 Chat Template就等于掌握了 K2-Horizon 的语言规则——思考怎么想、工具怎么调、对话怎么接全在这一套标签约定里。赞分享【免费下载链接】K2-Horizon-MoVA-36B-A4B-oQ4e项目地址https://ai.gitcode.com/hf_mirrors/mlx-community/K2-Horizon-MoVA-36B-A4B-oQ4e点击查看免费下载相关推荐K2-Horizon-MoVA-36B-A4B-oQ4e 是什么1篇看懂 36B 稀疏 MoE 512K 长上下文推理模型K2 Horizon MoVA 36B A4B oQ4e 是什么1篇看懂 36B 稀疏 MoE 512K 长上下文推理模型 K2 Horizon MoVA读懂 K2-Horizon-MoVA-36B-A4B-oQ4e 架构36B 总参数、4B 激活到底省在哪读懂 K2 Horizon MoVA 36B A4B oQ4e 架构36B 总参数、4B 激活到底省在哪 K2 Horizon MoVA 36B A4B oQ如何榨干 K2-Horizon-MoVA-36B-A4B-oQ4e 性能reasoning_effort、温度、top-p 调参实战清单如何榨干 K2 Horizon MoVA 36B A4B oQ4e 性能reasoning_effort、温度、top p 调参实战清单 K2 Horizon创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
阅读完成 · 觉得有帮助?