尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
phi-4-mini-instruct-oga-dml 本地大模型工具调用指南:用聊天模板与特殊Token快速解锁 Function Calling
【免费下载链接】phi-4-mini-instruct-oga-dml项目地址https://ai.gitcode.com/hf_mirrors/amd/phi-4-mini-instruct-oga-dml点击查看免费下载想让本地大模型也具备工具调用Function Calling能力吗 phi-4-mini-instruct-oga-dml 是微软 Phi-4-mini-instruct 经 Quark 量化、由 AMD OGA Model Builder 构建的ONNX 模型专为 AMD Ryzen AI 硬件优化。本文将带你搞清楚它的聊天模板chat_template.jinja与特殊Tokenadded_tokens.json如何一步步解锁本地 Function Calling让 3.8B 小模型在 NPU 上也能调用工具。为什么本地模型也要会调工具大模型本身只会说不会做。想要查询天气、查数据库、执行计算就需要Function Calling机制模型负责决策判断这件事需要调工具并按约定格式输出工具名和参数应用负责执行真正调用工具函数把结果喂回模型模型负责总结基于工具结果生成自然语言回答。云端 API 都自带这套机制那本地模型行不行行——前提是格式对本地模型不会魔法般地输出标准工具调用它只是照着训练时的格式说话。这个格式由两样东西定义聊天模板和特殊Token。理解这两点你就理解了本地 Function Calling 的全部奥秘。聊天模板解析Function Calling 的地基 ️仓库中的 chat_template.jinja 只有一行Jinja 模板语法它负责把system、user、assistant多轮消息渲染成模型认识的原始文本|system|你是一个有帮助的助手|/tool||end| |user|北京今天多少度|end| |assistant|逐段拆解它的规则消息角色渲染结果说明system无工具\|system\|内容\|end\|普通系统提示system带 tools\|system\|内容\|tool\|工具JSON\|/tool\|\|end\|工具定义随系统消息下发user\|user\|内容\|end\|用户提问assistant\|assistant\|内容模型回答的起始信号模板中最关键的一行逻辑当system消息里携带了tools字段时工具列表会被直接拼接进系统消息内部包裹在|tool|与|/tool|之间。也就是说模型知道有哪些工具可调靠的不是什么高级接口而是这段被模板拼好的文本。经验之谈本地模型工具调用失灵九成是模板没对齐。用错了模板模型可能一本正经地用自然语言假装调工具而不是输出可解析的结构。特殊Token清单模型的标点符号 ️特殊Token 在 added_tokens.json 中注册完整映射见 tokenizer_config.json词表大小 200064。与 Function Calling 直接相关的有这 8 个特殊Token作用\|system\|系统提示的开头\|user\|用户消息的开头\|assistant\|模型回答的开头也是生成起始信号\|end\|单条消息结束\|tool\|/\|/tool\|工具定义的成对边界\|tool_call\|/\|/tool_call\|工具调用的成对边界\|tool_response\|工具执行结果的标记\|tag\|其他标记用途注意一个细节|tool|、|tool_call|等在 tokenizer_config.json 中标记为special: false即它们参与普通分词流程而非仅作为控制符存在——这正是模型能在生成时自然吐出这些边界标记、从而输出可解析工具调用的原因。完整流程一次工具调用的旅程 把上面的模板和 Token 串起来一次 Function Calling 的完整链路是这样的下发工具定义应用把工具列表放进system消息的tools字段聊天模板渲染为|system|…|tool|[工具JSON]|/tool||end|用户提问|user|北京今天多少度|end|模型发起调用生成以|assistant|开头、内部用|tool_call|…|/tool_call|包裹的调用内容工具名 JSON 参数应用执行解析出工具名和参数真正执行get_weather(北京)回传结果把执行结果包在|tool_response|标记中追加进对话历史模型收尾基于工具结果生成最终自然语言回答并以|end|结束。一句话总结模板定格式Token 定边界应用负责干活——三者缺一不可。避坑指南新手最容易踩的 3 个坑 ⚠️坑 1模板不匹配。直接拿裸模型对话、或套用别的模型模板模型会说人话而非输出标准工具调用。请始终使用仓库自带的 chat_template.jinja。坑 2工具没塞进 system 消息。按模板规则tools必须挂在system消息上才会被渲染进|tool|区块单独发一条 tool 角色消息是不生效的。坑 3上下文预算太小。这个 OGA 版本在 genai_config.json 中context_length为16384标签npu_16K面向 NPU 显存预算远小于原版 Phi-4-mini 的 131072。工具定义和调用历史都占 Token多轮工具调用 冗长工具 JSON 会快速吃满 16K建议控制工具数量并精简工具描述。如何获取与体验模型 完整模型文件在本仓库中核心文件一览文件说明model.onnx model.onnx.dataONNX 模型本体文件较大建议从仓库下载chat_template.jinja聊天模板Function Calling 格式定义added_tokens.json / special_tokens_map.json特殊Token 定义tokenizer.json / tokenizer_config.json / vocab.json / merges.txt分词器全套文件genai_config.jsonOGA / ONNX Runtime GenAI 运行配置几点上手提示量化方案AWQ / Asymmetric / BFP16 激活 / UINT4 权重详见 README.md小显存也能跑本地执行genai_config.json中已声明dml执行提供程序即面向 DirectML / AMD Ryzen AI NPU 的推理路径可直接配合 OGA 工具链加载采样参数配置默认do_sample: false贪心解码工具调用场景下保持贪心解码通常更稳定、输出更可预测。写在最后本地 Function Calling 并没有想象中神秘一份对齐的聊天模板 一套定义清晰的特殊Token 一个负责执行工具的应用层三者组合起来phi-4-mini-instruct-oga-dml 这样的 3.8B 小模型就能在 AMD Ryzen AI 笔记本上完成感知—调用—总结的完整闭环。动手试试吧把温度调低、模板对齐、工具描述写短一点你的本地智能体就迈出了第一步。赞分享【免费下载链接】phi-4-mini-instruct-oga-dml项目地址https://ai.gitcode.com/hf_mirrors/amd/phi-4-mini-instruct-oga-dml点击查看免费下载相关推荐工具调用与思考模式怎么用gemma-4-31B-it-w4a4-mxfp4聊天模板与特殊token详解工具调用与思考模式怎么用gemma 4 31B it w4a4 mxfp4聊天模板与特殊token详解 gemma 4 31B it w4a4 mxfp4 是大模型模型量化本地部署人工智能多模态Qwen2.5-Coder-7B-Instruct 函数调用实战Function Calling 聊天模板手把手教程Qwen2.5 Coder 7B Instruct 函数调用实战Function Calling 聊天模板手把手教程 Qwen2.5 Coder 7B Ins第一次看懂dml后缀phi-4-mini-instruct-oga-dml背后的ONNX Runtime DirectML推理原理第一次看懂dml后缀phi 4 mini instruct oga dml背后的ONNX Runtime DirectML推理原理 你是否见过文件名带 dml创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

HTTP Host头碰撞漏洞原理与防护实践

HTTP Host头碰撞漏洞原理与防护实践

1. Host头碰撞漏洞的本质与危害HTTP协议中的Host头部字段自HTTP/1.1起成为强制要求,用于标识客户端请求的目标主机名。这个设计初衷是为了支持虚拟主机技术——单个IP地址上托管多个网站。但正是这个看似简单的机制,在特定配置下会演变为严重的安全漏洞。…

📅 2026/10/29 17:33:06
大学生记账系统:SpringBoot+Vue轻量级金融数据流实践

大学生记账系统:SpringBoot+Vue轻量级金融数据流实践

简介:本资源是一套面向计算机专业本科生的高分毕业设计项目——大学生智能消费记账系统,聚焦学生日常财务管理痛点,提供从需求分析到部署运行的全流程实践范例,适用于毕设选题、课程设计及Java全栈开发入门学习。压缩包共374个文件…

📅 2026/10/29 17:28:05
头脑风暴法落地指南:从发散到收敛的高效会议设计

头脑风暴法落地指南:从发散到收敛的高效会议设计

上一次让我真正意识到头脑风暴法难在哪,是一场不到四十分钟就散场的会。当时我跟着一个产品小组做需求梳理,会议室里坐了十二个人,白板擦得干干净净,议题写在正中间,结果前二十分钟谁都不愿意先说,中间十分…

📅 2026/10/29 17:28:05
MORE NEWS

更多资讯

📰

大数据量JSON处理性能优化实战

1. 为什么大数据量JSON处理会成为性能瓶颈?JSON作为现代应用中最常用的数据交换格式,其性能问题在大数据量场景下会被急剧放大。我曾在一个电商促销项目中处理过单条超过50MB的JSON数据,解析时间竟然达到了惊人的800毫秒——这对于要求响应时…

📰

AI智能体如何重塑数据团队价值

1. 数据团队的现状与困境 数据团队在过去十年里一直是企业数字化转型的核心驱动力。从最初的ETL工程师到现在的数据科学家,这个群体经历了从"数据搬运工"到"业务决策支持者"的角色转变。但一个不容忽视的事实是:大多数数据团队的工作…

📰

STM32+串口屏实现仪表一键改装

龙工 853N 仪表“零分析”改造终极方案:STM32 串口屏 语音模块 本方案彻底摒弃“手动分析报文”和“驱动原车液晶屏”的高难度操作。核心策略是:STM32 仅做数据搬运工,所有解析、显示逻辑、语音播报全部交给现成的“串口屏”和“语音模块”完…

📰

Q系列QJ71C24N/R2双模块RS232无顺序协议通讯配置与收发

简介:《三菱PLC串行通讯模块QJ71C24N与QJ71C24N-R2的RS232通讯方法》面向工业自动化现场调试、PLC串行通讯学习与设备联调人员,围绕Q系列串行通讯模块之间的RS232互联,讲解模块通道差异、无顺序协议选择、Works2参数配置以及收发程序设计等核…

📰

ArcGIS Python脚本自动化:批处理、游标与工具封装避坑

简介:面向ArcGIS初学者与地理信息从业者的入门文档,围绕如何在ArcGIS环境中用Python脚本替代重复手工操作,降低地理处理自动化的上手门槛。资源包仅含1个docx文件,约490KB,体量轻便,适合通勤或课间快速通读…

📰

ROS2开发环境搭建与核心概念入门指南

1. ROS入门:从零开始搭建机器人开发环境作为一名机器人开发者,第一次接触ROS(Robot Operating System)时往往会被它庞大的生态系统吓到。记得我2015年刚开始学习ROS时,光是安装环境就折腾了整整两天。现在回头看&#…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬