@openclaw/ai 2026.7.2-beta.7 → 2026.7.34
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 +5 -6
- package/dist/{anthropic-CH4UUnZr.mjs → anthropic-Bcdbq-l5.mjs} +467 -100
- package/dist/{api-registry-DlMgPR39.d.mts → api-registry-BXYnCOIR.d.mts} +2 -1
- package/dist/{azure-openai-responses-CImcwB83.mjs → azure-openai-responses-2xhpNPWg.mjs} +13 -11
- package/dist/{azure-openai-responses-client-compat-C7K7QfUE.mjs → azure-openai-responses-client-compat-a_O_GVQV.mjs} +2 -23
- package/dist/{env-api-keys-DrgeBuva.mjs → env-api-keys-CtMlqaQ4.mjs} +4 -5
- package/dist/{event-stream-YjaPW20U.d.mts → event-stream-0nZeBKl2.d.mts} +1 -1
- package/dist/{event-stream-D8n2uFee.mjs → event-stream-ReMmOTzX.mjs} +6 -14
- package/dist/event-stream.d.mts +1 -1
- package/dist/event-stream.mjs +1 -1
- package/dist/{github-copilot-headers-NCJtz9i0.mjs → github-copilot-headers-BsH5cqGj.mjs} +12 -1
- package/dist/{google-CtSg0iTS.mjs → google-C6P31moq.mjs} +5 -5
- package/dist/{google-shared-DNBz5rcD.mjs → google-shared-BeyXFAcf.mjs} +26 -34
- package/dist/{google-vertex-31f1uS9L.mjs → google-vertex--9_gT74B.mjs} +19 -6
- package/dist/host-4t713IeR.mjs +37 -0
- package/dist/{anthropic-SrGtwsJu.d.mts → index-CGDEoorl.d.mts} +2 -6
- package/dist/index.d.mts +50 -7
- package/dist/index.mjs +5 -5
- package/dist/internal/anthropic.d.mts +61 -21
- package/dist/internal/anthropic.mjs +4 -5
- package/dist/internal/openai.d.mts +89 -98
- package/dist/internal/openai.mjs +6 -8
- package/dist/internal/runtime.d.mts +34 -13
- package/dist/internal/runtime.mjs +14 -26
- package/dist/internal/shared.d.mts +9 -26
- package/dist/internal/shared.mjs +2 -6
- package/dist/{json-parse-BvXNt1-7.mjs → json-parse-DzNSIQBq.mjs} +6 -4
- package/dist/{llm-request-activity-BjtkplhG.mjs → llm-request-activity-CehVkZP-.mjs} +19 -1
- package/dist/{mistral-CWmpvWYh.mjs → mistral-CBm3OQWD.mjs} +39 -141
- package/dist/model-utils-Cn9KAz3z.mjs +69 -0
- package/dist/{openai-chatgpt-responses-B84Ibtrd.mjs → openai-chatgpt-responses-M2RVpycr.mjs} +154 -101
- package/dist/{openai-completions-DsOxhOD1.mjs → openai-completions-BUlMEeBc.mjs} +295 -81
- package/dist/{openai-responses-BT7A3sLu.mjs → openai-responses-DW61C22l.mjs} +9 -14
- package/dist/openai-responses-shared-BhYsVkwW.mjs +1949 -0
- package/dist/{openai-tool-projection-OhX64DoP.mjs → openai-tool-projection-g4HuxD26.mjs} +20 -31
- package/dist/providers.d.mts +2 -3
- package/dist/providers.mjs +10 -11
- package/dist/reasoning-tag-text-partitioner-axhAdUwg.mjs +394 -0
- package/dist/{src-QkygScBs.mjs → src-CjOfhrH3.mjs} +6 -17
- package/dist/{stream-first-event-timeout-BBys9hSb.mjs → stream-first-event-timeout-RjWszj8c.mjs} +22 -2
- package/dist/transform-messages-DoWx35pj.mjs +509 -0
- package/dist/{types-bzp5k29J.d.mts → types-DRgdPqaZ.d.mts} +0 -19
- package/dist/types.d.mts +5 -5
- package/dist/types.mjs +4 -4
- package/dist/{validation-B-j7cOYp.d.mts → validation-BDMWOr8d.d.mts} +1 -1
- package/dist/{validation-DAa_yFOM.mjs → validation-FrchoOlv.mjs} +7 -2
- package/dist/validation.d.mts +1 -1
- package/dist/validation.mjs +1 -1
- package/npm-shrinkwrap.json +645 -0
- package/package.json +11 -36
- package/dist/anthropic-usage-DWU-x8MI.mjs +0 -459
- package/dist/cache-retention-0x979a5V.mjs +0 -12
- package/dist/deferred-event-buffer-DAvyP7qA.mjs +0 -19
- package/dist/error-coercion-DgxlWC0n.mjs +0 -15
- package/dist/host-B9GUmcra.d.mts +0 -173
- package/dist/host-Dog2WQiR.mjs +0 -369
- package/dist/index-BVVgDSdq.d.mts +0 -1
- package/dist/internal/retry-after.d.mts +0 -5
- package/dist/internal/retry-after.mjs +0 -101
- package/dist/number-coercion-DvG7SNMg.mjs +0 -129
- package/dist/openai-completions-compat-DBWjXoMZ.d.mts +0 -43
- package/dist/openai-prompt-cache-2uo_1OR1.d.mts +0 -7
- package/dist/openai-prompt-cache-mZTCdRPo.mjs +0 -12
- package/dist/openai-reasoning-compat-YgeLncHw.mjs +0 -396
- package/dist/openai-responses-shared-pXl6Wd8S.mjs +0 -392
- package/dist/openai-responses-stream-internal-Cw5txaGW.mjs +0 -2964
- package/dist/prompt-cache-stability-Cwcjv_fx.d.mts +0 -13
- package/dist/provider-error-CAEvRjry.mjs +0 -47
- package/dist/provider-options-D8bB3z9b.d.mts +0 -144
- package/dist/reasoning-tag-text-partitioner-CGDyLWUR.mjs +0 -12209
- package/dist/simple-options-9lhRrN73.mjs +0 -50
- package/dist/stream-first-event-timeout-DvDeSucC.d.mts +0 -29
- package/dist/tls-certificate-errors-DXSpluKI.mjs +0 -93
- package/dist/tool-result-text-CTpIRbYd.mjs +0 -225
- package/dist/transform-messages-C8mBqZxF.mjs +0 -2
- package/dist/transport-stream-shared-D81p90xq.mjs +0 -297
- package/dist/transports.d.mts +0 -573
- package/dist/transports.mjs +0 -4110
|
@@ -1,8 +1,58 @@
|
|
|
1
|
-
import { a as requiresClaudeMandatoryAdaptiveThinking, c as resolveClaudeMythos5ModelIdentity, d as resolveClaudeSonnet5ModelIdentity,
|
|
1
|
+
import { a as requiresClaudeMandatoryAdaptiveThinking, c as resolveClaudeMythos5ModelIdentity, d as resolveClaudeSonnet5ModelIdentity, f as supportsClaudeAdaptiveThinking, i as requiresClaudeDefaultSampling, l as resolveClaudeNativeThinkingLevelMap, m as supportsClaudeNativeXhighEffort, o as resolveClaudeFable5ModelIdentity, p as supportsClaudeNativeMaxEffort, s as resolveClaudeModelIdentity, u as resolveClaudeOpus5ModelIdentity } from "../index-CGDEoorl.mjs";
|
|
2
2
|
import { t as AssistantMessageDiagnostic } from "../diagnostics-BaTA9eVl.mjs";
|
|
3
|
-
import { E as Model, F as SimpleStreamOptions, R as StreamFunction, u as Context } from "../types-
|
|
4
|
-
import
|
|
3
|
+
import { E as Model, F as SimpleStreamOptions, R as StreamFunction, u as Context, z as StreamOptions } from "../types-DRgdPqaZ.mjs";
|
|
4
|
+
import Anthropic from "@anthropic-ai/sdk";
|
|
5
|
+
|
|
5
6
|
//#region packages/ai/src/providers/anthropic.d.ts
|
|
7
|
+
type AnthropicEffort = "low" | "medium" | "high" | "xhigh" | "max";
|
|
8
|
+
type AnthropicThinkingDisplay = "summarized" | "omitted";
|
|
9
|
+
interface AnthropicOptions extends StreamOptions {
|
|
10
|
+
/**
|
|
11
|
+
* Enable extended thinking.
|
|
12
|
+
* For Opus 4.6+ and Sonnet 4.6: uses adaptive thinking (model decides when/how much to think).
|
|
13
|
+
* For older models: uses budget-based thinking with thinkingBudgetTokens.
|
|
14
|
+
*/
|
|
15
|
+
thinkingEnabled?: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Token budget for extended thinking (older models only).
|
|
18
|
+
* Ignored for Opus 4.6+ and Sonnet 4.6, which use adaptive thinking.
|
|
19
|
+
*/
|
|
20
|
+
thinkingBudgetTokens?: number;
|
|
21
|
+
/**
|
|
22
|
+
* Effort level for adaptive thinking (Opus 4.6+ and Sonnet 4.6).
|
|
23
|
+
* Controls how much thinking Claude allocates:
|
|
24
|
+
* - "max": Always thinks with no constraints (Opus 4.6 only)
|
|
25
|
+
* - "xhigh": Highest reasoning level (Opus 4.7+)
|
|
26
|
+
* - "high": Always thinks, deep reasoning (default)
|
|
27
|
+
* - "medium": Moderate thinking, may skip for simple queries
|
|
28
|
+
* - "low": Minimal thinking, skips for simple tasks
|
|
29
|
+
* Ignored for older models.
|
|
30
|
+
*/
|
|
31
|
+
effort?: AnthropicEffort;
|
|
32
|
+
/**
|
|
33
|
+
* Controls how thinking content is returned in API responses.
|
|
34
|
+
* - "summarized": Thinking blocks contain summarized thinking text (default here).
|
|
35
|
+
* - "omitted": Thinking blocks return an empty thinking field; the encrypted
|
|
36
|
+
* signature still travels back for multi-turn continuity. Use for faster
|
|
37
|
+
* time-to-first-text-token when your UI does not surface thinking.
|
|
38
|
+
*
|
|
39
|
+
* Note: Anthropic's API default for Claude Opus 4.7+ and Claude Mythos Preview
|
|
40
|
+
* is "omitted". We default to "summarized" here to keep behavior consistent
|
|
41
|
+
* with older Claude 4 models. Set this explicitly to "omitted" to opt in.
|
|
42
|
+
*/
|
|
43
|
+
thinkingDisplay?: AnthropicThinkingDisplay;
|
|
44
|
+
interleavedThinking?: boolean;
|
|
45
|
+
toolChoice?: "auto" | "any" | "none" | {
|
|
46
|
+
type: "tool";
|
|
47
|
+
name: string;
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* Pre-built Anthropic client instance. When provided, skips internal client
|
|
51
|
+
* construction entirely. Use this to inject alternative SDK clients such as
|
|
52
|
+
* `AnthropicVertex` that shares the same messaging API.
|
|
53
|
+
*/
|
|
54
|
+
client?: Anthropic;
|
|
55
|
+
}
|
|
6
56
|
declare const streamAnthropic: StreamFunction<"anthropic-messages", AnthropicOptions>;
|
|
7
57
|
type AnthropicSimpleStreamOptions = SimpleStreamOptions & {
|
|
8
58
|
toolChoice?: AnthropicOptions["toolChoice"];
|
|
@@ -48,7 +98,7 @@ declare function defaultsClaudeAdaptiveThinking(model: {
|
|
|
48
98
|
params?: Record<string, unknown>;
|
|
49
99
|
api?: string;
|
|
50
100
|
}): boolean;
|
|
51
|
-
/** Remove
|
|
101
|
+
/** Remove Claude 5 assistant prefills while preserving completed tool-use turns. */
|
|
52
102
|
declare function prepareClaudeNoPrefillRequestContext(model: Model, context: Context): Context;
|
|
53
103
|
declare function applyClaudeRequestContract(params: Record<string, unknown>, model: {
|
|
54
104
|
id?: string;
|
|
@@ -70,25 +120,21 @@ declare function applyAnthropicRefusal(output: AnthropicRefusalOutput, stopDetai
|
|
|
70
120
|
//#endregion
|
|
71
121
|
//#region packages/ai/src/providers/anthropic-server-fallback.d.ts
|
|
72
122
|
/** Anthropic beta that re-serves safety refusals on an allowed fallback model. */
|
|
73
|
-
declare const ANTHROPIC_SERVER_SIDE_FALLBACK_BETA = "server-side-fallback-2026-
|
|
74
|
-
|
|
75
|
-
declare const
|
|
76
|
-
declare const CLAUDE_OPUS_FALLBACK_MODEL_COST: {
|
|
123
|
+
declare const ANTHROPIC_SERVER_SIDE_FALLBACK_BETA = "server-side-fallback-2026-06-01";
|
|
124
|
+
declare const CLAUDE_FABLE_5_FALLBACK_MODEL = "claude-opus-4-8";
|
|
125
|
+
declare const CLAUDE_FABLE_5_FALLBACK_MODEL_COST: {
|
|
77
126
|
readonly input: 5;
|
|
78
127
|
readonly output: 25;
|
|
79
128
|
readonly cacheRead: 0.5;
|
|
80
129
|
readonly cacheWrite: 6.25;
|
|
81
130
|
};
|
|
131
|
+
declare function buildAnthropicServerSideFallbacks(): Array<{
|
|
132
|
+
model: string;
|
|
133
|
+
}>;
|
|
82
134
|
type AnthropicFallbackBoundary = {
|
|
83
135
|
fromModel: string | null;
|
|
84
136
|
toModel: string | null;
|
|
85
137
|
};
|
|
86
|
-
/** Resolve billed rates from the serving model reported by Anthropic's fallback stream. */
|
|
87
|
-
declare function resolveAnthropicFallbackServingModelCost(params: {
|
|
88
|
-
requestedModelId: string;
|
|
89
|
-
servingModelId: string | null;
|
|
90
|
-
requestedCost: Model["cost"];
|
|
91
|
-
}): Model["cost"];
|
|
92
138
|
/** Reads a `fallback` content block marking where one model's output gives way to the next. */
|
|
93
139
|
declare function readAnthropicFallbackBoundary(block: unknown): AnthropicFallbackBoundary | null;
|
|
94
140
|
/**
|
|
@@ -162,13 +208,8 @@ type AnthropicUsagePayload = {
|
|
|
162
208
|
output_tokens?: unknown;
|
|
163
209
|
cache_read_input_tokens?: unknown;
|
|
164
210
|
cache_creation_input_tokens?: unknown;
|
|
165
|
-
cache_creation?: unknown;
|
|
166
211
|
iterations?: unknown;
|
|
167
212
|
};
|
|
168
|
-
type AnthropicCacheWriteUsage = {
|
|
169
|
-
cacheWrite5m?: number;
|
|
170
|
-
cacheWrite1h?: number;
|
|
171
|
-
};
|
|
172
213
|
type AnthropicPromptUsageSnapshot = {
|
|
173
214
|
input: number;
|
|
174
215
|
cacheRead: number;
|
|
@@ -187,8 +228,7 @@ type AnthropicIterationUsageResult = {
|
|
|
187
228
|
usage: AnthropicIterationUsageSnapshot;
|
|
188
229
|
};
|
|
189
230
|
declare function readAnthropicUsageTokenCount(value: unknown): number | undefined;
|
|
190
|
-
declare function readAnthropicCacheWriteUsage(usage: AnthropicUsagePayload): AnthropicCacheWriteUsage;
|
|
191
231
|
declare function readAnthropicPromptUsageSnapshot(usage: AnthropicUsagePayload): AnthropicPromptUsageSnapshot | undefined;
|
|
192
232
|
declare function readLastAnthropicIterationUsage(usage: AnthropicUsagePayload): AnthropicIterationUsageResult;
|
|
193
233
|
//#endregion
|
|
194
|
-
export { ANTHROPIC_OMITTED_REASONING_TEXT,
|
|
234
|
+
export { ANTHROPIC_OMITTED_REASONING_TEXT, ANTHROPIC_SERVER_SIDE_FALLBACK_BETA, AnthropicEffort, AnthropicFallbackBoundary, AnthropicIterationUsageResult, AnthropicIterationUsageSnapshot, AnthropicOptions, AnthropicProjectedToolChoice, AnthropicPromptUsageSnapshot, AnthropicThinkingDisplay, AnthropicToolProjection, CLAUDE_FABLE_5_FALLBACK_MODEL, CLAUDE_FABLE_5_FALLBACK_MODEL_COST, applyAnthropicFallbackBoundary, applyAnthropicRefusal, applyClaudeRequestContract, buildAnthropicServerSideFallbacks, defaultsClaudeAdaptiveThinking, findActiveAnthropicToolTurnAssistantIndex, omitFoundryBearerCredentialHeaders, prepareClaudeNoPrefillRequestContext, projectAnthropicTools, readAnthropicFallbackBoundary, readAnthropicPromptUsageSnapshot, readAnthropicUsageTokenCount, readLastAnthropicIterationUsage, reconcileAnthropicToolChoice, requiresClaudeAdaptiveThinking, requiresClaudeDefaultSampling, requiresClaudeMandatoryAdaptiveThinking, resolveClaudeFable5ModelIdentity, resolveClaudeModelIdentity, resolveClaudeMythos5ModelIdentity, resolveClaudeNativeThinkingLevelMap, resolveClaudeOpus5ModelIdentity, resolveClaudeSonnet5ModelIdentity, resolveModelBoundThinkingReplayMode, resolveOriginalAnthropicToolName, streamAnthropic, streamSimpleAnthropic, supportsClaudeAdaptiveThinking, supportsClaudeNativeMaxEffort, supportsClaudeNativeXhighEffort, usesClaudeFable5MessagesContract, usesClaudeStreamingRefusalContract, usesFoundryBearerAuth };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { a as requiresClaudeMandatoryAdaptiveThinking, c as resolveClaudeMythos5ModelIdentity, d as resolveClaudeSonnet5ModelIdentity,
|
|
2
|
-
import {
|
|
3
|
-
import { _ as
|
|
4
|
-
|
|
5
|
-
export { ANTHROPIC_OMITTED_REASONING_TEXT, ANTHROPIC_SERVER_SIDE_FALLBACKS, ANTHROPIC_SERVER_SIDE_FALLBACK_BETA, CLAUDE_OPUS_FALLBACK_MODEL_COST, applyAnthropicFallbackBoundary, applyAnthropicRefusal, applyClaudeRequestContract, defaultsClaudeAdaptiveThinking, findActiveAnthropicToolTurnAssistantIndex, omitFoundryBearerCredentialHeaders, prepareClaudeNoPrefillRequestContext, projectAnthropicTools, readAnthropicCacheWriteUsage, readAnthropicFallbackBoundary, readAnthropicPromptUsageSnapshot, readAnthropicUsageTokenCount, readLastAnthropicIterationUsage, reconcileAnthropicToolChoice, requiresClaudeAdaptiveThinking, requiresClaudeDefaultSampling, requiresClaudeMandatoryAdaptiveThinking, resolveAnthropicFallbackServingModelCost, resolveClaudeFable5ModelIdentity, resolveClaudeModelIdentity, resolveClaudeMythos5ModelIdentity, resolveClaudeNativeThinkingLevelMap, resolveClaudeOpus5ModelIdentity, resolveClaudeSonnet5ModelIdentity, resolveModelBoundThinkingReplayMode, resolveOriginalAnthropicToolName, streamAnthropic, streamSimpleAnthropic, supportsClaudeAdaptiveThinking, supportsClaudeNativeMaxEffort, supportsClaudeNativeXhighEffort, usesClaudeFable5MessagesContract, usesClaudeStreamingRefusalContract, usesFoundryBearerAuth };
|
|
1
|
+
import { a as requiresClaudeMandatoryAdaptiveThinking, c as resolveClaudeMythos5ModelIdentity, d as resolveClaudeSonnet5ModelIdentity, f as supportsClaudeAdaptiveThinking, i as requiresClaudeDefaultSampling, l as resolveClaudeNativeThinkingLevelMap, m as supportsClaudeNativeXhighEffort, o as resolveClaudeFable5ModelIdentity, p as supportsClaudeNativeMaxEffort, s as resolveClaudeModelIdentity, u as resolveClaudeOpus5ModelIdentity } from "../src-CjOfhrH3.mjs";
|
|
2
|
+
import { d as prepareClaudeNoPrefillRequestContext, f as requiresClaudeAdaptiveThinking, h as usesClaudeStreamingRefusalContract, l as applyClaudeRequestContract, m as usesClaudeFable5MessagesContract, p as resolveModelBoundThinkingReplayMode, u as defaultsClaudeAdaptiveThinking } from "../transform-messages-DoWx35pj.mjs";
|
|
3
|
+
import { _ as readAnthropicFallbackBoundary, a as readAnthropicUsageTokenCount, b as usesFoundryBearerAuth, c as reconcileAnthropicToolChoice, d as findActiveAnthropicToolTurnAssistantIndex, f as ANTHROPIC_SERVER_SIDE_FALLBACK_BETA, g as buildAnthropicServerSideFallbacks, h as applyAnthropicFallbackBoundary, i as readAnthropicPromptUsageSnapshot, l as resolveOriginalAnthropicToolName, m as CLAUDE_FABLE_5_FALLBACK_MODEL_COST, n as streamAnthropic, o as readLastAnthropicIterationUsage, p as CLAUDE_FABLE_5_FALLBACK_MODEL, r as streamSimpleAnthropic, s as projectAnthropicTools, u as ANTHROPIC_OMITTED_REASONING_TEXT, v as applyAnthropicRefusal, y as omitFoundryBearerCredentialHeaders } from "../anthropic-Bcdbq-l5.mjs";
|
|
4
|
+
export { ANTHROPIC_OMITTED_REASONING_TEXT, ANTHROPIC_SERVER_SIDE_FALLBACK_BETA, CLAUDE_FABLE_5_FALLBACK_MODEL, CLAUDE_FABLE_5_FALLBACK_MODEL_COST, applyAnthropicFallbackBoundary, applyAnthropicRefusal, applyClaudeRequestContract, buildAnthropicServerSideFallbacks, defaultsClaudeAdaptiveThinking, findActiveAnthropicToolTurnAssistantIndex, omitFoundryBearerCredentialHeaders, prepareClaudeNoPrefillRequestContext, projectAnthropicTools, readAnthropicFallbackBoundary, readAnthropicPromptUsageSnapshot, readAnthropicUsageTokenCount, readLastAnthropicIterationUsage, reconcileAnthropicToolChoice, requiresClaudeAdaptiveThinking, requiresClaudeDefaultSampling, requiresClaudeMandatoryAdaptiveThinking, resolveClaudeFable5ModelIdentity, resolveClaudeModelIdentity, resolveClaudeMythos5ModelIdentity, resolveClaudeNativeThinkingLevelMap, resolveClaudeOpus5ModelIdentity, resolveClaudeSonnet5ModelIdentity, resolveModelBoundThinkingReplayMode, resolveOriginalAnthropicToolName, streamAnthropic, streamSimpleAnthropic, supportsClaudeAdaptiveThinking, supportsClaudeNativeMaxEffort, supportsClaudeNativeXhighEffort, usesClaudeFable5MessagesContract, usesClaudeStreamingRefusalContract, usesFoundryBearerAuth };
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
import { E as Model, F as SimpleStreamOptions, I as StopReason, R as StreamFunction,
|
|
2
|
-
import { _ as resolveOpenAIReasoningEffortForModel, a as OpenAICompletionsOptions, b as supportsOpenAITemperature, c as projectOpenAITools, d as OpenAIApiReasoningEffort, f as OpenAIReasoningEffort, g as normalizeOpenAIReasoningEffort, h as isOpenAIGpt56Model, l as reconcileOpenAICompletionsToolChoice, m as isOpenAIGpt55Model, o as OpenAICompletionsToolChoice, p as isOpenAIGpt54MiniModel, s as OpenAIToolProjection, u as reconcileOpenAIResponsesToolChoice, v as resolveOpenAISupportedReasoningEfforts, y as supportsOpenAIReasoningEffort } from "../provider-options-D8bB3z9b.mjs";
|
|
3
|
-
import { t as ResolvedOpenAICompletionsCompat } from "../openai-completions-compat-DBWjXoMZ.mjs";
|
|
4
|
-
import { n as clampOpenAIPromptCacheKey, t as OPENAI_PROMPT_CACHE_KEY_MAX_LENGTH } from "../openai-prompt-cache-2uo_1OR1.mjs";
|
|
1
|
+
import { E as Model, F as SimpleStreamOptions, I as StopReason, O as OpenAICompletionsCompat, R as StreamFunction, c as CacheRetention, u as Context, z as StreamOptions } from "../types-DRgdPqaZ.mjs";
|
|
5
2
|
import OpenAI from "openai";
|
|
6
3
|
import { TSchema } from "typebox";
|
|
7
|
-
import { ResponseCreateParamsStreaming } from "openai/resources/responses/responses.js";
|
|
8
4
|
import { ChatCompletionMessageParam } from "openai/resources/chat/completions.js";
|
|
5
|
+
import { ResponseCreateParamsStreaming } from "openai/resources/responses/responses.js";
|
|
9
6
|
|
|
10
7
|
//#region packages/ai/src/providers/agent-tools-parameter-schema.d.ts
|
|
11
8
|
/**
|
|
@@ -41,13 +38,7 @@ declare function normalizeToolParameterSchema(schema: unknown, options?: ToolPar
|
|
|
41
38
|
//#region packages/ai/src/providers/azure-deployment-map.d.ts
|
|
42
39
|
/** Parses AZURE_OPENAI_DEPLOYMENT_MAP-style model=deployment entries. */
|
|
43
40
|
declare function parseAzureDeploymentNameMap(value: string | undefined): Map<string, string>;
|
|
44
|
-
/**
|
|
45
|
-
* Resolves the Azure deployment name for a model id, falling back to the model id.
|
|
46
|
-
*
|
|
47
|
-
* An exact-case match always wins, so configs that intentionally distinguish keys by
|
|
48
|
-
* case keep their exact mappings; a case-insensitive match is only used as a fallback
|
|
49
|
-
* (e.g. `GPT-4o` against a `gpt-4o=...` map) to avoid 404s from casing differences.
|
|
50
|
-
*/
|
|
41
|
+
/** Resolves the Azure deployment name for a model id, falling back to the model id. */
|
|
51
42
|
declare function resolveAzureDeploymentNameFromMap(params: {
|
|
52
43
|
modelId: string;
|
|
53
44
|
deploymentMap?: string;
|
|
@@ -61,24 +52,97 @@ declare function isOpenAICompatibleAzureResponsesBaseUrl(baseUrl: string): boole
|
|
|
61
52
|
declare const GEMINI_UNSUPPORTED_SCHEMA_KEYWORDS: Set<string>;
|
|
62
53
|
declare function cleanSchemaForGemini(schema: unknown): TSchema;
|
|
63
54
|
//#endregion
|
|
64
|
-
//#region packages/ai/src/providers/
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
55
|
+
//#region packages/ai/src/providers/openai-tool-projection.d.ts
|
|
56
|
+
type OpenAIToolDescriptor = {
|
|
57
|
+
readonly name?: unknown;
|
|
58
|
+
readonly description?: unknown;
|
|
59
|
+
readonly parameters: unknown;
|
|
60
|
+
};
|
|
61
|
+
type OpenAIProjectedTool = {
|
|
62
|
+
readonly toolIndex: number;
|
|
63
|
+
readonly name: string;
|
|
64
|
+
readonly description?: string;
|
|
65
|
+
readonly parameters: Record<string, unknown>;
|
|
66
|
+
};
|
|
67
|
+
type OpenAIToolProjectionDiagnostic = {
|
|
68
|
+
readonly toolIndex: number;
|
|
69
|
+
readonly toolName?: string;
|
|
70
|
+
readonly violations: readonly string[];
|
|
71
|
+
};
|
|
72
|
+
type OpenAIToolProjection = {
|
|
73
|
+
readonly inputToolCount: number;
|
|
74
|
+
readonly tools: readonly OpenAIProjectedTool[];
|
|
75
|
+
readonly diagnostics: readonly OpenAIToolProjectionDiagnostic[];
|
|
76
|
+
};
|
|
77
|
+
type OpenAIResponsesToolChoice = ResponseCreateParamsStreaming["tool_choice"];
|
|
78
|
+
type OpenAICompletionsSdkToolChoice = OpenAI.Chat.Completions.ChatCompletionCreateParamsStreaming["tool_choice"];
|
|
79
|
+
type OpenAICompletionsToolChoice = Exclude<OpenAICompletionsSdkToolChoice, {
|
|
80
|
+
type: "custom";
|
|
81
|
+
}>;
|
|
82
|
+
/** Snapshots direct/custom tool descriptors before OpenAI payload construction. */
|
|
83
|
+
declare function projectOpenAITools(tools: readonly OpenAIToolDescriptor[]): OpenAIToolProjection;
|
|
84
|
+
/** Keeps Responses tool choices aligned with surviving function schemas. */
|
|
85
|
+
declare function reconcileOpenAIResponsesToolChoice(choice: OpenAIResponsesToolChoice, projection: OpenAIToolProjection): OpenAIResponsesToolChoice | undefined;
|
|
86
|
+
/** Keeps Chat Completions tool choices aligned with surviving function schemas. */
|
|
87
|
+
declare function reconcileOpenAICompletionsToolChoice(choice: OpenAICompletionsSdkToolChoice, projection: OpenAIToolProjection): OpenAICompletionsSdkToolChoice | undefined;
|
|
71
88
|
//#endregion
|
|
72
|
-
//#region packages/ai/src/openai-completions
|
|
73
|
-
|
|
89
|
+
//#region packages/ai/src/providers/openai-completions.d.ts
|
|
90
|
+
interface OpenAICompletionsOptions extends StreamOptions {
|
|
91
|
+
toolChoice?: OpenAICompletionsToolChoice;
|
|
92
|
+
reasoningEffort?: "minimal" | "low" | "medium" | "high" | "xhigh";
|
|
93
|
+
}
|
|
94
|
+
type ResolvedOpenAICompletionsCompat = Omit<Required<OpenAICompletionsCompat>, "cacheControlFormat"> & {
|
|
95
|
+
cacheControlFormat?: OpenAICompletionsCompat["cacheControlFormat"];
|
|
96
|
+
};
|
|
97
|
+
declare const streamOpenAICompletions: StreamFunction<"openai-completions", OpenAICompletionsOptions>;
|
|
98
|
+
declare const streamSimpleOpenAICompletions: StreamFunction<"openai-completions", SimpleStreamOptions>;
|
|
74
99
|
declare function convertMessages(model: Model<"openai-completions">, context: Context, compat: ResolvedOpenAICompletionsCompat, options?: {
|
|
75
100
|
cacheOptOutIndexes?: Set<number>;
|
|
76
101
|
preserveSystemPromptCacheBoundary?: boolean;
|
|
77
102
|
}): ChatCompletionMessageParam[];
|
|
78
103
|
//#endregion
|
|
79
|
-
//#region packages/ai/src/providers/openai-
|
|
80
|
-
|
|
81
|
-
declare
|
|
104
|
+
//#region packages/ai/src/providers/openai-prompt-cache.d.ts
|
|
105
|
+
/** Selects the documented cache lifetime fields for a Responses request. */
|
|
106
|
+
declare function resolveOpenAIResponsesCacheParams(model: Pick<Model, "id" | "api" | "baseUrl">, cacheRetention: CacheRetention, supportsLongCacheRetention: boolean): {
|
|
107
|
+
prompt_cache_retention?: "24h";
|
|
108
|
+
prompt_cache_options?: {
|
|
109
|
+
ttl: "30m";
|
|
110
|
+
};
|
|
111
|
+
};
|
|
112
|
+
/** Maximum prompt cache key length accepted by OpenAI-compatible request metadata. */
|
|
113
|
+
declare const OPENAI_PROMPT_CACHE_KEY_MAX_LENGTH = 64;
|
|
114
|
+
/** Truncates a prompt cache key by Unicode code point count. */
|
|
115
|
+
declare function clampOpenAIPromptCacheKey(key: string | undefined): string | undefined;
|
|
116
|
+
//#endregion
|
|
117
|
+
//#region packages/ai/src/providers/openai-reasoning-effort.d.ts
|
|
118
|
+
type OpenAIReasoningEffort = "none" | "minimal" | "low" | "medium" | "high" | "xhigh" | "max";
|
|
119
|
+
type OpenAIApiReasoningEffort = OpenAIReasoningEffort | (string & {});
|
|
120
|
+
type OpenAIReasoningModel = {
|
|
121
|
+
provider?: unknown;
|
|
122
|
+
id?: unknown;
|
|
123
|
+
name?: unknown;
|
|
124
|
+
api?: unknown;
|
|
125
|
+
baseUrl?: unknown;
|
|
126
|
+
compat?: unknown;
|
|
127
|
+
};
|
|
128
|
+
/** Return whether a model is the GPT-5.4 mini family. */
|
|
129
|
+
declare function isOpenAIGpt54MiniModel(model: OpenAIReasoningModel): boolean;
|
|
130
|
+
/** Return whether a model is the GPT-5.5 family. */
|
|
131
|
+
declare function isOpenAIGpt55Model(model: OpenAIReasoningModel): boolean;
|
|
132
|
+
/** Return whether a model is the GPT-5.6 family. */
|
|
133
|
+
declare function isOpenAIGpt56Model(model: OpenAIReasoningModel): boolean;
|
|
134
|
+
/** Normalize user-facing reasoning effort names to API effort names. */
|
|
135
|
+
declare function normalizeOpenAIReasoningEffort(effort: string): string;
|
|
136
|
+
/** Resolve the reasoning efforts accepted by a specific OpenAI-compatible model. */
|
|
137
|
+
declare function resolveOpenAISupportedReasoningEfforts(model: OpenAIReasoningModel): readonly OpenAIApiReasoningEffort[];
|
|
138
|
+
/** Return whether a model accepts a requested reasoning effort. */
|
|
139
|
+
declare function supportsOpenAIReasoningEffort(model: OpenAIReasoningModel, effort: string): boolean;
|
|
140
|
+
/** Resolve a requested reasoning effort to the closest value supported by the model. */
|
|
141
|
+
declare function resolveOpenAIReasoningEffortForModel(params: {
|
|
142
|
+
model: OpenAIReasoningModel;
|
|
143
|
+
effort: string;
|
|
144
|
+
fallbackMap?: Record<string, string>;
|
|
145
|
+
}): OpenAIApiReasoningEffort | undefined;
|
|
82
146
|
//#endregion
|
|
83
147
|
//#region packages/ai/src/providers/openai-responses.d.ts
|
|
84
148
|
interface OpenAIResponsesOptions extends StreamOptions {
|
|
@@ -130,71 +194,6 @@ declare function resolveResponsesMessageSnapshotCollapse(params: {
|
|
|
130
194
|
nextPhase: string | undefined;
|
|
131
195
|
}): ResponsesMessageSnapshotCollapse;
|
|
132
196
|
//#endregion
|
|
133
|
-
//#region packages/ai/src/providers/openai-responses-terminal-usage.d.ts
|
|
134
|
-
/** Terminal usage payload, modeled structurally so untyped callers can pass raw records. */
|
|
135
|
-
type ResponsesTerminalUsagePayload = {
|
|
136
|
-
input_tokens?: number | null;
|
|
137
|
-
output_tokens?: number | null;
|
|
138
|
-
total_tokens?: number | null;
|
|
139
|
-
input_tokens_details?: {
|
|
140
|
-
cached_tokens?: number | null;
|
|
141
|
-
cache_write_tokens?: number | null;
|
|
142
|
-
} | null;
|
|
143
|
-
output_tokens_details?: {
|
|
144
|
-
reasoning_tokens?: number | null;
|
|
145
|
-
} | null;
|
|
146
|
-
};
|
|
147
|
-
/**
|
|
148
|
-
* Split a terminal usage payload into the priced buckets.
|
|
149
|
-
*
|
|
150
|
-
* OpenAI includes cache reads and writes in `input_tokens`, so both are subtracted out of the
|
|
151
|
-
* billable input bucket. `total_tokens` comes from the payload, but never below the sum of the
|
|
152
|
-
* split buckets: proxies routinely omit it (reporting 0 would understate the turn), and a payload
|
|
153
|
-
* whose `cached_tokens` exceeds `input_tokens` clamps the input bucket, leaving the reported total
|
|
154
|
-
* short of what the buckets actually price.
|
|
155
|
-
*/
|
|
156
|
-
declare function mapResponsesTerminalUsage(usage: ResponsesTerminalUsagePayload | undefined | null): Pick<Usage, "input" | "output" | "cacheRead" | "cacheWrite" | "totalTokens"> | undefined;
|
|
157
|
-
/** Reasoning tokens are reported by the agent path only; the package path does not track them. */
|
|
158
|
-
declare function readResponsesReasoningTokens(usage: ResponsesTerminalUsagePayload | undefined | null): number | undefined;
|
|
159
|
-
/**
|
|
160
|
-
* Resolve the terminal stop reason, including the two overrides every Responses path shares: a
|
|
161
|
-
* content-filtered turn is a provider error rather than a truncated answer, and a turn that
|
|
162
|
-
* produced tool calls reports `toolUse` instead of a plain stop.
|
|
163
|
-
*/
|
|
164
|
-
declare function resolveResponsesTerminalStopReason(params: {
|
|
165
|
-
status: OpenAI.Responses.ResponseStatus | undefined;
|
|
166
|
-
terminalEventType?: "response.completed" | "response.incomplete";
|
|
167
|
-
incompleteReason?: string;
|
|
168
|
-
hasToolCall: boolean;
|
|
169
|
-
}): {
|
|
170
|
-
stopReason: StopReason;
|
|
171
|
-
errorMessage?: string;
|
|
172
|
-
};
|
|
173
|
-
//#endregion
|
|
174
|
-
//#region packages/ai/src/providers/openai-responses-tool-call-tracker.d.ts
|
|
175
|
-
type ResponsesToolCallIdentity = {
|
|
176
|
-
itemId?: string;
|
|
177
|
-
callId?: string;
|
|
178
|
-
};
|
|
179
|
-
type ResponsesToolCallState = ResponsesToolCallIdentity & {
|
|
180
|
-
argumentStreamReliable: boolean;
|
|
181
|
-
};
|
|
182
|
-
type ResponsesToolCallEvent = {
|
|
183
|
-
output_index?: unknown;
|
|
184
|
-
item_id?: unknown;
|
|
185
|
-
};
|
|
186
|
-
declare function readResponsesToolCallItemIdentity(item: {
|
|
187
|
-
id?: unknown;
|
|
188
|
-
call_id?: unknown;
|
|
189
|
-
}): ResponsesToolCallIdentity;
|
|
190
|
-
declare function createResponsesToolCallTracker<TState extends ResponsesToolCallState>(): {
|
|
191
|
-
register(event: ResponsesToolCallEvent, state: TState): void;
|
|
192
|
-
resolve(event: ResponsesToolCallEvent, identity?: ResponsesToolCallIdentity): TState | undefined;
|
|
193
|
-
forget(toolCall: TState): void;
|
|
194
|
-
markArgumentsUnreliable(): void;
|
|
195
|
-
hasActive(): boolean;
|
|
196
|
-
};
|
|
197
|
-
//#endregion
|
|
198
197
|
//#region packages/ai/src/providers/openai-stop-reason.d.ts
|
|
199
198
|
type OpenAIStopReasonResult = {
|
|
200
199
|
stopReason: StopReason;
|
|
@@ -204,14 +203,6 @@ declare function mapOpenAIStopReason(reason: string | null, options?: {
|
|
|
204
203
|
allowSingularToolCall?: boolean;
|
|
205
204
|
}): OpenAIStopReasonResult;
|
|
206
205
|
//#endregion
|
|
207
|
-
//#region packages/ai/src/providers/openai-tool-schema-compat.d.ts
|
|
208
|
-
/** Repairs recoverable OpenAI tool-schema shapes before canonical normalization. */
|
|
209
|
-
declare function normalizeOpenAIStrictCompatSchema(schema: unknown): TSchema;
|
|
210
|
-
/** Finds schema paths that violate OpenAI strict tool-schema requirements. */
|
|
211
|
-
declare function findOpenAIStrictSchemaViolations(schema: unknown, path: string, options?: {
|
|
212
|
-
requireObjectRoot?: boolean;
|
|
213
|
-
}): string[];
|
|
214
|
-
//#endregion
|
|
215
206
|
//#region packages/ai/src/providers/openai-tool-schema.d.ts
|
|
216
207
|
/**
|
|
217
208
|
* OpenAI strict-tool-schema normalization and diagnostics.
|
|
@@ -257,4 +248,4 @@ type RuntimeToolInputSchemaProjection = {
|
|
|
257
248
|
/** Projects one runtime tool input schema to JSON and reports runtime incompatibilities. */
|
|
258
249
|
declare function projectRuntimeToolInputSchema(schema: unknown, path?: string): RuntimeToolInputSchemaProjection;
|
|
259
250
|
//#endregion
|
|
260
|
-
export { AZURE_RESPONSES_TEXT_CONTENT_PART_TYPE, AZURE_RESPONSES_TEXT_DELTA_EVENT_TYPE, AzureResponsesTextContentPart, AzureResponsesTextDeltaEvent, GEMINI_UNSUPPORTED_SCHEMA_KEYWORDS,
|
|
251
|
+
export { AZURE_RESPONSES_TEXT_CONTENT_PART_TYPE, AZURE_RESPONSES_TEXT_DELTA_EVENT_TYPE, AzureResponsesTextContentPart, AzureResponsesTextDeltaEvent, GEMINI_UNSUPPORTED_SCHEMA_KEYWORDS, OPENAI_PROMPT_CACHE_KEY_MAX_LENGTH, OPENAI_RESPONSES_OUTPUT_TEXT_CONTENT_PART_TYPE, OPENAI_RESPONSES_OUTPUT_TEXT_DELTA_EVENT_TYPE, OpenAIApiReasoningEffort, OpenAICompletionsOptions, OpenAICompletionsToolChoice, OpenAIReasoningEffort, OpenAIResponsesOptions, OpenAIStopReasonResult, OpenAIToolProjection, ResponsesMessageSnapshotCollapse, ResponsesTextContentPartType, ResponsesTextDeltaEventType, RuntimeToolInputSchemaJson, RuntimeToolInputSchemaProjection, ToolParameterSchemaOptions, ToolSchemaModelCompat, clampOpenAIPromptCacheKey, cleanSchemaForGemini, clearOpenAIToolSchemaCacheForTest, convertMessages, extractToolSchemaModelCompat, findOpenAIStrictToolProjectionDiagnostics, isAzureResponsesTextDeltaEvent, isAzureResponsesTextDeltaEventType, isOpenAICompatibleAzureResponsesBaseUrl, isOpenAIGpt54MiniModel, isOpenAIGpt55Model, isOpenAIGpt56Model, isResponsesTextContentPartType, isResponsesTextDeltaEventType, isStrictOpenAIJsonSchemaCompatible, isTraditionalAzureOpenAIHost, mapOpenAIStopReason, normalizeOpenAIReasoningEffort, normalizeOpenAIStrictToolParameters, normalizeStrictOpenAIJsonSchema, normalizeToolParameterSchema, parseAzureDeploymentNameMap, projectOpenAITools, projectRuntimeToolInputSchema, reconcileOpenAICompletionsToolChoice, reconcileOpenAIResponsesToolChoice, resolveAzureDeploymentNameFromMap, resolveOpenAIProjectedToolsStrictToolFlag, resolveOpenAIReasoningEffortForModel, resolveOpenAIResponsesCacheParams, resolveOpenAISupportedReasoningEfforts, resolveResponsesMessageSnapshotCollapse, resolveUnsupportedToolSchemaKeywords, shouldOmitEmptyArrayItems, streamOpenAICompletions, streamOpenAIResponses, streamSimpleOpenAICompletions, streamSimpleOpenAIResponses, stripUnsupportedSchemaKeywords, supportsOpenAIReasoningEffort };
|
package/dist/internal/openai.mjs
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import { n as clampOpenAIPromptCacheKey, t as OPENAI_PROMPT_CACHE_KEY_MAX_LENGTH } from "../openai-prompt-cache-mZTCdRPo.mjs";
|
|
2
|
-
import { n as reconcileOpenAICompletionsToolChoice, r as reconcileOpenAIResponsesToolChoice, t as projectOpenAITools } from "../openai-tool-projection-OhX64DoP.mjs";
|
|
3
1
|
import { t as projectRuntimeToolInputSchema } from "../tool-schema-json-projection-BwNu3nDi.mjs";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { i as
|
|
7
|
-
import {
|
|
8
|
-
import { n as streamOpenAIResponses, r as streamSimpleOpenAIResponses } from "../openai-responses-
|
|
9
|
-
export { AZURE_RESPONSES_TEXT_CONTENT_PART_TYPE, AZURE_RESPONSES_TEXT_DELTA_EVENT_TYPE, GEMINI_UNSUPPORTED_SCHEMA_KEYWORDS,
|
|
2
|
+
import { A as extractToolSchemaModelCompat, C as isOpenAIGpt54MiniModel, D as resolveOpenAIReasoningEffortForModel, E as normalizeOpenAIReasoningEffort, F as GEMINI_UNSUPPORTED_SCHEMA_KEYWORDS, I as cleanSchemaForGemini, M as resolveUnsupportedToolSchemaKeywords, N as shouldOmitEmptyArrayItems, O as resolveOpenAISupportedReasoningEfforts, P as stripUnsupportedSchemaKeywords, S as resolveResponsesMessageSnapshotCollapse, T as isOpenAIGpt56Model, _ as OPENAI_RESPONSES_OUTPUT_TEXT_DELTA_EVENT_TYPE, b as isResponsesTextContentPartType, c as clearOpenAIToolSchemaCacheForTest, d as normalizeOpenAIStrictToolParameters, f as normalizeStrictOpenAIJsonSchema, g as OPENAI_RESPONSES_OUTPUT_TEXT_CONTENT_PART_TYPE, h as AZURE_RESPONSES_TEXT_DELTA_EVENT_TYPE, j as normalizeToolParameterSchema, k as supportsOpenAIReasoningEffort, l as findOpenAIStrictToolProjectionDiagnostics, m as AZURE_RESPONSES_TEXT_CONTENT_PART_TYPE, p as resolveOpenAIProjectedToolsStrictToolFlag, u as isStrictOpenAIJsonSchemaCompatible, v as isAzureResponsesTextDeltaEvent, w as isOpenAIGpt55Model, x as isResponsesTextDeltaEventType, y as isAzureResponsesTextDeltaEventType } from "../openai-responses-shared-BhYsVkwW.mjs";
|
|
3
|
+
import { i as resolveAzureDeploymentNameFromMap, n as isTraditionalAzureOpenAIHost, r as parseAzureDeploymentNameMap, t as isOpenAICompatibleAzureResponsesBaseUrl } from "../azure-openai-responses-client-compat-a_O_GVQV.mjs";
|
|
4
|
+
import { a as clampOpenAIPromptCacheKey, i as OPENAI_PROMPT_CACHE_KEY_MAX_LENGTH, n as reconcileOpenAICompletionsToolChoice, o as resolveOpenAIResponsesCacheParams, r as reconcileOpenAIResponsesToolChoice, t as projectOpenAITools } from "../openai-tool-projection-g4HuxD26.mjs";
|
|
5
|
+
import { a as mapOpenAIStopReason, i as streamSimpleOpenAICompletions, r as streamOpenAICompletions, t as convertMessages } from "../openai-completions-BUlMEeBc.mjs";
|
|
6
|
+
import { n as streamOpenAIResponses, r as streamSimpleOpenAIResponses } from "../openai-responses-DW61C22l.mjs";
|
|
7
|
+
export { AZURE_RESPONSES_TEXT_CONTENT_PART_TYPE, AZURE_RESPONSES_TEXT_DELTA_EVENT_TYPE, GEMINI_UNSUPPORTED_SCHEMA_KEYWORDS, OPENAI_PROMPT_CACHE_KEY_MAX_LENGTH, OPENAI_RESPONSES_OUTPUT_TEXT_CONTENT_PART_TYPE, OPENAI_RESPONSES_OUTPUT_TEXT_DELTA_EVENT_TYPE, clampOpenAIPromptCacheKey, cleanSchemaForGemini, clearOpenAIToolSchemaCacheForTest, convertMessages, extractToolSchemaModelCompat, findOpenAIStrictToolProjectionDiagnostics, isAzureResponsesTextDeltaEvent, isAzureResponsesTextDeltaEventType, isOpenAICompatibleAzureResponsesBaseUrl, isOpenAIGpt54MiniModel, isOpenAIGpt55Model, isOpenAIGpt56Model, isResponsesTextContentPartType, isResponsesTextDeltaEventType, isStrictOpenAIJsonSchemaCompatible, isTraditionalAzureOpenAIHost, mapOpenAIStopReason, normalizeOpenAIReasoningEffort, normalizeOpenAIStrictToolParameters, normalizeStrictOpenAIJsonSchema, normalizeToolParameterSchema, parseAzureDeploymentNameMap, projectOpenAITools, projectRuntimeToolInputSchema, reconcileOpenAICompletionsToolChoice, reconcileOpenAIResponsesToolChoice, resolveAzureDeploymentNameFromMap, resolveOpenAIProjectedToolsStrictToolFlag, resolveOpenAIReasoningEffortForModel, resolveOpenAIResponsesCacheParams, resolveOpenAISupportedReasoningEfforts, resolveResponsesMessageSnapshotCollapse, resolveUnsupportedToolSchemaKeywords, shouldOmitEmptyArrayItems, streamOpenAICompletions, streamOpenAIResponses, streamSimpleOpenAICompletions, streamSimpleOpenAIResponses, stripUnsupportedSchemaKeywords, supportsOpenAIReasoningEffort };
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { D as ModelThinkingLevel, E as Model, F as SimpleStreamOptions, P as ProviderStreamOptions, X as Usage, i as AssistantMessage, n as Api, o as AssistantMessageEventStreamContract, u as Context, z as StreamOptions } from "../types-
|
|
2
|
-
import { a as RegisteredApiProvider, t as ApiProvider } from "../api-registry-
|
|
1
|
+
import { D as ModelThinkingLevel, E as Model, F as SimpleStreamOptions, P as ProviderStreamOptions, X as Usage, i as AssistantMessage, n as Api, o as AssistantMessageEventStreamContract, u as Context, z as StreamOptions } from "../types-DRgdPqaZ.mjs";
|
|
2
|
+
import { a as RegisteredApiProvider, t as ApiProvider } from "../api-registry-BXYnCOIR.mjs";
|
|
3
3
|
import { t as sanitizeSurrogates } from "../sanitize-unicode-BZiVbGwK.mjs";
|
|
4
|
-
import { a as createFirstStreamEventTimeoutError, c as withFirstStreamEventTimeout, i as createFirstStreamEventAbortController, n as FirstStreamEventInternalOptions, o as getFirstStreamEventTimeoutHandler, r as FirstStreamEventTimeoutContext, s as getFirstStreamEventTimeoutMs, t as FirstStreamEventAbortController } from "../stream-first-event-timeout-DvDeSucC.mjs";
|
|
5
4
|
|
|
6
5
|
//#region packages/ai/src/internal/default-runtime.d.ts
|
|
7
6
|
declare const defaultApiRegistry: {
|
|
@@ -24,8 +23,7 @@ declare const defaultLlmRuntime: {
|
|
|
24
23
|
streamSimple: <TApi extends Api>(model: Model<TApi>, context: Context, options?: SimpleStreamOptions) => AssistantMessageEventStreamContract;
|
|
25
24
|
completeSimple: <TApi extends Api>(model: Model<TApi>, context: Context, options?: SimpleStreamOptions) => Promise<AssistantMessage>;
|
|
26
25
|
};
|
|
27
|
-
declare const getApiProvider: (api: Api) => RegisteredApiProvider | undefined, getApiProviders: () => RegisteredApiProvider[];
|
|
28
|
-
declare function clearApiProviders(): void;
|
|
26
|
+
declare const registerApiProvider: <TApi extends Api, TOptions extends StreamOptions>(provider: ApiProvider<TApi, TOptions>, sourceId?: string) => void, getApiProvider: (api: Api) => RegisteredApiProvider | undefined, getApiProviders: () => RegisteredApiProvider[], unregisterApiProviders: (sourceId: string) => void, clearApiProviders: () => void;
|
|
29
27
|
declare const stream: <TApi extends Api>(model: Model<TApi>, context: Context, options?: ProviderStreamOptions) => AssistantMessageEventStreamContract, complete: <TApi extends Api>(model: Model<TApi>, context: Context, options?: ProviderStreamOptions) => Promise<AssistantMessage>, streamSimple: <TApi extends Api>(model: Model<TApi>, context: Context, options?: SimpleStreamOptions) => AssistantMessageEventStreamContract, completeSimple: <TApi extends Api>(model: Model<TApi>, context: Context, options?: SimpleStreamOptions) => Promise<AssistantMessage>;
|
|
30
28
|
//#endregion
|
|
31
29
|
//#region packages/ai/src/env-api-keys.d.ts
|
|
@@ -141,12 +139,10 @@ declare function isConfiguredContextSizeOverflowError(errorMessage: string): boo
|
|
|
141
139
|
* - llama.cpp: "exceeds the available context size"
|
|
142
140
|
* - LM Studio: "greater than the context length"
|
|
143
141
|
* - Kimi For Coding: "exceeded model token limit: X (requested: Y)"
|
|
144
|
-
* - z.ai: "tokens in request more than max tokens allowed" or "Prompt exceeds max length"
|
|
145
142
|
*
|
|
146
143
|
* **Unreliable detection:**
|
|
147
144
|
* - z.ai: Sometimes accepts overflow silently (detectable via usage.input > contextWindow),
|
|
148
|
-
* sometimes returns rate limit errors
|
|
149
|
-
* contextWindow param to detect silent overflow.
|
|
145
|
+
* sometimes returns rate limit errors. Pass contextWindow param to detect silent overflow.
|
|
150
146
|
* - Xiaomi MiMo: Truncates input to fit contextWindow then returns stopReason "length" with
|
|
151
147
|
* output=0. Pass contextWindow param to detect via the "filled context + zero output" signal.
|
|
152
148
|
* - Ollama: May truncate input silently for some setups, but may also return explicit
|
|
@@ -170,7 +166,7 @@ declare function isConfiguredContextSizeOverflowError(errorMessage: string): boo
|
|
|
170
166
|
*/
|
|
171
167
|
declare function isContextOverflow(message: AssistantMessage, contextWindow?: number): boolean;
|
|
172
168
|
//#endregion
|
|
173
|
-
//#region packages/
|
|
169
|
+
//#region packages/ai/src/utils/reasoning-tag-text-partitioner.d.ts
|
|
174
170
|
type ReasoningTagTextDelta = {
|
|
175
171
|
kind: "text";
|
|
176
172
|
text: string;
|
|
@@ -178,8 +174,6 @@ type ReasoningTagTextDelta = {
|
|
|
178
174
|
kind: "thinking";
|
|
179
175
|
text: string;
|
|
180
176
|
};
|
|
181
|
-
//#endregion
|
|
182
|
-
//#region packages/markdown-core/src/reasoning-tags.d.ts
|
|
183
177
|
interface ReasoningTagTextPartitioner {
|
|
184
178
|
markStrict(): void;
|
|
185
179
|
push(chunk: string): ReasoningTagTextDelta[];
|
|
@@ -188,9 +182,36 @@ interface ReasoningTagTextPartitioner {
|
|
|
188
182
|
hasPending(): boolean;
|
|
189
183
|
isInsideReasoning(): boolean;
|
|
190
184
|
}
|
|
191
|
-
/** Creates a block-incremental parser that emits only Markdown-stable text. */
|
|
192
185
|
declare function createReasoningTagTextPartitioner(): ReasoningTagTextPartitioner;
|
|
193
186
|
//#endregion
|
|
187
|
+
//#region packages/ai/src/utils/stream-first-event-timeout.d.ts
|
|
188
|
+
type StreamStage = "responses" | "completions";
|
|
189
|
+
type FirstStreamEventTimeoutContext = {
|
|
190
|
+
provider?: string;
|
|
191
|
+
api?: string;
|
|
192
|
+
model?: string;
|
|
193
|
+
timeoutMs: number;
|
|
194
|
+
stage?: StreamStage;
|
|
195
|
+
hint?: string;
|
|
196
|
+
abort?: (reason: Error) => void;
|
|
197
|
+
onTimeout?: (reason: Error) => void;
|
|
198
|
+
};
|
|
199
|
+
type FirstStreamEventInternalOptions = {
|
|
200
|
+
firstEventTimeoutMs?: number;
|
|
201
|
+
abortFirstEventStream?: (reason: Error) => void;
|
|
202
|
+
onFirstEventTimeout?: (reason: Error) => void;
|
|
203
|
+
};
|
|
204
|
+
type FirstStreamEventAbortController = {
|
|
205
|
+
signal: AbortSignal;
|
|
206
|
+
abort: (reason: Error) => void;
|
|
207
|
+
dispose: () => void;
|
|
208
|
+
};
|
|
209
|
+
declare function getFirstStreamEventTimeoutMs(options: unknown): number | undefined;
|
|
210
|
+
declare function getFirstStreamEventTimeoutHandler(options: unknown): ((reason: Error) => void) | undefined;
|
|
211
|
+
declare function createFirstStreamEventTimeoutError(context: FirstStreamEventTimeoutContext): Error;
|
|
212
|
+
declare function createFirstStreamEventAbortController(parentSignal?: AbortSignal): FirstStreamEventAbortController;
|
|
213
|
+
declare function withFirstStreamEventTimeout<T>(stream: AsyncIterable<T>, context: FirstStreamEventTimeoutContext): AsyncIterable<T>;
|
|
214
|
+
//#endregion
|
|
194
215
|
//#region packages/ai/src/utils/streaming-byte-guard.d.ts
|
|
195
216
|
/**
|
|
196
217
|
* Bounded SSE / NDJSON stream reader guard.
|
|
@@ -221,4 +242,4 @@ type SseByteGuard = {
|
|
|
221
242
|
};
|
|
222
243
|
declare function createSseByteGuard(reader: ReadableStreamDefaultReader<Uint8Array>, opts: ReadSseStreamWithLimitOptions): SseByteGuard;
|
|
223
244
|
//#endregion
|
|
224
|
-
export { FirstStreamEventAbortController, FirstStreamEventInternalOptions, FirstStreamEventTimeoutContext, OpenAICodexJwtPayload, ReadSseStreamWithLimitOptions,
|
|
245
|
+
export { FirstStreamEventAbortController, FirstStreamEventInternalOptions, FirstStreamEventTimeoutContext, OpenAICodexJwtPayload, ReadSseStreamWithLimitOptions, ReasoningTagTextDelta, ReasoningTagTextPartitioner, SessionResourceCleanup, SseByteGuard, SseStreamOverflow, applyProviderReportedUsageCost, calculateCost, clampThinkingLevel, cleanupSessionResources, clearApiProviders, complete, completeSimple, createDeferredEventBuffer, createFirstStreamEventAbortController, createFirstStreamEventTimeoutError, createReasoningTagTextPartitioner, createSseByteGuard, decodeOpenAICodexJwtPayload, defaultApiRegistry, defaultLlmRuntime, findEnvKeys, getApiProvider, getApiProviders, getEnvApiKey, getFirstStreamEventTimeoutHandler, getFirstStreamEventTimeoutMs, getSupportedThinkingLevels, headersToRecord, isConfiguredContextSizeOverflowError, isContextOverflow, modelsAreEqual, notifyLlmRequestActivity, onLlmRequestActivity, parseJsonWithRepair, parseStreamingJson, registerApiProvider, registerSessionResourceCleanup, repairJson, resolveOpenAICodexAccountId, sanitizeSurrogates, shortHash, stream, streamSimple, unregisterApiProviders, withFirstStreamEventTimeout };
|