@plurnk/plurnk-providers 1.20.0 → 1.21.0
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 +80 -2
- package/SPEC.md +10 -0
- package/dist/aiSdkTransport.d.ts +16 -0
- package/dist/aiSdkTransport.d.ts.map +1 -1
- package/dist/aiSdkTransport.js +73 -0
- package/dist/aiSdkTransport.js.map +1 -1
- package/docs/models.md +17 -88
- package/package.json +5 -5
- package/src/aiSdkTransport.test.ts +57 -0
- package/src/aiSdkTransport.ts +78 -0
package/README.md
CHANGED
|
@@ -12,8 +12,9 @@ Ordinary provider behavior is intentionally not reimplemented here:
|
|
|
12
12
|
- PLURNK owns aliases, generation envelopes, normalized usage and errors,
|
|
13
13
|
evidence capture, first-party metadata, and local endpoint capabilities.
|
|
14
14
|
|
|
15
|
-
See [SPEC.md](SPEC.md) for the contract, [the model
|
|
16
|
-
|
|
15
|
+
See [SPEC.md](SPEC.md) for the contract, [the model reference](docs/models.md)
|
|
16
|
+
for what a model is told about routes and generation, and
|
|
17
|
+
[.env.defaults](.env.defaults) for every knob.
|
|
17
18
|
The package-owned `PLURNK_PROVIDERS_ERROR_DETAIL_LIMIT` bounds upstream
|
|
18
19
|
diagnostic text in public provider Problems.
|
|
19
20
|
|
|
@@ -69,6 +70,44 @@ PLURNK_MODEL_acme=acme/model-id
|
|
|
69
70
|
Provider declarations are configuration, not secrets. Secret values remain in
|
|
70
71
|
the operator environment.
|
|
71
72
|
|
|
73
|
+
The forms, in one table:
|
|
74
|
+
|
|
75
|
+
| Form | Meaning |
|
|
76
|
+
| --- | --- |
|
|
77
|
+
| `PLURNK_MODEL=provider/model` | Select a route without an alias. |
|
|
78
|
+
| `PLURNK_MODEL_<alias>=provider/model` | Declare a named route and tuning scope. |
|
|
79
|
+
| `PLURNK_BASEURL_<alias>=https://endpoint/v1` | Override that declared alias's endpoint. |
|
|
80
|
+
| `PLURNK_PROVIDERS_<KNOB>_<alias>=value` | Nonempty per-alias override of the bare knob; alias case is ignored. |
|
|
81
|
+
| `PLURNK_PROVIDERS_PROVIDER_<NAME>_*` | Provider-wide declaration, not per-alias tuning. |
|
|
82
|
+
|
|
83
|
+
Models.dev supplies cataloged providers' endpoints, credential-variable names,
|
|
84
|
+
model limits, reasoning capabilities, and rates. The operator supplies
|
|
85
|
+
credentials to the service environment; a client's environment does not
|
|
86
|
+
configure a remote daemon. Worker model and reasoning selections persist:
|
|
87
|
+
changing a startup default is not a command to retarget existing Workers.
|
|
88
|
+
Clients expose explicit model, reasoning, and child-model controls; their
|
|
89
|
+
available effort choices come from the selected route.
|
|
90
|
+
|
|
91
|
+
## Capacity and reasoning
|
|
92
|
+
|
|
93
|
+
```mermaid
|
|
94
|
+
flowchart TD
|
|
95
|
+
Limits[Model context and input/output limits] --> Input[Available input capacity]
|
|
96
|
+
Output[Total output envelope, including reasoning] --> Input
|
|
97
|
+
Input --> Context[Core's calibrated context allowance]
|
|
98
|
+
Output --> Reasoning[Optional smaller reasoning budget]
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
- **Effort** and **budget** are independent. `adaptive` requests native dynamic
|
|
102
|
+
reasoning where supported, otherwise the supported high posture. Fixed effort
|
|
103
|
+
names must be supported by the route; an unsupported request is not silently downgraded.
|
|
104
|
+
- **Output** accepts positive tokens or a percentage of context; known model
|
|
105
|
+
limits cap it. An explicit reasoning budget must be smaller than total output.
|
|
106
|
+
Leaving the reasoning budget unset does not disable reasoning.
|
|
107
|
+
- **Context** is derived from the live endpoint or catalog. An operator cap can
|
|
108
|
+
shrink known capacity or declare unknown capacity, never enlarge known limits.
|
|
109
|
+
Prompt projection and initialization reasoning READ limits are separate Core policy.
|
|
110
|
+
|
|
72
111
|
## Provider plugins
|
|
73
112
|
|
|
74
113
|
Most integrations should use an MCP server, executor, scheme, or a provider
|
|
@@ -109,6 +148,45 @@ Third-party discovery uses the shared pre-import trust contract ({§plugin-trust
|
|
|
109
148
|
requires runtime facts no static catalog owns: served model, context window,
|
|
110
149
|
llama-server capabilities, slots, EOS token, and exact tokenization.
|
|
111
150
|
|
|
151
|
+
```dotenv
|
|
152
|
+
PLURNK_MODEL_local=openai/model-name-from-endpoint
|
|
153
|
+
PLURNK_BASEURL_local=http://127.0.0.1:8080/v1
|
|
154
|
+
PLURNK_MODEL=local
|
|
155
|
+
# Optional: your own GBNF grammar, carried verbatim to this llama-server route:
|
|
156
|
+
# PLURNK_PROVIDERS_GBNF_local=~/.config/plurnk/local.gbnf
|
|
157
|
+
# Optional explicit generation allowances, in tokens:
|
|
158
|
+
# PLURNK_PROVIDERS_OUTPUT_BUDGET_local=8192
|
|
159
|
+
# PLURNK_PROVIDERS_REASONING_BUDGET_local=4096
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
Endpoint probing supplies served-model capacity and llama-server capabilities.
|
|
163
|
+
Pin `PLURNK_PROVIDERS_LLAMA_SERVER_local=1` only for a known llama-server that
|
|
164
|
+
cannot be fingerprinted reliably. GBNF is optional and yours: the service ships
|
|
165
|
+
no grammar profile and never validates or grades one; the file's text reaches
|
|
166
|
+
the route verbatim, and configuring it on a route without grammar transport is
|
|
167
|
+
an error. Parsing always applies.
|
|
168
|
+
|
|
169
|
+
Sampling stays at endpoint defaults unless configured. Repetition penalties can
|
|
170
|
+
fight exact source copying and grammar repetition. Measure local tuning; it is
|
|
171
|
+
not a portable cloud policy. `think-tags` response interpretation is a separate
|
|
172
|
+
opt-in for endpoints that emit a leading `<think>` envelope, not a reasoning switch.
|
|
173
|
+
|
|
174
|
+
## Connectivity, caching, and cost
|
|
175
|
+
|
|
176
|
+
| Concern | Boundary |
|
|
177
|
+
| --- | --- |
|
|
178
|
+
| Attempt, first-content, idle deadlines | Provider transport; a timeout surfaces a failure, not a fabricated response. |
|
|
179
|
+
| Provider-directed waits | Bounded retries honor `Retry-After`; other recoverable failures return to Core. |
|
|
180
|
+
| Loop recovery | Core reissues within its recovery window, then parks for a prompt or wake. |
|
|
181
|
+
| Cache affinity | Stable Worker identity through documented provider controls; not a cache-hit guarantee. |
|
|
182
|
+
| Explicit cache writes | Separate policy on supported routes; can affect billing. |
|
|
183
|
+
| Service tier | Explicit route choice that may change price and availability. |
|
|
184
|
+
| Cost | Provider monetary evidence wins; known usage and catalog rates yield an estimate, not a settled charge. |
|
|
185
|
+
|
|
186
|
+
For uncataloged compatible endpoints, declare the SDK, URL, and credential-variable
|
|
187
|
+
name together; the examples are in the defaults reference. A provider plugin is
|
|
188
|
+
needed only when the protocol cannot be expressed by the installed adapters.
|
|
189
|
+
|
|
112
190
|
## Configured-provider packet conformance matrix
|
|
113
191
|
|
|
114
192
|
Every configured model alias is exercised through a real PLURNK loop — the
|
package/SPEC.md
CHANGED
|
@@ -769,6 +769,16 @@ When enabled, raw per-token model logprob is canonical; alternatives are
|
|
|
769
769
|
preserved when returned. Raw body/chunks preserve wire evidence the normalized
|
|
770
770
|
record omits.
|
|
771
771
|
|
|
772
|
+
§provider-wire-emission **The emission is retained as the wire carried it, on every
|
|
773
|
+
response.** Beside the normalized `content` and `reasoning`, the transport record keeps
|
|
774
|
+
`wire`: the number of raw chunks, the chunks that carried no field at all, every delta or
|
|
775
|
+
message field the stream carried with the number of chunks carrying it, tool calls merged
|
|
776
|
+
by index with their arguments as streamed, the finish reasons seen, and the verbatim text
|
|
777
|
+
of every string field the record does not already hold. Nothing is opt-in and nothing is
|
|
778
|
+
reinterpreted: a blank emission reads as thirteen chunks that carried nothing, or as a
|
|
779
|
+
tool-call section the model emitted into a channel the protocol does not read, instead of
|
|
780
|
+
being guessed at from token counts. Covered by `aiSdkTransport.test.ts`.
|
|
781
|
+
|
|
772
782
|
§provider-usage-refusal **The provider's bookkeeping is not the exchange.** Usage
|
|
773
783
|
normalization is exact and refuses counters that contradict each other (a
|
|
774
784
|
reasoning detail larger than its output aggregate, a total that disagrees with
|
package/dist/aiSdkTransport.d.ts
CHANGED
|
@@ -20,11 +20,26 @@ export type AiSdkTransportRequest = {
|
|
|
20
20
|
observeReasoning?: ProviderReasoningObserver;
|
|
21
21
|
observeText?: (delta: string) => void;
|
|
22
22
|
};
|
|
23
|
+
export type WireEmission = {
|
|
24
|
+
readonly chunks: number;
|
|
25
|
+
readonly emptyChunks: number;
|
|
26
|
+
readonly fields: Record<string, number>;
|
|
27
|
+
readonly channels: Record<string, string>;
|
|
28
|
+
readonly toolCalls: ReadonlyArray<{
|
|
29
|
+
index: number;
|
|
30
|
+
id?: string;
|
|
31
|
+
type?: string;
|
|
32
|
+
name?: string;
|
|
33
|
+
arguments: string;
|
|
34
|
+
}>;
|
|
35
|
+
readonly finishReasons: readonly string[];
|
|
36
|
+
};
|
|
23
37
|
export type AiSdkTransportResponse = {
|
|
24
38
|
model: string;
|
|
25
39
|
content: string;
|
|
26
40
|
reasoning: string;
|
|
27
41
|
reasoningProjected: boolean;
|
|
42
|
+
wire: WireEmission;
|
|
28
43
|
finishReason: ProviderAttemptFinishReason;
|
|
29
44
|
rawFinishReason?: string;
|
|
30
45
|
usage?: ProviderUsage;
|
|
@@ -61,5 +76,6 @@ export type AiSdkTransportFailureEvidence = {
|
|
|
61
76
|
readonly status?: number;
|
|
62
77
|
};
|
|
63
78
|
export declare const transportFailureEvidence: (error: unknown) => AiSdkTransportFailureEvidence;
|
|
79
|
+
export declare const wireEmissionOf: (values: readonly unknown[]) => WireEmission;
|
|
64
80
|
export {};
|
|
65
81
|
//# sourceMappingURL=aiSdkTransport.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aiSdkTransport.d.ts","sourceRoot":"","sources":["../src/aiSdkTransport.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"aiSdkTransport.d.ts","sourceRoot":"","sources":["../src/aiSdkTransport.ts"],"names":[],"mappings":"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"}
|
package/dist/aiSdkTransport.js
CHANGED
|
@@ -363,6 +363,7 @@ const executeModelOnce = async (request) => {
|
|
|
363
363
|
content: result.text,
|
|
364
364
|
reasoning: reasoningText,
|
|
365
365
|
reasoningProjected: evidence.reasoningProjected,
|
|
366
|
+
wire: wireEmissionOf(values),
|
|
366
367
|
finishReason: finishReasonOf(rawFinishReason),
|
|
367
368
|
...(rawFinishReason === undefined ? {} : { rawFinishReason }),
|
|
368
369
|
...settledUsage(values, result.usage),
|
|
@@ -442,6 +443,7 @@ const executeModelOnce = async (request) => {
|
|
|
442
443
|
content,
|
|
443
444
|
reasoning: reasoningText,
|
|
444
445
|
reasoningProjected: evidence.reasoningProjected,
|
|
446
|
+
wire: wireEmissionOf(rawChunks),
|
|
445
447
|
finishReason: finishReasonOf(rawFinishReason),
|
|
446
448
|
...(rawFinishReason === undefined ? {} : { rawFinishReason }),
|
|
447
449
|
...settledUsage(rawChunks, await result.usage),
|
|
@@ -536,6 +538,77 @@ export const transportFailureEvidence = (error) => {
|
|
|
536
538
|
...(status === undefined ? {} : { status }),
|
|
537
539
|
};
|
|
538
540
|
};
|
|
541
|
+
const RETAINED_FIELDS = new Set(["content", "reasoning_content", "reasoning", "thinking", "role"]); // lexicon-allow: backend wire fields
|
|
542
|
+
// {§provider-wire-emission} — the emission as the wire carried it: field counts, chunks that
|
|
543
|
+
// carried nothing, merged tool calls, and the verbatim text of every channel the normalized record
|
|
544
|
+
// does not already hold. A blank emission is then readable instead of guessed at.
|
|
545
|
+
export const wireEmissionOf = (values) => {
|
|
546
|
+
let chunks = 0;
|
|
547
|
+
let emptyChunks = 0;
|
|
548
|
+
const fields = {};
|
|
549
|
+
const channels = {};
|
|
550
|
+
const toolCalls = new Map();
|
|
551
|
+
const finishReasons = new Set();
|
|
552
|
+
for (const value of values) {
|
|
553
|
+
const record = recordOf(value);
|
|
554
|
+
if (record === null)
|
|
555
|
+
continue;
|
|
556
|
+
chunks += 1;
|
|
557
|
+
const choices = Array.isArray(record.choices) ? record.choices : [];
|
|
558
|
+
let carried = false;
|
|
559
|
+
for (const item of choices) {
|
|
560
|
+
const choice = recordOf(item);
|
|
561
|
+
if (choice === null)
|
|
562
|
+
continue;
|
|
563
|
+
if (typeof choice.finish_reason === "string")
|
|
564
|
+
finishReasons.add(choice.finish_reason);
|
|
565
|
+
const message = recordOf(choice.delta) ?? recordOf(choice.message);
|
|
566
|
+
if (message === null)
|
|
567
|
+
continue;
|
|
568
|
+
for (const [key, field] of Object.entries(message)) {
|
|
569
|
+
if (field === null || field === undefined || key === "role")
|
|
570
|
+
continue;
|
|
571
|
+
if (typeof field === "string" && field.length === 0)
|
|
572
|
+
continue;
|
|
573
|
+
carried = true;
|
|
574
|
+
fields[key] = (fields[key] ?? 0) + 1;
|
|
575
|
+
if (key === "tool_calls" && Array.isArray(field)) {
|
|
576
|
+
for (const [position, callValue] of field.entries()) {
|
|
577
|
+
const call = recordOf(callValue);
|
|
578
|
+
if (call === null)
|
|
579
|
+
continue;
|
|
580
|
+
const index = typeof call.index === "number" ? call.index : position;
|
|
581
|
+
const merged = toolCalls.get(index) ?? { index, arguments: "" };
|
|
582
|
+
if (typeof call.id === "string")
|
|
583
|
+
merged.id = call.id;
|
|
584
|
+
if (typeof call.type === "string")
|
|
585
|
+
merged.type = call.type;
|
|
586
|
+
const fn = recordOf(call.function);
|
|
587
|
+
if (typeof fn?.name === "string")
|
|
588
|
+
merged.name = fn.name;
|
|
589
|
+
if (typeof fn?.arguments === "string")
|
|
590
|
+
merged.arguments += fn.arguments;
|
|
591
|
+
toolCalls.set(index, merged);
|
|
592
|
+
}
|
|
593
|
+
continue;
|
|
594
|
+
}
|
|
595
|
+
if (RETAINED_FIELDS.has(key))
|
|
596
|
+
continue;
|
|
597
|
+
channels[key] = (channels[key] ?? "") + (typeof field === "string" ? field : JSON.stringify(field));
|
|
598
|
+
}
|
|
599
|
+
}
|
|
600
|
+
if (choices.length > 0 && !carried)
|
|
601
|
+
emptyChunks += 1;
|
|
602
|
+
}
|
|
603
|
+
return {
|
|
604
|
+
chunks,
|
|
605
|
+
emptyChunks,
|
|
606
|
+
fields,
|
|
607
|
+
channels,
|
|
608
|
+
toolCalls: [...toolCalls.values()].sort((a, b) => a.index - b.index),
|
|
609
|
+
finishReasons: [...finishReasons],
|
|
610
|
+
};
|
|
611
|
+
};
|
|
539
612
|
const extractEvidence = (values) => {
|
|
540
613
|
const logprobs = [];
|
|
541
614
|
let reasoning = "";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aiSdkTransport.js","sourceRoot":"","sources":["../src/aiSdkTransport.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"aiSdkTransport.js","sourceRoot":"","sources":["../src/aiSdkTransport.ts"],"names":[],"mappings":"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"}
|
package/docs/models.md
CHANGED
|
@@ -1,90 +1,19 @@
|
|
|
1
1
|
# Models and generation
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
| `PLURNK_MODEL=provider/model` | Select a route without an alias. |
|
|
21
|
-
| `PLURNK_MODEL_<alias>=provider/model` | Declare a named route and tuning scope. |
|
|
22
|
-
| `PLURNK_BASEURL_<alias>=https://endpoint/v1` | Override that declared alias's endpoint. |
|
|
23
|
-
| `PLURNK_PROVIDERS_<KNOB>_<alias>=value` | Nonempty per-alias override of the bare knob; alias case is ignored. |
|
|
24
|
-
| `PLURNK_PROVIDERS_PROVIDER_<NAME>_*` | Provider-wide declaration, not per-alias tuning. |
|
|
25
|
-
|
|
26
|
-
The [defaults reference](../.env.defaults) lists supported knobs and values.
|
|
27
|
-
Worker model/reasoning selections persist: changing a startup default is not a
|
|
28
|
-
command to retarget existing Workers. Clients expose explicit model, reasoning,
|
|
29
|
-
and child-model controls; their available effort choices come from the selected route.
|
|
30
|
-
|
|
31
|
-
## Capacity and reasoning
|
|
32
|
-
|
|
33
|
-
```mermaid
|
|
34
|
-
flowchart TD
|
|
35
|
-
Limits[Model context and input/output limits] --> Input[Available input capacity]
|
|
36
|
-
Output[Total output envelope, including reasoning] --> Input
|
|
37
|
-
Input --> Context[Core's calibrated context allowance]
|
|
38
|
-
Output --> Reasoning[Optional smaller reasoning budget]
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
- **Effort** and **budget** are independent. `adaptive` requests native dynamic
|
|
42
|
-
reasoning where supported, otherwise the supported high posture. Fixed effort
|
|
43
|
-
names must be supported by the route; an unsupported request is not silently downgraded.
|
|
44
|
-
- **Output** accepts positive tokens or a percentage of context; known model
|
|
45
|
-
limits cap it. An explicit reasoning budget must be smaller than total output.
|
|
46
|
-
Leaving the reasoning budget unset does not disable reasoning.
|
|
47
|
-
- **Context** is derived from the live endpoint or catalog. An operator cap can
|
|
48
|
-
shrink known capacity or declare unknown capacity, never enlarge known limits.
|
|
49
|
-
Prompt projection and initialization reasoning READ limits are separate Core policy.
|
|
50
|
-
|
|
51
|
-
## Local OpenAI-compatible endpoints
|
|
52
|
-
|
|
53
|
-
```dotenv
|
|
54
|
-
PLURNK_MODEL_local=openai/model-name-from-endpoint
|
|
55
|
-
PLURNK_BASEURL_local=http://127.0.0.1:8080/v1
|
|
56
|
-
PLURNK_MODEL=local
|
|
57
|
-
# Optional: your own GBNF grammar, carried verbatim to this llama-server route:
|
|
58
|
-
# PLURNK_PROVIDERS_GBNF_local=~/.config/plurnk/local.gbnf
|
|
59
|
-
# Optional explicit generation allowances, in tokens:
|
|
60
|
-
# PLURNK_PROVIDERS_OUTPUT_BUDGET_local=8192
|
|
61
|
-
# PLURNK_PROVIDERS_REASONING_BUDGET_local=4096
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
Endpoint probing supplies served-model capacity and llama-server capabilities.
|
|
65
|
-
Pin `PLURNK_PROVIDERS_LLAMA_SERVER_local=1` only for a known llama-server that
|
|
66
|
-
cannot be fingerprinted reliably. GBNF is optional and yours: the service ships
|
|
67
|
-
no grammar profile and never validates or grades one; the file's text reaches
|
|
68
|
-
the route verbatim, and configuring it on a route without grammar transport is
|
|
69
|
-
an error. Parsing always applies.
|
|
70
|
-
|
|
71
|
-
Sampling stays at endpoint defaults unless configured. Repetition penalties can
|
|
72
|
-
fight exact source copying and grammar repetition. Measure local tuning; it is
|
|
73
|
-
not a portable cloud policy. `think-tags` response interpretation is a separate
|
|
74
|
-
opt-in for endpoints that emit a leading `<think>` envelope, not a reasoning switch.
|
|
75
|
-
|
|
76
|
-
## Connectivity, caching, and cost
|
|
77
|
-
|
|
78
|
-
| Concern | Boundary |
|
|
79
|
-
| --- | --- |
|
|
80
|
-
| Attempt, first-content, idle deadlines | Provider transport; a timeout surfaces a failure, not a fabricated response. |
|
|
81
|
-
| Provider-directed waits | Bounded retries honor `Retry-After`; other recoverable failures return to Core. |
|
|
82
|
-
| Loop recovery | Core reissues within its recovery window, then parks for a prompt or wake. |
|
|
83
|
-
| Cache affinity | Stable Worker identity through documented provider controls; not a cache-hit guarantee. |
|
|
84
|
-
| Explicit cache writes | Separate policy on supported routes; can affect billing. |
|
|
85
|
-
| Service tier | Explicit route choice that may change price and availability. |
|
|
86
|
-
| Cost | Provider monetary evidence wins; known usage and catalog rates yield an estimate, not a settled charge. |
|
|
87
|
-
|
|
88
|
-
For uncataloged compatible endpoints, declare the SDK, URL, and credential-variable
|
|
89
|
-
name together; the examples are in the defaults reference. A provider plugin is
|
|
90
|
-
needed only when the protocol cannot be expressed by the installed adapters.
|
|
3
|
+
A route is `provider/model`; an alias names a route with its own tuning. The
|
|
4
|
+
worker owns its model and reasoning selection: an explicit selection persists
|
|
5
|
+
on the worker, a loop snapshots the resolved route, and a change to the
|
|
6
|
+
daemon's default does not retarget an existing worker. A child worker runs on
|
|
7
|
+
its parent's durable spawn selection, else the parent's own model.
|
|
8
|
+
|
|
9
|
+
Effort and budget are independent. The effort names available come from the
|
|
10
|
+
selected route, and an unsupported request is refused rather than downgraded.
|
|
11
|
+
Output accepts a token count or a percentage of context, capped by the model's
|
|
12
|
+
known limits; a reasoning budget, when set, is smaller than the total output,
|
|
13
|
+
and leaving it unset does not disable reasoning. Context is derived from the
|
|
14
|
+
endpoint or the catalog; an operator cap can only shrink it.
|
|
15
|
+
|
|
16
|
+
Cost is an estimate from known usage and catalog rates unless the provider
|
|
17
|
+
reports a settled charge. A timeout is a failure, never a fabricated response;
|
|
18
|
+
an interrupted call is reissued within the loop's recovery window, after which
|
|
19
|
+
the loop parks for a prompt or a wake.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plurnk/plurnk-providers",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.21.0",
|
|
4
4
|
"description": "PLURNK's stable model-provider contract and AI SDK adapter.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"plurnk",
|
|
@@ -80,10 +80,10 @@
|
|
|
80
80
|
"@ai-sdk/openai-compatible": "^3.0.14",
|
|
81
81
|
"@ai-sdk/togetherai": "^3.0.0",
|
|
82
82
|
"@openrouter/ai-sdk-provider": "^3.0.0",
|
|
83
|
-
"@plurnk/plurnk-aliases": "1.
|
|
84
|
-
"@plurnk/plurnk-contracts": "1.
|
|
85
|
-
"@plurnk/plurnk-meta": "1.
|
|
86
|
-
"@plurnk/plurnk-models": "1.
|
|
83
|
+
"@plurnk/plurnk-aliases": "1.21.0",
|
|
84
|
+
"@plurnk/plurnk-contracts": "1.21.0",
|
|
85
|
+
"@plurnk/plurnk-meta": "1.21.0",
|
|
86
|
+
"@plurnk/plurnk-models": "1.21.0",
|
|
87
87
|
"ai": "^7.0.37",
|
|
88
88
|
"zod": "^4.4.3"
|
|
89
89
|
},
|
|
@@ -361,6 +361,63 @@ test("normalizeRetryAttemptError — only provider-directed waits retry: 429, Re
|
|
|
361
361
|
assert.equal((normalizeRetryAttemptError(bareServerError) as APICallError).isRetryable, false, "a bare 5xx surfaces at once for the engine's recovery");
|
|
362
362
|
});
|
|
363
363
|
|
|
364
|
+
// {§provider-wire-emission} — a blank emission is readable: what the stream carried is kept, channel by channel.
|
|
365
|
+
test("the transport record keeps the wire emission: empty chunks, tool calls and channels the protocol does not read", async (t) => {
|
|
366
|
+
const usage = { prompt_tokens: 10, completion_tokens: 13, total_tokens: 23, completion_tokens_details: { reasoning_tokens: 4 } };
|
|
367
|
+
await t.test("streamed", async () => {
|
|
368
|
+
const chunks = [
|
|
369
|
+
{ id: "r", object: "chat.completion.chunk", created: 1, model: "served-model", choices: [{ index: 0, delta: { role: "assistant", content: "" }, finish_reason: null }] },
|
|
370
|
+
{ id: "r", object: "chat.completion.chunk", created: 1, model: "served-model", choices: [{ index: 0, delta: { reasoning_content: "Let me read it." }, finish_reason: null }] },
|
|
371
|
+
{ id: "r", object: "chat.completion.chunk", created: 1, model: "served-model", choices: [{ index: 0, delta: {}, finish_reason: null }] },
|
|
372
|
+
{ id: "r", object: "chat.completion.chunk", created: 1, model: "served-model", choices: [{ index: 0, delta: { content: null }, finish_reason: null }] },
|
|
373
|
+
{ id: "r", object: "chat.completion.chunk", created: 1, model: "served-model", choices: [{ index: 0, delta: { tool_calls: [{ index: 0, id: "call-1", type: "function", function: { name: "READ", arguments: "{\"path\": \"dja" } }] }, finish_reason: null }] },
|
|
374
|
+
{ id: "r", object: "chat.completion.chunk", created: 1, model: "served-model", choices: [{ index: 0, delta: { tool_calls: [{ index: 0, function: { arguments: "ngo/views/debug.py\"}" } }] }, finish_reason: null }] },
|
|
375
|
+
{ id: "r", object: "chat.completion.chunk", created: 1, model: "served-model", choices: [{ index: 0, delta: { refusal: "no" }, finish_reason: null }] },
|
|
376
|
+
{ id: "r", object: "chat.completion.chunk", created: 1, model: "served-model", choices: [{ index: 0, delta: {}, finish_reason: "stop" }], usage },
|
|
377
|
+
];
|
|
378
|
+
const result = await executeOpenAICompatible({
|
|
379
|
+
...request,
|
|
380
|
+
streaming: true,
|
|
381
|
+
fetch: async () => new Response(new ReadableStream({
|
|
382
|
+
start(controller) {
|
|
383
|
+
for (const chunk of chunks) controller.enqueue(new TextEncoder().encode(`data: ${JSON.stringify(chunk)}\n\n`));
|
|
384
|
+
controller.enqueue(new TextEncoder().encode("data: [DONE]\n\n"));
|
|
385
|
+
controller.close();
|
|
386
|
+
},
|
|
387
|
+
}), { headers: { "content-type": "text/event-stream" } }),
|
|
388
|
+
});
|
|
389
|
+
assert.equal(result.content, "", "the protocol's channel was blank");
|
|
390
|
+
assert.equal(result.reasoning, "Let me read it.");
|
|
391
|
+
assert.deepEqual(result.wire, {
|
|
392
|
+
chunks: 8,
|
|
393
|
+
emptyChunks: 4,
|
|
394
|
+
fields: { reasoning_content: 1, tool_calls: 2, refusal: 1 },
|
|
395
|
+
channels: { refusal: "no" },
|
|
396
|
+
toolCalls: [{ index: 0, id: "call-1", type: "function", name: "READ", arguments: "{\"path\": \"django/views/debug.py\"}" }],
|
|
397
|
+
finishReasons: ["stop"],
|
|
398
|
+
}, "the record says what the thirteen billed tokens were");
|
|
399
|
+
});
|
|
400
|
+
await t.test("unstreamed", async () => {
|
|
401
|
+
const result = await executeOpenAICompatible({
|
|
402
|
+
...request,
|
|
403
|
+
fetch: async () => new Response(JSON.stringify({
|
|
404
|
+
id: "response-1", object: "chat.completion", created: 1, model: "served-model",
|
|
405
|
+
choices: [{ index: 0, message: { role: "assistant", content: "answer", reasoning_content: "why", tool_calls: [{ id: "c", type: "function", function: { name: "FIND", arguments: "{}" } }] }, finish_reason: "stop" }],
|
|
406
|
+
usage: { prompt_tokens: 1, completion_tokens: 5, total_tokens: 6 },
|
|
407
|
+
}), { headers: { "content-type": "application/json" } }),
|
|
408
|
+
});
|
|
409
|
+
assert.equal(result.content, "answer");
|
|
410
|
+
assert.deepEqual(result.wire, {
|
|
411
|
+
chunks: 1,
|
|
412
|
+
emptyChunks: 0,
|
|
413
|
+
fields: { content: 1, reasoning_content: 1, tool_calls: 1 },
|
|
414
|
+
channels: {},
|
|
415
|
+
toolCalls: [{ index: 0, id: "c", type: "function", name: "FIND", arguments: "{}" }],
|
|
416
|
+
finishReasons: ["stop"],
|
|
417
|
+
});
|
|
418
|
+
});
|
|
419
|
+
});
|
|
420
|
+
|
|
364
421
|
// {§provider-usage-refusal} (#580) — the provider's counters disagree with themselves; the
|
|
365
422
|
// exchange is not the casualty.
|
|
366
423
|
test("inconsistent usage counters refuse normalization without failing the response, in both shapes", async (t) => {
|
package/src/aiSdkTransport.ts
CHANGED
|
@@ -191,11 +191,27 @@ export type AiSdkTransportRequest = {
|
|
|
191
191
|
observeText?: (delta: string) => void;
|
|
192
192
|
};
|
|
193
193
|
|
|
194
|
+
// {§provider-wire-emission} — what the wire carried, every channel, kept on every response.
|
|
195
|
+
export type WireEmission = {
|
|
196
|
+
// Raw chunks seen (one for an unstreamed body).
|
|
197
|
+
readonly chunks: number;
|
|
198
|
+
// Chunks whose choice carried no field at all beyond a role: output the wire billed but never showed.
|
|
199
|
+
readonly emptyChunks: number;
|
|
200
|
+
// Every delta or message field seen with a non-null value, with the number of chunks carrying it.
|
|
201
|
+
readonly fields: Record<string, number>;
|
|
202
|
+
// Verbatim text of every string field except content and the reasoning fields, which the record keeps already.
|
|
203
|
+
readonly channels: Record<string, string>;
|
|
204
|
+
// Tool calls merged by index, arguments concatenated as streamed.
|
|
205
|
+
readonly toolCalls: ReadonlyArray<{ index: number; id?: string; type?: string; name?: string; arguments: string }>;
|
|
206
|
+
readonly finishReasons: readonly string[];
|
|
207
|
+
};
|
|
208
|
+
|
|
194
209
|
export type AiSdkTransportResponse = {
|
|
195
210
|
model: string;
|
|
196
211
|
content: string;
|
|
197
212
|
reasoning: string;
|
|
198
213
|
reasoningProjected: boolean;
|
|
214
|
+
wire: WireEmission;
|
|
199
215
|
finishReason: ProviderAttemptFinishReason;
|
|
200
216
|
rawFinishReason?: string;
|
|
201
217
|
usage?: ProviderUsage;
|
|
@@ -463,6 +479,7 @@ const executeModelOnce = async (
|
|
|
463
479
|
content: result.text,
|
|
464
480
|
reasoning: reasoningText,
|
|
465
481
|
reasoningProjected: evidence.reasoningProjected,
|
|
482
|
+
wire: wireEmissionOf(values),
|
|
466
483
|
finishReason: finishReasonOf(rawFinishReason),
|
|
467
484
|
...(rawFinishReason === undefined ? {} : { rawFinishReason }),
|
|
468
485
|
...settledUsage(values, result.usage),
|
|
@@ -540,6 +557,7 @@ const executeModelOnce = async (
|
|
|
540
557
|
content,
|
|
541
558
|
reasoning: reasoningText,
|
|
542
559
|
reasoningProjected: evidence.reasoningProjected,
|
|
560
|
+
wire: wireEmissionOf(rawChunks),
|
|
543
561
|
finishReason: finishReasonOf(rawFinishReason),
|
|
544
562
|
...(rawFinishReason === undefined ? {} : { rawFinishReason }),
|
|
545
563
|
...settledUsage(rawChunks, await result.usage),
|
|
@@ -649,6 +667,66 @@ export const transportFailureEvidence = (
|
|
|
649
667
|
};
|
|
650
668
|
};
|
|
651
669
|
|
|
670
|
+
const RETAINED_FIELDS = new Set(["content", "reasoning_content", "reasoning", "thinking", "role"]); // lexicon-allow: backend wire fields
|
|
671
|
+
|
|
672
|
+
// {§provider-wire-emission} — the emission as the wire carried it: field counts, chunks that
|
|
673
|
+
// carried nothing, merged tool calls, and the verbatim text of every channel the normalized record
|
|
674
|
+
// does not already hold. A blank emission is then readable instead of guessed at.
|
|
675
|
+
export const wireEmissionOf = (values: readonly unknown[]): WireEmission => {
|
|
676
|
+
let chunks = 0;
|
|
677
|
+
let emptyChunks = 0;
|
|
678
|
+
const fields: Record<string, number> = {};
|
|
679
|
+
const channels: Record<string, string> = {};
|
|
680
|
+
const toolCalls = new Map<number, { index: number; id?: string; type?: string; name?: string; arguments: string }>();
|
|
681
|
+
const finishReasons = new Set<string>();
|
|
682
|
+
for (const value of values) {
|
|
683
|
+
const record = recordOf(value);
|
|
684
|
+
if (record === null) continue;
|
|
685
|
+
chunks += 1;
|
|
686
|
+
const choices = Array.isArray(record.choices) ? record.choices : [];
|
|
687
|
+
let carried = false;
|
|
688
|
+
for (const item of choices) {
|
|
689
|
+
const choice = recordOf(item);
|
|
690
|
+
if (choice === null) continue;
|
|
691
|
+
if (typeof choice.finish_reason === "string") finishReasons.add(choice.finish_reason);
|
|
692
|
+
const message = recordOf(choice.delta) ?? recordOf(choice.message);
|
|
693
|
+
if (message === null) continue;
|
|
694
|
+
for (const [key, field] of Object.entries(message)) {
|
|
695
|
+
if (field === null || field === undefined || key === "role") continue;
|
|
696
|
+
if (typeof field === "string" && field.length === 0) continue;
|
|
697
|
+
carried = true;
|
|
698
|
+
fields[key] = (fields[key] ?? 0) + 1;
|
|
699
|
+
if (key === "tool_calls" && Array.isArray(field)) {
|
|
700
|
+
for (const [position, callValue] of field.entries()) {
|
|
701
|
+
const call = recordOf(callValue);
|
|
702
|
+
if (call === null) continue;
|
|
703
|
+
const index = typeof call.index === "number" ? call.index : position;
|
|
704
|
+
const merged = toolCalls.get(index) ?? { index, arguments: "" };
|
|
705
|
+
if (typeof call.id === "string") merged.id = call.id;
|
|
706
|
+
if (typeof call.type === "string") merged.type = call.type;
|
|
707
|
+
const fn = recordOf(call.function);
|
|
708
|
+
if (typeof fn?.name === "string") merged.name = fn.name;
|
|
709
|
+
if (typeof fn?.arguments === "string") merged.arguments += fn.arguments;
|
|
710
|
+
toolCalls.set(index, merged);
|
|
711
|
+
}
|
|
712
|
+
continue;
|
|
713
|
+
}
|
|
714
|
+
if (RETAINED_FIELDS.has(key)) continue;
|
|
715
|
+
channels[key] = (channels[key] ?? "") + (typeof field === "string" ? field : JSON.stringify(field));
|
|
716
|
+
}
|
|
717
|
+
}
|
|
718
|
+
if (choices.length > 0 && !carried) emptyChunks += 1;
|
|
719
|
+
}
|
|
720
|
+
return {
|
|
721
|
+
chunks,
|
|
722
|
+
emptyChunks,
|
|
723
|
+
fields,
|
|
724
|
+
channels,
|
|
725
|
+
toolCalls: [...toolCalls.values()].sort((a, b) => a.index - b.index),
|
|
726
|
+
finishReasons: [...finishReasons],
|
|
727
|
+
};
|
|
728
|
+
};
|
|
729
|
+
|
|
652
730
|
const extractEvidence = (values: unknown[]): {
|
|
653
731
|
logprobs: TokenLogprob[];
|
|
654
732
|
reasoning: string;
|