File size: 5,387 Bytes
81c892a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
<svg xmlns="http://www.w3.org/2000/svg" width="1100" height="540" viewBox="0 0 1100 540" role="img" aria-labelledby="title desc">
  <title id="title">BFCL v3 subset function-calling improvements</title>
  <desc id="desc">Grouped horizontal bar chart comparing base Qwen3.5-9B and Qwen3.5-9B NSC-ACE on BFCL v3 subset metrics.</desc>
  <defs>
    <linearGradient id="baseGrad" x1="0" x2="1" y1="0" y2="0">
      <stop offset="0%" stop-color="#a8a29e"/>
      <stop offset="100%" stop-color="#78716c"/>
    </linearGradient>
    <linearGradient id="aceGrad" x1="0" x2="1" y1="0" y2="0">
      <stop offset="0%" stop-color="#38bdf8"/>
      <stop offset="100%" stop-color="#2563eb"/>
    </linearGradient>
    <filter id="shadow" x="-10%" y="-30%" width="120%" height="160%">
      <feDropShadow dx="0" dy="2" stdDeviation="2" flood-color="#0f172a" flood-opacity="0.16"/>
    </filter>
  </defs>
  <rect width="1100" height="540" rx="18" fill="#f8fafc"/>
  <rect x="28" y="28" width="1044" height="484" rx="16" fill="#ffffff" stroke="#e2e8f0"/>
  <text x="56" y="76" font-family="Inter, Segoe UI, Arial, sans-serif" font-size="30" font-weight="800" fill="#0f172a">BFCL v3 Function-Calling Subset</text>
  <text x="56" y="108" font-family="Inter, Segoe UI, Arial, sans-serif" font-size="16" fill="#475569">40 cases: 20 simple + 20 multiple. Correct required calls and argument quality.</text>
  <g font-family="Inter, Segoe UI, Arial, sans-serif" font-size="14" fill="#475569">
    <rect x="765" y="64" width="20" height="12" rx="3" fill="url(#baseGrad)"/>
    <text x="794" y="75">Qwen3.5-9B base</text>
    <rect x="765" y="90" width="20" height="12" rx="3" fill="url(#aceGrad)"/>
    <text x="794" y="101">NSC-ACE adapter</text>
  </g>

  <g stroke="#e2e8f0" stroke-width="1">
    <line x1="300" y1="145" x2="300" y2="465"/>
    <line x1="445" y1="145" x2="445" y2="465"/>
    <line x1="590" y1="145" x2="590" y2="465"/>
    <line x1="735" y1="145" x2="735" y2="465"/>
    <line x1="880" y1="145" x2="880" y2="465"/>
  </g>
  <g font-family="Inter, Segoe UI, Arial, sans-serif" font-size="12" fill="#64748b">
    <text x="292" y="485">0</text>
    <text x="432" y="485">25%</text>
    <text x="577" y="485">50%</text>
    <text x="722" y="485">75%</text>
    <text x="865" y="485">100%</text>
  </g>

  <g font-family="Inter, Segoe UI, Arial, sans-serif">
    <g transform="translate(0,155)">
      <text x="56" y="23" font-size="15" font-weight="700" fill="#0f172a">Exact required call accuracy</text>
      <rect x="300" y="5" width="392" height="16" rx="8" fill="url(#baseGrad)" filter="url(#shadow)"/>
      <rect x="300" y="27" width="435" height="16" rx="8" fill="url(#aceGrad)" filter="url(#shadow)"/>
      <text x="705" y="18" font-size="13" fill="#334155">67.5%</text>
      <text x="748" y="40" font-size="13" font-weight="700" fill="#1d4ed8">75.0%</text>
      <text x="930" y="31" font-size="13" font-weight="700" fill="#2563eb">+7.5 pts</text>
    </g>
    <g transform="translate(0,220)">
      <text x="56" y="23" font-size="15" font-weight="700" fill="#0f172a">Function name accuracy</text>
      <rect x="300" y="5" width="566" height="16" rx="8" fill="url(#baseGrad)" filter="url(#shadow)"/>
      <rect x="300" y="27" width="566" height="16" rx="8" fill="url(#aceGrad)" filter="url(#shadow)"/>
      <text x="879" y="18" font-size="13" fill="#334155">97.5%</text>
      <text x="879" y="40" font-size="13" font-weight="700" fill="#1d4ed8">97.5%</text>
      <text x="930" y="31" font-size="13" font-weight="700" fill="#475569">flat</text>
    </g>
    <g transform="translate(0,285)">
      <text x="56" y="23" font-size="15" font-weight="700" fill="#0f172a">Required argument names</text>
      <rect x="300" y="5" width="480" height="16" rx="8" fill="url(#baseGrad)" filter="url(#shadow)"/>
      <rect x="300" y="27" width="533" height="16" rx="8" fill="url(#aceGrad)" filter="url(#shadow)"/>
      <text x="793" y="18" font-size="13" fill="#334155">82.7%</text>
      <text x="846" y="40" font-size="13" font-weight="700" fill="#1d4ed8">91.8%</text>
      <text x="930" y="31" font-size="13" font-weight="700" fill="#2563eb">+9.2 pts</text>
    </g>
    <g transform="translate(0,350)">
      <text x="56" y="23" font-size="15" font-weight="700" fill="#0f172a">Required argument values</text>
      <rect x="300" y="5" width="421" height="16" rx="8" fill="url(#baseGrad)" filter="url(#shadow)"/>
      <rect x="300" y="27" width="473" height="16" rx="8" fill="url(#aceGrad)" filter="url(#shadow)"/>
      <text x="734" y="18" font-size="13" fill="#334155">72.5%</text>
      <text x="786" y="40" font-size="13" font-weight="700" fill="#1d4ed8">81.6%</text>
      <text x="930" y="31" font-size="13" font-weight="700" fill="#2563eb">+9.2 pts</text>
    </g>
    <g transform="translate(0,415)">
      <text x="56" y="23" font-size="15" font-weight="700" fill="#0f172a">Tool-call rate</text>
      <rect x="300" y="5" width="566" height="16" rx="8" fill="url(#baseGrad)" filter="url(#shadow)"/>
      <rect x="300" y="27" width="566" height="16" rx="8" fill="url(#aceGrad)" filter="url(#shadow)"/>
      <text x="879" y="18" font-size="13" fill="#334155">97.5%</text>
      <text x="879" y="40" font-size="13" font-weight="700" fill="#1d4ed8">97.5%</text>
      <text x="930" y="31" font-size="13" font-weight="700" fill="#475569">flat</text>
    </g>
  </g>
</svg>