@botbotgo/better-call 0.1.6 → 0.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -121,15 +121,41 @@ Measured with real Ollama `/api/chat` calls over all supported BFCL v4 single-tu
121
121
 
122
122
  Latest completed remote run artifact: `benchmarks/bfcl-real-remote-completed-summary.json`.
123
123
 
124
- | Model | Completed cases | Raw | BetterCall repair | Accuracy lift | Request errors |
125
- | --- | ---: | ---: | ---: | ---: | ---: |
126
- | `granite4.1:3b` | 3,625 | 73.4% | 83.8% | +10.4pp | 25 |
127
- | `qwen2.5:7b-instruct` | 3,625 | 72.2% | 78.2% | +5.9pp | 80 |
128
- | `qwen3:0.6b` | 3,625 | 55.5% | 63.6% | +8.2pp | 217 |
129
- | `qwen3.5:0.8b` | 3,625 | 54.6% | 56.9% | +2.3pp | 901 |
130
- | `qwen3.5:2b` | 3,625 | 53.9% | 54.9% | +1.0pp | 1,308 |
131
- | `lfm2.5-thinking:latest` | 3,625 | 50.8% | 54.8% | +4.0pp | 1,142 |
132
- | `gemma4:e2b` | 3,625 | 24.3% | 24.7% | +0.4pp | 2,641 |
124
+ Performance after wrapping the same model outputs with BetterCall:
125
+
126
+ ```text
127
+ granite4.1:3b
128
+ Raw 73.4% | #############################...........
129
+ BetterCall 83.8% | ##################################......
130
+ qwen2.5:7b-instruct
131
+ Raw 72.2% | #############################...........
132
+ BetterCall 78.2% | ###############################.........
133
+ qwen3:0.6b
134
+ Raw 55.5% | ######################..................
135
+ BetterCall 63.6% | #########################...............
136
+ qwen3.5:0.8b
137
+ Raw 54.6% | ######################..................
138
+ BetterCall 56.9% | #######################.................
139
+ qwen3.5:2b
140
+ Raw 53.9% | ######################..................
141
+ BetterCall 54.9% | ######################..................
142
+ lfm2.5-thinking:latest
143
+ Raw 50.8% | ####################....................
144
+ BetterCall 54.8% | ######################..................
145
+ gemma4:e2b
146
+ Raw 24.3% | ##########..............................
147
+ BetterCall 24.7% | ##########..............................
148
+ ```
149
+
150
+ | Rank | Model | Completed cases | Raw model | BetterCall | Lift | Request errors |
151
+ | ---: | --- | ---: | ---: | ---: | ---: | ---: |
152
+ | 1 | `granite4.1:3b` | 3,625 | 73.4% | 83.8% | +10.4pp | 25 |
153
+ | 2 | `qwen2.5:7b-instruct` | 3,625 | 72.2% | 78.2% | +5.9pp | 80 |
154
+ | 3 | `qwen3:0.6b` | 3,625 | 55.5% | 63.6% | +8.2pp | 217 |
155
+ | 4 | `qwen3.5:0.8b` | 3,625 | 54.6% | 56.9% | +2.3pp | 901 |
156
+ | 5 | `qwen3.5:2b` | 3,625 | 53.9% | 54.9% | +1.0pp | 1,308 |
157
+ | 6 | `lfm2.5-thinking:latest` | 3,625 | 50.8% | 54.8% | +4.0pp | 1,142 |
158
+ | 7 | `gemma4:e2b` | 3,625 | 24.3% | 24.7% | +0.4pp | 2,641 |
133
159
 
134
160
  Latest completed model category detail: `qwen2.5:7b-instruct`.
135
161
 
package/docs/banner.svg CHANGED
@@ -1,29 +1,77 @@
1
1
  <svg xmlns="http://www.w3.org/2000/svg" width="1400" height="520" viewBox="0 0 1400 520" role="img" aria-labelledby="title desc">
2
- <title id="title">BetterCall banner</title>
3
- <desc id="desc">BetterCall is a one-line wrapper with seven full BFCL remote runs completed; the best run improves from 73.4 percent to 83.8 percent.</desc>
2
+ <title id="title">BetterCall accuracy boost banner</title>
3
+ <desc id="desc">BetterCall boosts small-model tool-call accuracy, with the best full BFCL remote run improving from 73.4 percent to 83.8 percent.</desc>
4
4
  <defs>
5
5
  <linearGradient id="background" x1="0" y1="0" x2="1" y2="1">
6
- <stop offset="0" stop-color="#07111f"/>
7
- <stop offset="0.52" stop-color="#102640"/>
8
- <stop offset="1" stop-color="#10291f"/>
6
+ <stop offset="0" stop-color="#061321"/>
7
+ <stop offset="0.52" stop-color="#0c2538"/>
8
+ <stop offset="1" stop-color="#0f2f25"/>
9
9
  </linearGradient>
10
- <linearGradient id="accent" x1="0" y1="0" x2="1" y2="0">
10
+ <linearGradient id="line" x1="0" y1="0" x2="1" y2="0">
11
11
  <stop offset="0" stop-color="#67d4ff"/>
12
- <stop offset="0.48" stop-color="#9be47f"/>
12
+ <stop offset="0.55" stop-color="#8fe870"/>
13
13
  <stop offset="1" stop-color="#ffd36a"/>
14
14
  </linearGradient>
15
+ <linearGradient id="panel" x1="0" y1="0" x2="1" y2="1">
16
+ <stop offset="0" stop-color="#163047" stop-opacity="0.92"/>
17
+ <stop offset="1" stop-color="#10281f" stop-opacity="0.92"/>
18
+ </linearGradient>
19
+ <filter id="soft-shadow" x="-20%" y="-20%" width="140%" height="140%">
20
+ <feDropShadow dx="0" dy="22" stdDeviation="24" flood-color="#000000" flood-opacity="0.28"/>
21
+ </filter>
22
+ <marker id="arrow" viewBox="0 0 12 12" refX="10" refY="6" markerWidth="10" markerHeight="10" orient="auto">
23
+ <path d="M1 1 L11 6 L1 11 Z" fill="#ffd36a"/>
24
+ </marker>
15
25
  </defs>
16
26
 
17
27
  <rect width="1400" height="520" fill="url(#background)"/>
18
- <circle cx="1170" cy="100" r="230" fill="#67d4ff" opacity="0.06"/>
19
- <circle cx="210" cy="450" r="210" fill="#9be47f" opacity="0.05"/>
20
- <path d="M110 374 C 302 236, 478 388, 672 274 S 970 156, 1278 244" fill="none" stroke="#ffffff" stroke-opacity="0.08" stroke-width="58" stroke-linecap="round"/>
21
- <path d="M96 86 H1304" stroke="#ffffff" stroke-opacity="0.10"/>
22
- <path d="M96 434 H1304" stroke="#ffffff" stroke-opacity="0.10"/>
23
-
24
- <g transform="translate(112 112)">
25
- <text x="0" y="80" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="78" font-weight="800" fill="#f8fbff">BetterCall</text>
26
- <rect x="4" y="116" width="430" height="8" rx="4" fill="url(#accent)"/>
27
- <text x="0" y="186" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="34" font-weight="670" fill="#dcecff">Seven full BFCL remote runs. Best: 73.4% → 83.8%.</text>
28
+ <path d="M90 412 C 210 338, 336 376, 468 300 S 692 210, 846 250 S 1086 312, 1306 152" fill="none" stroke="#ffffff" stroke-opacity="0.08" stroke-width="70" stroke-linecap="round"/>
29
+ <path d="M84 86 H1316" stroke="#ffffff" stroke-opacity="0.10"/>
30
+ <path d="M84 434 H1316" stroke="#ffffff" stroke-opacity="0.10"/>
31
+ <path d="M104 356 C 258 306, 380 330, 510 252 S 736 162, 918 210 S 1160 250, 1280 116" fill="none" stroke="url(#line)" stroke-width="7" stroke-linecap="round" stroke-linejoin="round" marker-end="url(#arrow)" opacity="0.9"/>
32
+
33
+ <g transform="translate(92 104)">
34
+ <text x="0" y="46" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="32" font-weight="750" fill="#9be47f">BetterCall</text>
35
+ <text x="0" y="128" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="74" font-weight="850" fill="#f8fbff">Boost tool-call</text>
36
+ <text x="0" y="204" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="74" font-weight="850" fill="#f8fbff">accuracy</text>
37
+ <rect x="4" y="232" width="532" height="8" rx="4" fill="url(#line)"/>
38
+ <text x="0" y="296" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="31" font-weight="640" fill="#dcecff">Validate and repair tool calls before execution.</text>
39
+ <text x="0" y="342" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="28" font-weight="700" fill="#ffd36a">Full BFCL remote best: 73.4% -> 83.8%</text>
40
+ </g>
41
+
42
+ <g transform="translate(820 92)" filter="url(#soft-shadow)">
43
+ <rect x="0" y="0" width="474" height="340" rx="18" fill="url(#panel)" stroke="#ffffff" stroke-opacity="0.16"/>
44
+ <text x="34" y="54" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="24" font-weight="750" fill="#f8fbff">Accuracy lift</text>
45
+ <text x="34" y="92" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="18" font-weight="580" fill="#b8cbe2">same model output, BetterCall wrapped</text>
46
+
47
+ <g transform="translate(50 122)">
48
+ <line x1="0" y1="160" x2="374" y2="160" stroke="#ffffff" stroke-opacity="0.22"/>
49
+ <line x1="0" y1="112" x2="374" y2="112" stroke="#ffffff" stroke-opacity="0.08"/>
50
+ <line x1="0" y1="64" x2="374" y2="64" stroke="#ffffff" stroke-opacity="0.08"/>
51
+ <line x1="0" y1="16" x2="374" y2="16" stroke="#ffffff" stroke-opacity="0.08"/>
52
+
53
+ <rect x="24" y="43" width="52" height="117" rx="8" fill="#67d4ff" opacity="0.82"/>
54
+ <rect x="92" y="26" width="52" height="134" rx="8" fill="#9be47f" opacity="0.95"/>
55
+ <rect x="212" y="72" width="52" height="88" rx="8" fill="#67d4ff" opacity="0.55"/>
56
+ <rect x="280" y="50" width="52" height="110" rx="8" fill="#9be47f" opacity="0.86"/>
57
+
58
+ <path d="M44 80 C 112 40, 182 104, 248 62 S 330 34, 366 18" fill="none" stroke="#ffd36a" stroke-width="5" stroke-linecap="round" marker-end="url(#arrow)"/>
59
+ <text x="18" y="194" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="16" font-weight="650" fill="#dcecff">Raw</text>
60
+ <text x="78" y="194" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="16" font-weight="650" fill="#dcecff">BetterCall</text>
61
+ <text x="206" y="194" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="16" font-weight="650" fill="#dcecff">Raw</text>
62
+ <text x="266" y="194" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="16" font-weight="650" fill="#dcecff">BetterCall</text>
63
+ </g>
64
+ </g>
65
+
66
+ <g transform="translate(854 442)">
67
+ <rect x="0" y="0" width="176" height="62" rx="14" fill="#ffffff" fill-opacity="0.10" stroke="#ffffff" stroke-opacity="0.16"/>
68
+ <text x="20" y="25" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="16" font-weight="700" fill="#b8cbe2">Raw</text>
69
+ <text x="20" y="50" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="28" font-weight="850" fill="#67d4ff">73.4%</text>
70
+
71
+ <path d="M200 32 H252" stroke="#ffd36a" stroke-width="5" stroke-linecap="round" marker-end="url(#arrow)"/>
72
+
73
+ <rect x="280" y="0" width="210" height="62" rx="14" fill="#ffffff" fill-opacity="0.13" stroke="#9be47f" stroke-opacity="0.55"/>
74
+ <text x="300" y="25" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="16" font-weight="700" fill="#b8cbe2">BetterCall</text>
75
+ <text x="300" y="50" font-family="Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif" font-size="28" font-weight="850" fill="#9be47f">83.8%</text>
28
76
  </g>
29
77
  </svg>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@botbotgo/better-call",
3
- "version": "0.1.6",
3
+ "version": "0.1.8",
4
4
  "description": "LLM tool-call reliability layer.",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",