@plumbus/core 0.7.8 → 0.7.9
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/CHANGELOG.md +19 -0
- package/README.md +6 -6
- package/dist/.tsbuildinfo +1 -1
- package/dist/ai/ai/model-pricing.d.ts +5 -2
- package/dist/ai/ai/provider.d.ts +28 -1
- package/dist/ai/ai-service.d.ts +6 -1
- package/dist/ai/ai-service.d.ts.map +1 -1
- package/dist/ai/ai-service.js +21 -14
- package/dist/ai/ai-service.js.map +1 -1
- package/dist/ai/index.d.ts +1 -1
- package/dist/ai/index.d.ts.map +1 -1
- package/dist/ai/index.js.map +1 -1
- package/dist/ai/model-pricing.d.ts +5 -2
- package/dist/ai/model-pricing.d.ts.map +1 -1
- package/dist/ai/model-pricing.js +68 -12
- package/dist/ai/model-pricing.js.map +1 -1
- package/dist/ai/provider.d.ts +28 -1
- package/dist/ai/provider.d.ts.map +1 -1
- package/dist/ai/provider.js +186 -29
- package/dist/ai/provider.js.map +1 -1
- package/dist/ai/tool-loop.d.ts +3 -1
- package/dist/ai/tool-loop.d.ts.map +1 -1
- package/dist/ai/tool-loop.js +2 -0
- package/dist/ai/tool-loop.js.map +1 -1
- package/dist/ai/types/config.d.ts +11 -0
- package/dist/ai/validation.d.ts +7 -3
- package/dist/ai/validation.d.ts.map +1 -1
- package/dist/ai/validation.js +13 -10
- package/dist/ai/validation.js.map +1 -1
- package/dist/api/route-generator.d.ts +2 -12
- package/dist/api/route-generator.d.ts.map +1 -1
- package/dist/api/route-generator.js +14 -18
- package/dist/api/route-generator.js.map +1 -1
- package/dist/cli/commands/e2e.d.ts +12 -0
- package/dist/cli/commands/e2e.d.ts.map +1 -1
- package/dist/cli/commands/e2e.js +11 -0
- package/dist/cli/commands/e2e.js.map +1 -1
- package/dist/cli/commands/init.d.ts +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +3 -3
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +25 -0
- package/dist/config/loader.js.map +1 -1
- package/dist/execution/capability-error-hook.d.ts +24 -0
- package/dist/execution/capability-error-hook.d.ts.map +1 -0
- package/dist/execution/capability-error-hook.js +17 -0
- package/dist/execution/capability-error-hook.js.map +1 -0
- package/dist/execution/index.d.ts +1 -0
- package/dist/execution/index.d.ts.map +1 -1
- package/dist/execution/index.js.map +1 -1
- package/dist/flows/step-executor.d.ts +8 -0
- package/dist/flows/step-executor.d.ts.map +1 -1
- package/dist/flows/step-executor.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/runtime/bootstrap.d.ts.map +1 -1
- package/dist/runtime/bootstrap.js +7 -1
- package/dist/runtime/bootstrap.js.map +1 -1
- package/dist/runtime/register-consumers.d.ts +3 -0
- package/dist/runtime/register-consumers.d.ts.map +1 -1
- package/dist/runtime/register-consumers.js +27 -6
- package/dist/runtime/register-consumers.js.map +1 -1
- package/dist/runtime/start-worker-pool.d.ts.map +1 -1
- package/dist/runtime/start-worker-pool.js +1 -0
- package/dist/runtime/start-worker-pool.js.map +1 -1
- package/dist/server/bootstrap.d.ts +5 -12
- package/dist/server/bootstrap.d.ts.map +1 -1
- package/dist/server/bootstrap.js +2 -0
- package/dist/server/bootstrap.js.map +1 -1
- package/dist/types/config.d.ts +11 -0
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/context.d.ts +17 -2
- package/dist/types/context.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/worker/bootstrap.d.ts +9 -0
- package/dist/worker/bootstrap.d.ts.map +1 -1
- package/dist/worker/bootstrap.js +33 -1
- package/dist/worker/bootstrap.js.map +1 -1
- package/instructions/README.md +3 -1
- package/instructions/ai-classification.md +22 -5
- package/instructions/ai.md +34 -11
- package/instructions/framework.md +5 -3
- package/instructions/peer-dependencies.md +1 -1
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-pricing.js","sourceRoot":"","sources":["../../src/ai/model-pricing.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"model-pricing.js","sourceRoot":"","sources":["../../src/ai/model-pricing.ts"],"names":[],"mappings":"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"}
|
package/dist/ai/provider.d.ts
CHANGED
|
@@ -71,6 +71,26 @@ export type ChatMessage = {
|
|
|
71
71
|
toolCallId: string;
|
|
72
72
|
name: string;
|
|
73
73
|
};
|
|
74
|
+
/**
|
|
75
|
+
* Per-section prompt-cache controls for providers that require explicit cache
|
|
76
|
+
* marks (Anthropic `cache_control`, Bedrock Converse `cachePoint`).
|
|
77
|
+
*
|
|
78
|
+
* Omitted fields are treated as `false`. Prefer `cache: true` for the common
|
|
79
|
+
* case (system + tools).
|
|
80
|
+
*/
|
|
81
|
+
export interface AICacheConfig {
|
|
82
|
+
/** Cache the system prompt / instructions. */
|
|
83
|
+
system?: boolean;
|
|
84
|
+
/** Cache tool definitions (mark on the last tool). */
|
|
85
|
+
tools?: boolean;
|
|
86
|
+
/** Cache conversation history (mark on the last message). */
|
|
87
|
+
messages?: boolean;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Prompt-caching option. `true` enables system + tools (not messages).
|
|
91
|
+
* OpenAI ignores this — it caches long prompts automatically.
|
|
92
|
+
*/
|
|
93
|
+
export type AIPromptCacheOption = boolean | AICacheConfig;
|
|
74
94
|
export interface ProviderRequest {
|
|
75
95
|
/** System prompt / instructions */
|
|
76
96
|
system?: string;
|
|
@@ -128,6 +148,13 @@ export interface ProviderRequest {
|
|
|
128
148
|
toolChoice?: AIToolChoice;
|
|
129
149
|
/** Tool-execution options (e.g. disable parallel tool calls). */
|
|
130
150
|
toolExecution?: AIToolExecutionOptions;
|
|
151
|
+
/**
|
|
152
|
+
* Explicit prompt caching for Anthropic / Bedrock. OpenAI ignores this
|
|
153
|
+
* (automatic caching). `true` caches system + tools; pass an object for
|
|
154
|
+
* per-section control. Shorter prompts may not meet provider minima — the
|
|
155
|
+
* request still succeeds without a cache write.
|
|
156
|
+
*/
|
|
157
|
+
cache?: AIPromptCacheOption;
|
|
131
158
|
}
|
|
132
159
|
/** Compose a request's optional user signal with a timeout, returning a single AbortSignal. */
|
|
133
160
|
export declare function combineRequestSignals(userSignal: AbortSignal | undefined, timeoutMs: number): AbortSignal;
|
|
@@ -153,7 +180,7 @@ export interface TokenUsage {
|
|
|
153
180
|
totalTokens: number;
|
|
154
181
|
/** Tokens served from provider cache (charged at reduced rate). */
|
|
155
182
|
cachedInputTokens?: number;
|
|
156
|
-
/** Tokens written to provider cache (charged at elevated rate
|
|
183
|
+
/** Tokens written to provider cache (charged at an elevated input rate). */
|
|
157
184
|
cacheWriteTokens?: number;
|
|
158
185
|
}
|
|
159
186
|
export interface ProviderStreamEvent {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/ai/provider.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/ai/provider.ts"],"names":[],"mappings":"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"}
|
package/dist/ai/provider.js
CHANGED
|
@@ -3,6 +3,73 @@
|
|
|
3
3
|
import { createRequire } from 'node:module';
|
|
4
4
|
import { allKnownModels, estimateModelCost as calculateModelCost, } from './model-pricing.js';
|
|
5
5
|
import { AIIncompleteOutputError, AIInvalidRequestError, AIRefusalError } from './refusal.js';
|
|
6
|
+
/**
|
|
7
|
+
* Resolve a `cache` option into per-section flags.
|
|
8
|
+
* `true` → `{ system: true, tools: true, messages: false }`.
|
|
9
|
+
* `false` / `undefined` / no section enabled → `undefined` (no provider marks).
|
|
10
|
+
*/
|
|
11
|
+
function resolvePromptCache(cache) {
|
|
12
|
+
if (cache === undefined || cache === false)
|
|
13
|
+
return undefined;
|
|
14
|
+
if (cache === true)
|
|
15
|
+
return { system: true, tools: true, messages: false };
|
|
16
|
+
const resolved = {
|
|
17
|
+
system: cache.system === true,
|
|
18
|
+
tools: cache.tools === true,
|
|
19
|
+
messages: cache.messages === true,
|
|
20
|
+
};
|
|
21
|
+
if (!resolved.system && !resolved.tools && !resolved.messages)
|
|
22
|
+
return undefined;
|
|
23
|
+
return resolved;
|
|
24
|
+
}
|
|
25
|
+
const ANTHROPIC_CACHE_CONTROL = Object.freeze({ type: 'ephemeral' });
|
|
26
|
+
/** Attach Anthropic `cache_control` to the last content block of a message. */
|
|
27
|
+
function withAnthropicMessageCacheControl(message) {
|
|
28
|
+
const content = message.content;
|
|
29
|
+
if (typeof content === 'string') {
|
|
30
|
+
return {
|
|
31
|
+
...message,
|
|
32
|
+
content: [{ type: 'text', text: content, cache_control: { ...ANTHROPIC_CACHE_CONTROL } }],
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
if (!Array.isArray(content) || content.length === 0)
|
|
36
|
+
return message;
|
|
37
|
+
const blocks = content.map((block, index) => {
|
|
38
|
+
if (index !== content.length - 1 || block == null || typeof block !== 'object') {
|
|
39
|
+
return block;
|
|
40
|
+
}
|
|
41
|
+
return { ...block, cache_control: { ...ANTHROPIC_CACHE_CONTROL } };
|
|
42
|
+
});
|
|
43
|
+
return { ...message, content: blocks };
|
|
44
|
+
}
|
|
45
|
+
/** Apply Anthropic cache marks to a Messages API request body in place. */
|
|
46
|
+
function applyAnthropicPromptCache(body, cache) {
|
|
47
|
+
if (cache.system && typeof body.system === 'string' && body.system.length > 0) {
|
|
48
|
+
body.system = [
|
|
49
|
+
{
|
|
50
|
+
type: 'text',
|
|
51
|
+
text: body.system,
|
|
52
|
+
cache_control: { ...ANTHROPIC_CACHE_CONTROL },
|
|
53
|
+
},
|
|
54
|
+
];
|
|
55
|
+
}
|
|
56
|
+
if (cache.tools && Array.isArray(body.tools) && body.tools.length > 0) {
|
|
57
|
+
const tools = body.tools;
|
|
58
|
+
const lastIndex = tools.length - 1;
|
|
59
|
+
const last = tools[lastIndex];
|
|
60
|
+
if (last) {
|
|
61
|
+
tools[lastIndex] = { ...last, cache_control: { ...ANTHROPIC_CACHE_CONTROL } };
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
if (cache.messages && Array.isArray(body.messages) && body.messages.length > 0) {
|
|
65
|
+
const messages = body.messages;
|
|
66
|
+
const lastIndex = messages.length - 1;
|
|
67
|
+
const last = messages[lastIndex];
|
|
68
|
+
if (last) {
|
|
69
|
+
messages[lastIndex] = withAnthropicMessageCacheControl(last);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
6
73
|
/** Compose a request's optional user signal with a timeout, returning a single AbortSignal. */
|
|
7
74
|
export function combineRequestSignals(userSignal, timeoutMs) {
|
|
8
75
|
const timeoutSignal = AbortSignal.timeout(timeoutMs);
|
|
@@ -157,14 +224,25 @@ function buildEmptyOpenAIStructuredContentError(args) {
|
|
|
157
224
|
`hasRefusal=${args.choice.message.refusal ? 'true' : 'false'} ` +
|
|
158
225
|
`toolCalls=${toolCallSummary}`);
|
|
159
226
|
}
|
|
160
|
-
function openAIUsageToTokenUsage(usage) {
|
|
227
|
+
function openAIUsageToTokenUsage(usage, model) {
|
|
161
228
|
return {
|
|
162
229
|
inputTokens: usage.prompt_tokens,
|
|
163
230
|
outputTokens: usage.completion_tokens,
|
|
164
231
|
totalTokens: usage.total_tokens,
|
|
165
232
|
cachedInputTokens: usage.prompt_tokens_details?.cached_tokens ?? 0,
|
|
233
|
+
...openAICacheWriteUsage(model, usage.prompt_tokens_details?.cache_write_tokens),
|
|
166
234
|
};
|
|
167
235
|
}
|
|
236
|
+
/**
|
|
237
|
+
* OpenAI reports cache writes inside input tokens. GPT-5.6 and later bill them at
|
|
238
|
+
* 1.25x input, as the catalog does; earlier models have no write charge, so their
|
|
239
|
+
* writes stay ordinary input.
|
|
240
|
+
*/
|
|
241
|
+
function openAICacheWriteUsage(model, cacheWriteTokens) {
|
|
242
|
+
if (!cacheWriteTokens || !(isGpt56Family(model) || isGpt6Family(model)))
|
|
243
|
+
return {};
|
|
244
|
+
return { cacheWriteTokens };
|
|
245
|
+
}
|
|
168
246
|
function shouldUseOpenAIMaxCompletionTokens(model) {
|
|
169
247
|
const normalizedModel = model.trim().toLowerCase();
|
|
170
248
|
return (/^(?:o\d|o\d-|o\d\.)/.test(normalizedModel) ||
|
|
@@ -211,8 +289,28 @@ function unsupportedReasoning(provider, reasoning) {
|
|
|
211
289
|
message: `AI provider "${provider}" cannot represent reasoning mode "${reasoning.mode}"`,
|
|
212
290
|
});
|
|
213
291
|
}
|
|
292
|
+
/**
|
|
293
|
+
* GPT-6 models accept no `minimal` effort, and GPT-6 Astra and GPT-6.1 Sol also
|
|
294
|
+
* reject `none`, so disabled reasoning cannot be represented for them.
|
|
295
|
+
*/
|
|
296
|
+
function assertOpenAIReasoningSupported(model, reasoning) {
|
|
297
|
+
if (!isGpt6Family(model))
|
|
298
|
+
return;
|
|
299
|
+
if (reasoning.mode === 'effort' && reasoning.effort === 'minimal') {
|
|
300
|
+
throw new AIInvalidRequestError({
|
|
301
|
+
reason: 'reasoning_effort_unsupported',
|
|
302
|
+
message: `OpenAI model "${model}" does not support reasoning effort "minimal"; use "low"`,
|
|
303
|
+
});
|
|
304
|
+
}
|
|
305
|
+
if (reasoning.mode === 'disabled' && isGpt6WithoutNoneEffort(model)) {
|
|
306
|
+
throw new AIInvalidRequestError({
|
|
307
|
+
reason: 'reasoning_disabled_unsupported',
|
|
308
|
+
message: `OpenAI model "${model}" cannot disable reasoning; its lowest effort is "low"`,
|
|
309
|
+
});
|
|
310
|
+
}
|
|
311
|
+
}
|
|
214
312
|
/** Translate provider-neutral reasoning onto OpenAI's top-level `reasoning_effort`. */
|
|
215
|
-
function applyOpenAIReasoning(body, request) {
|
|
313
|
+
function applyOpenAIReasoning(body, request, model) {
|
|
216
314
|
const reasoning = normalizeProviderRequestReasoning(request);
|
|
217
315
|
if (!reasoning) {
|
|
218
316
|
if (request.reasoningEffort)
|
|
@@ -221,11 +319,70 @@ function applyOpenAIReasoning(body, request) {
|
|
|
221
319
|
}
|
|
222
320
|
if (reasoning.mode === 'budget')
|
|
223
321
|
unsupportedReasoning('openai', reasoning);
|
|
322
|
+
assertOpenAIReasoningSupported(model, reasoning);
|
|
224
323
|
body.reasoning_effort = reasoning.mode === 'disabled' ? 'none' : reasoning.effort;
|
|
225
324
|
}
|
|
325
|
+
/**
|
|
326
|
+
* Claude models that return HTTP 400 for any non-default `temperature`, `top_p` or
|
|
327
|
+
* `top_k` on every request, thinking on or off. `disabled` is the `thinking` type sent
|
|
328
|
+
* for `{ mode: 'disabled' }` (Sonnet 5.5 takes `between_tools` instead); a model
|
|
329
|
+
* without it cannot turn thinking off. Opus 5, Sonnet 5.5 and Haiku 5.5 accept that
|
|
330
|
+
* type only at effort `high` or below; a disabled request sends no effort, and their
|
|
331
|
+
* defaults are `high` (`medium` on Haiku 5.5). Of these models only Mythos Preview
|
|
332
|
+
* accepts `thinking: { type: 'enabled', budget_tokens }`.
|
|
333
|
+
* Sources: https://platform.claude.com/docs/en/build-with-claude/thinking#sampling-parameters
|
|
334
|
+
* and https://platform.claude.com/docs/en/build-with-claude/thinking-troubleshooting
|
|
335
|
+
*/
|
|
336
|
+
const FIXED_SAMPLING_CLAUDE_MODELS = {
|
|
337
|
+
'fable-5-1': {},
|
|
338
|
+
'mythos-5-1': {},
|
|
339
|
+
'fable-5': {},
|
|
340
|
+
'mythos-5': {},
|
|
341
|
+
'mythos-preview': { budget: true },
|
|
342
|
+
'opus-5-5': {},
|
|
343
|
+
'opus-5': { disabled: 'disabled' },
|
|
344
|
+
'opus-4-8': { disabled: 'disabled' },
|
|
345
|
+
'opus-4-7': { disabled: 'disabled' },
|
|
346
|
+
'sonnet-5-5': { disabled: 'between_tools' },
|
|
347
|
+
'sonnet-5': { disabled: 'disabled' },
|
|
348
|
+
'haiku-5-5': { disabled: 'disabled' },
|
|
349
|
+
};
|
|
350
|
+
/** Looks up a fixed-sampling Claude model, including dated and platform-prefixed ids. */
|
|
351
|
+
function fixedSamplingClaudeModel(model) {
|
|
352
|
+
if (typeof model !== 'string')
|
|
353
|
+
return undefined;
|
|
354
|
+
const normalizedModel = model.trim().toLowerCase();
|
|
355
|
+
const id = /(?:^|[./])claude-([a-z]+-(?:\d+(?:-\d{1,2})?|preview))(?=$|[-@:])/.exec(normalizedModel)?.[1];
|
|
356
|
+
return id && Object.hasOwn(FIXED_SAMPLING_CLAUDE_MODELS, id)
|
|
357
|
+
? FIXED_SAMPLING_CLAUDE_MODELS[id]
|
|
358
|
+
: undefined;
|
|
359
|
+
}
|
|
226
360
|
/** Translate provider-neutral reasoning onto Anthropic Messages API fields. */
|
|
227
361
|
function applyAnthropicReasoning(body, request) {
|
|
228
362
|
const reasoning = normalizeProviderRequestReasoning(request);
|
|
363
|
+
const fixedSampling = fixedSamplingClaudeModel(body.model);
|
|
364
|
+
// These models accept only the API default, so any temperature (Plumbus's 0.7
|
|
365
|
+
// default or a prompt's own) is left out, as for OpenAI gpt-5.5+.
|
|
366
|
+
const temperature = fixedSampling ? undefined : request.temperature;
|
|
367
|
+
if (fixedSampling) {
|
|
368
|
+
delete body.temperature;
|
|
369
|
+
if (reasoning?.mode === 'budget' && !fixedSampling.budget) {
|
|
370
|
+
throw new AIInvalidRequestError({
|
|
371
|
+
reason: 'reasoning_budget_unsupported',
|
|
372
|
+
message: `Anthropic model "${body.model}" does not accept a thinking budget; use an effort`,
|
|
373
|
+
});
|
|
374
|
+
}
|
|
375
|
+
if (reasoning?.mode === 'disabled') {
|
|
376
|
+
if (!fixedSampling.disabled) {
|
|
377
|
+
throw new AIInvalidRequestError({
|
|
378
|
+
reason: 'reasoning_disabled_unsupported',
|
|
379
|
+
message: `Anthropic model "${body.model}" cannot turn thinking off; use effort "low"`,
|
|
380
|
+
});
|
|
381
|
+
}
|
|
382
|
+
body.thinking = { type: fixedSampling.disabled };
|
|
383
|
+
return;
|
|
384
|
+
}
|
|
385
|
+
}
|
|
229
386
|
if (!reasoning)
|
|
230
387
|
return;
|
|
231
388
|
if (reasoning.mode === 'disabled') {
|
|
@@ -245,13 +402,13 @@ function applyAnthropicReasoning(body, request) {
|
|
|
245
402
|
message: 'Anthropic reasoning budget must be smaller than maxTokens',
|
|
246
403
|
});
|
|
247
404
|
}
|
|
248
|
-
if (
|
|
405
|
+
if (temperature != null && temperature !== 1) {
|
|
249
406
|
throw new AIInvalidRequestError({
|
|
250
407
|
reason: 'reasoning_temperature_conflict',
|
|
251
408
|
message: 'Anthropic thinking requires temperature 1 or an omitted temperature',
|
|
252
409
|
});
|
|
253
410
|
}
|
|
254
|
-
if (
|
|
411
|
+
if (temperature == null)
|
|
255
412
|
delete body.temperature;
|
|
256
413
|
body.thinking = {
|
|
257
414
|
type: 'enabled',
|
|
@@ -263,13 +420,13 @@ function applyAnthropicReasoning(body, request) {
|
|
|
263
420
|
if (reasoning.effort === 'minimal') {
|
|
264
421
|
unsupportedReasoning('anthropic', reasoning);
|
|
265
422
|
}
|
|
266
|
-
if (
|
|
423
|
+
if (temperature != null && temperature !== 1) {
|
|
267
424
|
throw new AIInvalidRequestError({
|
|
268
425
|
reason: 'reasoning_temperature_conflict',
|
|
269
426
|
message: 'Anthropic adaptive thinking requires temperature 1 or an omitted temperature',
|
|
270
427
|
});
|
|
271
428
|
}
|
|
272
|
-
if (
|
|
429
|
+
if (temperature == null)
|
|
273
430
|
delete body.temperature;
|
|
274
431
|
body.thinking = { type: 'adaptive', display: 'omitted' };
|
|
275
432
|
const outputConfig = body.output_config && typeof body.output_config === 'object'
|
|
@@ -461,6 +618,10 @@ function isGpt56Family(model) {
|
|
|
461
618
|
function isGpt6Family(model) {
|
|
462
619
|
return /^gpt-6(?:$|[-.])/.test(model.trim().toLowerCase());
|
|
463
620
|
}
|
|
621
|
+
/** GPT-6 Astra and GPT-6.1 Sol: lowest reasoning effort is `low`, not `none`. */
|
|
622
|
+
function isGpt6WithoutNoneEffort(model) {
|
|
623
|
+
return /^gpt-6(?:-astra|\.1-sol)(?:$|-)/.test(model.trim().toLowerCase());
|
|
624
|
+
}
|
|
464
625
|
/**
|
|
465
626
|
* Chat Completions cannot combine function tools with active reasoning on
|
|
466
627
|
* GPT-5.6 or GPT-6. Keep every compatible request on the existing transport,
|
|
@@ -525,7 +686,7 @@ function buildOpenAIResponsesToolChoice(toolChoice) {
|
|
|
525
686
|
return toolChoice;
|
|
526
687
|
return { type: 'function', name: toolChoice.function.name };
|
|
527
688
|
}
|
|
528
|
-
function applyOpenAIResponsesReasoning(body, request) {
|
|
689
|
+
function applyOpenAIResponsesReasoning(body, request, model) {
|
|
529
690
|
const reasoning = normalizeProviderRequestReasoning(request);
|
|
530
691
|
if (!reasoning) {
|
|
531
692
|
if (request.reasoningEffort)
|
|
@@ -534,9 +695,10 @@ function applyOpenAIResponsesReasoning(body, request) {
|
|
|
534
695
|
}
|
|
535
696
|
if (reasoning.mode === 'budget')
|
|
536
697
|
unsupportedReasoning('openai', reasoning);
|
|
698
|
+
assertOpenAIReasoningSupported(model, reasoning);
|
|
537
699
|
body.reasoning = { effort: reasoning.mode === 'disabled' ? 'none' : reasoning.effort };
|
|
538
700
|
}
|
|
539
|
-
function openAIResponsesUsageToTokenUsage(usage) {
|
|
701
|
+
function openAIResponsesUsageToTokenUsage(usage, model) {
|
|
540
702
|
const inputTokens = usage?.input_tokens ?? 0;
|
|
541
703
|
const outputTokens = usage?.output_tokens ?? 0;
|
|
542
704
|
return {
|
|
@@ -544,6 +706,7 @@ function openAIResponsesUsageToTokenUsage(usage) {
|
|
|
544
706
|
outputTokens,
|
|
545
707
|
totalTokens: usage?.total_tokens ?? inputTokens + outputTokens,
|
|
546
708
|
cachedInputTokens: usage?.input_tokens_details?.cached_tokens ?? 0,
|
|
709
|
+
...openAICacheWriteUsage(model, usage?.input_tokens_details?.cache_write_tokens),
|
|
547
710
|
};
|
|
548
711
|
}
|
|
549
712
|
function extractOpenAIResponsesContent(output) {
|
|
@@ -587,7 +750,7 @@ async function completeOpenAIResponses(args) {
|
|
|
587
750
|
if (request.system)
|
|
588
751
|
body.instructions = request.system;
|
|
589
752
|
applyOpenAITemperature(body, model, request);
|
|
590
|
-
applyOpenAIResponsesReasoning(body, request);
|
|
753
|
+
applyOpenAIResponsesReasoning(body, request, model);
|
|
591
754
|
if (request.maxTokens)
|
|
592
755
|
body.max_output_tokens = request.maxTokens;
|
|
593
756
|
if (request.responseFormat === 'json') {
|
|
@@ -624,7 +787,7 @@ async function completeOpenAIResponses(args) {
|
|
|
624
787
|
}),
|
|
625
788
|
});
|
|
626
789
|
const data = (await response.json());
|
|
627
|
-
const usage = openAIResponsesUsageToTokenUsage(data.usage);
|
|
790
|
+
const usage = openAIResponsesUsageToTokenUsage(data.usage, model);
|
|
628
791
|
const output = data.output ?? [];
|
|
629
792
|
const extracted = extractOpenAIResponsesContent(output);
|
|
630
793
|
const content = extracted.content || data.output_text || '';
|
|
@@ -768,7 +931,7 @@ export function createOpenAIAdapter(config) {
|
|
|
768
931
|
messages,
|
|
769
932
|
};
|
|
770
933
|
applyOpenAITemperature(body, model, request);
|
|
771
|
-
applyOpenAIReasoning(body, request);
|
|
934
|
+
applyOpenAIReasoning(body, request, model);
|
|
772
935
|
applyOpenAITokenLimit(body, model, request.maxTokens);
|
|
773
936
|
if (request.tools && request.tools.length > 0) {
|
|
774
937
|
assertNoStructuredOutputToolConflict(request);
|
|
@@ -825,7 +988,7 @@ export function createOpenAIAdapter(config) {
|
|
|
825
988
|
const choice = data.choices[0];
|
|
826
989
|
if (!choice)
|
|
827
990
|
throw new Error('OpenAI returned no choices');
|
|
828
|
-
const usage = openAIUsageToTokenUsage(data.usage);
|
|
991
|
+
const usage = openAIUsageToTokenUsage(data.usage, model);
|
|
829
992
|
const content = extractOpenAIMessageContent(choice.message);
|
|
830
993
|
if (choice.message.refusal) {
|
|
831
994
|
throw new AIRefusalError({
|
|
@@ -891,7 +1054,7 @@ export function createOpenAIAdapter(config) {
|
|
|
891
1054
|
stream_options: { include_usage: true },
|
|
892
1055
|
};
|
|
893
1056
|
applyOpenAITemperature(body, model, request);
|
|
894
|
-
applyOpenAIReasoning(body, request);
|
|
1057
|
+
applyOpenAIReasoning(body, request, model);
|
|
895
1058
|
applyOpenAITokenLimit(body, model, request.maxTokens);
|
|
896
1059
|
const responseFormat = buildOpenAIResponseFormat(request);
|
|
897
1060
|
if (responseFormat) {
|
|
@@ -923,7 +1086,7 @@ export function createOpenAIAdapter(config) {
|
|
|
923
1086
|
};
|
|
924
1087
|
return;
|
|
925
1088
|
}
|
|
926
|
-
yield* parseSSEStream(resp, parseOpenAISSEChunk);
|
|
1089
|
+
yield* parseSSEStream(resp, (eventType, data) => parseOpenAISSEChunk(eventType, data, model));
|
|
927
1090
|
},
|
|
928
1091
|
async embed(request) {
|
|
929
1092
|
const body = {
|
|
@@ -1037,6 +1200,9 @@ export function createAnthropicAdapter(config) {
|
|
|
1037
1200
|
if (callerToolChoice !== undefined)
|
|
1038
1201
|
body.tool_choice = callerToolChoice;
|
|
1039
1202
|
}
|
|
1203
|
+
const promptCache = resolvePromptCache(request.cache);
|
|
1204
|
+
if (promptCache)
|
|
1205
|
+
applyAnthropicPromptCache(body, promptCache);
|
|
1040
1206
|
const resp = await executeRequestWithRetry({
|
|
1041
1207
|
providerName: 'anthropic',
|
|
1042
1208
|
errorLabel: 'Anthropic API',
|
|
@@ -1099,11 +1265,7 @@ export function createAnthropicAdapter(config) {
|
|
|
1099
1265
|
};
|
|
1100
1266
|
},
|
|
1101
1267
|
async *stream(request) {
|
|
1102
|
-
|
|
1103
|
-
// Single-turn path: synthesize a single user message from `prompt`.
|
|
1104
|
-
const messages = request.messages && request.messages.length > 0
|
|
1105
|
-
? request.messages.map((m) => ({ role: m.role, content: m.content }))
|
|
1106
|
-
: [{ role: 'user', content: request.prompt }];
|
|
1268
|
+
const messages = toAnthropicMessages(request);
|
|
1107
1269
|
const body = {
|
|
1108
1270
|
model: request.model ?? defaultModel,
|
|
1109
1271
|
messages,
|
|
@@ -1122,6 +1284,9 @@ export function createAnthropicAdapter(config) {
|
|
|
1122
1284
|
};
|
|
1123
1285
|
}
|
|
1124
1286
|
applyAnthropicReasoning(body, request);
|
|
1287
|
+
const promptCache = resolvePromptCache(request.cache);
|
|
1288
|
+
if (promptCache)
|
|
1289
|
+
applyAnthropicPromptCache(body, promptCache);
|
|
1125
1290
|
let resp;
|
|
1126
1291
|
try {
|
|
1127
1292
|
resp = await executeRequestWithRetry({
|
|
@@ -1267,21 +1432,13 @@ async function* parseSSEStream(resp, parseChunk) {
|
|
|
1267
1432
|
reader.releaseLock();
|
|
1268
1433
|
}
|
|
1269
1434
|
}
|
|
1270
|
-
function parseOpenAISSEChunk(_eventType, data) {
|
|
1435
|
+
function parseOpenAISSEChunk(_eventType, data, model) {
|
|
1271
1436
|
try {
|
|
1272
1437
|
const parsed = JSON.parse(data);
|
|
1273
1438
|
// Usage-only chunk (sent when stream_options.include_usage is true)
|
|
1274
1439
|
if (parsed.usage &&
|
|
1275
1440
|
(!parsed.choices || parsed.choices.length === 0 || !parsed.choices[0]?.delta?.content)) {
|
|
1276
|
-
return {
|
|
1277
|
-
type: 'usage',
|
|
1278
|
-
usage: {
|
|
1279
|
-
inputTokens: parsed.usage.prompt_tokens,
|
|
1280
|
-
outputTokens: parsed.usage.completion_tokens,
|
|
1281
|
-
totalTokens: parsed.usage.total_tokens,
|
|
1282
|
-
cachedInputTokens: parsed.usage.prompt_tokens_details?.cached_tokens ?? 0,
|
|
1283
|
-
},
|
|
1284
|
-
};
|
|
1441
|
+
return { type: 'usage', usage: openAIUsageToTokenUsage(parsed.usage, model) };
|
|
1285
1442
|
}
|
|
1286
1443
|
const choice = parsed.choices?.[0];
|
|
1287
1444
|
if (!choice)
|