小参数语言模型工具调用能力深度测评:基于ToolBench-Static数据集的实践研究
【免费下载链接】Qwen3-1.7BQwen3-1.7B具有以下特点: 类型:因果语言模型 训练阶段:训练前和训练后 参数数量:17亿 参数数量(非嵌入):1.4B 层数:28 注意力头数量(GQA):Q 为 16 个,KV 为 8 个 上下文长度:32,768项目地址: https://ai.gitcode.com/hf_mirrors/Qwen/Qwen3-1.7B
在人工智能飞速发展的今天,大语言模型(LLMs)的工具使用能力已成为衡量其智能化水平的关键指标。然而,对于参数规模较小的语言模型而言,如何有效集成API调用完成复杂任务仍是亟待突破的技术瓶颈。本文基于ToolBench基准测试框架(Qin et al., 2023b),通过构建静态测试集(ToolBench-Static)对小参数模型的工具学习能力进行系统性评估,重点考察模型在已知工具(域内)与未知工具(域外)场景下的任务执行表现,为小模型工具调用能力的优化提供实证参考。
测试框架与数据集构建
ToolBench作为当前主流的工具调用评估基准,其核心任务要求智能体(Agent)能够根据用户需求准确筛选适用API,并构建符合规范的请求参数。为更全面地评估模型的泛化能力,我们创新性地将原始测试集划分为两大子集:域内测试集(in domain)包含训练过程中已接触过的工具类型,共计1588个测试实例;域外测试集(out of domain)则涵盖未在训练数据中出现的新型工具,包含781个测试实例。这种划分方式能够精准模拟模型在实际应用中可能面临的两种典型场景——常规任务处理与未知工具适配,从而实现对模型分布内与分布外性能的双重验证。
实验设计与执行流程
本次测评选用Qwen3-1.7B模型作为实验对象,该模型作为轻量级语言模型的代表,在资源受限场景下具有广泛的应用潜力。实验基于EvalScope评估框架进行,通过以下步骤完成测试配置:
首先,初始化任务配置对象(TaskConfig),指定模型路径为"Qwen/Qwen3-1.7B",数据集选择"tool_bench",并设置测试样本限制为5条,评估批次大小为5。考虑到工具调用任务对输出完整性的要求,生成配置参数中特别将最大token数设为1000以避免内容截断。同时,参考Qwen系列模型官方推荐参数,设置temperature=0.7、top_p=0.8、top_k=20的采样策略,确保输出既具备多样性又维持一定的确定性。值得注意的是,为排除思考过程对工具调用决策的潜在影响,通过设置'extra_body'参数中的'chat_template_kwargs'字典,将'enable_thinking'选项关闭。
执行代码示例如下:
from evalscope import TaskConfig, run_task task_cfg = TaskConfig( model='Qwen/Qwen3-1.7B', datasets=['tool_bench'], limit=5, eval_batch_size=5, generation_config={ 'max_tokens': 1000, # 确保输出完整的工具调用信息 'temperature': 0.7, # 平衡创造性与确定性 'top_p': 0.8, # 控制词汇多样性 'top_k': 20, # 限制候选词数量 'extra_body': {'chat_template_kwargs': {'enable_thinking': False}} # 禁用思考模式 } ) run_task(task_cfg=task_cfg)评估指标与结果分析
实验采用五大核心指标全面衡量模型性能:
- Plan.EM:计划精确匹配率,评估代理在工具调用步骤、答案生成或任务放弃等决策上的精准度;
- Act.EM:动作精确匹配率,考察工具名称与参数设置的完全匹配程度;
- HalluRate:幻觉率(数值越低越好),反映代理在回答过程中产生无关信息或错误工具调用的频率;
- Avg.F1:平均F1得分,综合考量工具调用的精确率与召回率;
- Rouge-L:基于最长公共子序列的文本相似度得分,评估生成内容与标准答案的一致性。
经实验执行,部分存在格式错误的脏数据被系统自动过滤,导致实际有效样本数量略有减少。最终测试结果如下表所示:
| Model | Dataset | Metric | Subset | Num | Score | Cat.0 |
|---|---|---|---|---|---|---|
| Qwen3-1.7B | tool_bench | Act.EM | in_domain | 2 | 0 | default |
| Qwen3-1.7B | tool_bench | Act.EM | out_of_domain | 5 | 0.2 | default |
| Qwen3-1.7B | tool_bench | Plan.EM | in_domain | 0 | 0 | default |
| Qwen3-1.7B | tool_bench | Plan.EM | out_of_domain | 0 | 0 | default |
| Qwen3-1.7B | tool_bench | F1 | in_domain | 2 | 0 | default |
| Qwen3-1.7B | tool_bench | F1 | out_of_domain | 5 | 0.2 | default |
| Qwen3-1.7B | tool_bench | HalluRate | in_domain | 2 | 0 | default |
| Qwen3-1.7B | tool_bench | HalluRate | out_of_domain | 5 | 0.4 | default |
| Qwen3-1.7B | tool_bench | Rouge-L | in_domain | 2 | 0 | default |
| Qwen3-1.7B | tool_bench | Rouge-L | out_of_domain | 5 | 0.1718 | default |
从关键指标表现来看,Qwen3-1.7B在域内测试中表现不佳,Act.EM与F1得分均为0,表明模型在处理已知工具时未能实现精确的参数匹配。而在域外场景中,模型展现出一定的适应能力,Act.EM与F1得分均达到0.2,但幻觉率上升至0.4,反映出模型在面对未知工具时容易产生错误调用。值得注意的是,Plan.EM指标在两个子集上均为0,说明模型在任务规划阶段存在严重缺陷,无法正确判断工具调用的必要性及步骤安排。Rouge-L得分在域外场景中达到0.1718,表明生成内容与标准答案存在一定相似性,但距离实用要求仍有显著差距。
结论与未来展望
本次实验结果揭示了小参数语言模型在工具调用能力上的明显短板:Qwen3-1.7B不仅在已知工具的精确调用上表现欠佳,更在任务规划层面存在根本性缺陷。这一发现印证了"Small LLMs Are Weak Tool Learners"的研究结论,即轻量级模型在复杂工具使用场景中仍面临严峻挑战。
对于未来发展方向,我们提出三点改进建议:首先,应优化训练数据中的工具交互样本质量,增加API调用流程的结构化训练;其次,可探索多轮反馈机制,通过强化学习提升模型对工具调用效果的判断能力;最后,开发针对小模型的工具调用专项优化算法,如参数高效微调(PEFT)技术,在有限资源条件下最大化工具使用性能。随着这些技术的逐步成熟,轻量级语言模型有望在工具增强智能领域发挥更大价值,为边缘计算、嵌入式设备等资源受限场景提供智能化解决方案。
【免费下载链接】Qwen3-1.7BQwen3-1.7B具有以下特点: 类型:因果语言模型 训练阶段:训练前和训练后 参数数量:17亿 参数数量(非嵌入):1.4B 层数:28 注意力头数量(GQA):Q 为 16 个,KV 为 8 个 上下文长度:32,768项目地址: https://ai.gitcode.com/hf_mirrors/Qwen/Qwen3-1.7B
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考