@librechat/agents 3.3.3 → 3.3.5
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/dist/cjs/agents/AgentContext.cjs +2 -1
- package/dist/cjs/agents/AgentContext.cjs.map +1 -1
- package/dist/cjs/common/constants.cjs +21 -0
- package/dist/cjs/common/constants.cjs.map +1 -1
- package/dist/cjs/events.cjs +10 -1
- package/dist/cjs/events.cjs.map +1 -1
- package/dist/cjs/graphs/Graph.cjs +793 -111
- package/dist/cjs/graphs/Graph.cjs.map +1 -1
- package/dist/cjs/graphs/MultiAgentGraph.cjs +3 -1
- package/dist/cjs/graphs/MultiAgentGraph.cjs.map +1 -1
- package/dist/cjs/hooks/HookRegistry.cjs +25 -0
- package/dist/cjs/hooks/HookRegistry.cjs.map +1 -1
- package/dist/cjs/hooks/index.cjs +12 -0
- package/dist/cjs/hooks/index.cjs.map +1 -1
- package/dist/cjs/hooks/types.cjs +1 -0
- package/dist/cjs/hooks/types.cjs.map +1 -1
- package/dist/cjs/langfuse.cjs +8 -0
- package/dist/cjs/langfuse.cjs.map +1 -1
- package/dist/cjs/llm/anthropic/utils/message_inputs.cjs +79 -6
- package/dist/cjs/llm/anthropic/utils/message_inputs.cjs.map +1 -1
- package/dist/cjs/llm/bedrock/utils/message_inputs.cjs +38 -13
- package/dist/cjs/llm/bedrock/utils/message_inputs.cjs.map +1 -1
- package/dist/cjs/llm/google/utils/common.cjs +19 -7
- package/dist/cjs/llm/google/utils/common.cjs.map +1 -1
- package/dist/cjs/llm/invoke.cjs +331 -5
- package/dist/cjs/llm/invoke.cjs.map +1 -1
- package/dist/cjs/llm/openai/index.cjs +41 -5
- package/dist/cjs/llm/openai/index.cjs.map +1 -1
- package/dist/cjs/llm/openai/utils/index.cjs +25 -4
- package/dist/cjs/llm/openai/utils/index.cjs.map +1 -1
- package/dist/cjs/llm/openrouter/index.cjs +4 -1
- package/dist/cjs/llm/openrouter/index.cjs.map +1 -1
- package/dist/cjs/llm/preempt.cjs +132 -0
- package/dist/cjs/llm/preempt.cjs.map +1 -0
- package/dist/cjs/main.cjs +36 -5
- package/dist/cjs/messages/alternation.cjs +92 -0
- package/dist/cjs/messages/alternation.cjs.map +1 -0
- package/dist/cjs/messages/cache.cjs +54 -33
- package/dist/cjs/messages/cache.cjs.map +1 -1
- package/dist/cjs/messages/contextPruning.cjs +17 -43
- package/dist/cjs/messages/contextPruning.cjs.map +1 -1
- package/dist/cjs/messages/core.cjs +315 -23
- package/dist/cjs/messages/core.cjs.map +1 -1
- package/dist/cjs/messages/format.cjs +290 -60
- package/dist/cjs/messages/format.cjs.map +1 -1
- package/dist/cjs/messages/handoffCue.cjs +63 -0
- package/dist/cjs/messages/handoffCue.cjs.map +1 -0
- package/dist/cjs/messages/index.cjs +4 -1
- package/dist/cjs/messages/injected.cjs +60 -0
- package/dist/cjs/messages/injected.cjs.map +1 -0
- package/dist/cjs/messages/prune.cjs +503 -127
- package/dist/cjs/messages/prune.cjs.map +1 -1
- package/dist/cjs/run.cjs +80 -7
- package/dist/cjs/run.cjs.map +1 -1
- package/dist/cjs/session/handlers.cjs +18 -9
- package/dist/cjs/session/handlers.cjs.map +1 -1
- package/dist/cjs/stream.cjs +35 -10
- package/dist/cjs/stream.cjs.map +1 -1
- package/dist/cjs/summarization/node.cjs +28 -14
- package/dist/cjs/summarization/node.cjs.map +1 -1
- package/dist/cjs/tools/ToolNode.cjs +56 -63
- package/dist/cjs/tools/ToolNode.cjs.map +1 -1
- package/dist/cjs/tools/search/keenable-scraper.cjs +90 -0
- package/dist/cjs/tools/search/keenable-scraper.cjs.map +1 -0
- package/dist/cjs/tools/search/tool.cjs +9 -1
- package/dist/cjs/tools/search/tool.cjs.map +1 -1
- package/dist/cjs/tools/toolOutputReferences.cjs +6 -0
- package/dist/cjs/tools/toolOutputReferences.cjs.map +1 -1
- package/dist/cjs/utils/index.cjs +1 -1
- package/dist/cjs/utils/llm.cjs +1 -1
- package/dist/cjs/utils/llm.cjs.map +1 -1
- package/dist/cjs/utils/tokens.cjs +307 -20
- package/dist/cjs/utils/tokens.cjs.map +1 -1
- package/dist/cjs/utils/toolContent.cjs +1514 -0
- package/dist/cjs/utils/toolContent.cjs.map +1 -0
- package/dist/esm/agents/AgentContext.mjs +2 -1
- package/dist/esm/agents/AgentContext.mjs.map +1 -1
- package/dist/esm/common/constants.mjs +19 -1
- package/dist/esm/common/constants.mjs.map +1 -1
- package/dist/esm/events.mjs +10 -1
- package/dist/esm/events.mjs.map +1 -1
- package/dist/esm/graphs/Graph.mjs +798 -116
- package/dist/esm/graphs/Graph.mjs.map +1 -1
- package/dist/esm/graphs/MultiAgentGraph.mjs +3 -1
- package/dist/esm/graphs/MultiAgentGraph.mjs.map +1 -1
- package/dist/esm/hooks/HookRegistry.mjs +25 -0
- package/dist/esm/hooks/HookRegistry.mjs.map +1 -1
- package/dist/esm/hooks/index.mjs +12 -1
- package/dist/esm/hooks/index.mjs.map +1 -1
- package/dist/esm/hooks/types.mjs +1 -0
- package/dist/esm/hooks/types.mjs.map +1 -1
- package/dist/esm/langfuse.mjs +9 -1
- package/dist/esm/langfuse.mjs.map +1 -1
- package/dist/esm/llm/anthropic/utils/message_inputs.mjs +79 -6
- package/dist/esm/llm/anthropic/utils/message_inputs.mjs.map +1 -1
- package/dist/esm/llm/bedrock/utils/message_inputs.mjs +38 -13
- package/dist/esm/llm/bedrock/utils/message_inputs.mjs.map +1 -1
- package/dist/esm/llm/google/utils/common.mjs +19 -7
- package/dist/esm/llm/google/utils/common.mjs.map +1 -1
- package/dist/esm/llm/invoke.mjs +332 -8
- package/dist/esm/llm/invoke.mjs.map +1 -1
- package/dist/esm/llm/openai/index.mjs +41 -5
- package/dist/esm/llm/openai/index.mjs.map +1 -1
- package/dist/esm/llm/openai/utils/index.mjs +25 -4
- package/dist/esm/llm/openai/utils/index.mjs.map +1 -1
- package/dist/esm/llm/openrouter/index.mjs +4 -1
- package/dist/esm/llm/openrouter/index.mjs.map +1 -1
- package/dist/esm/llm/preempt.mjs +131 -0
- package/dist/esm/llm/preempt.mjs.map +1 -0
- package/dist/esm/main.mjs +14 -11
- package/dist/esm/messages/alternation.mjs +91 -0
- package/dist/esm/messages/alternation.mjs.map +1 -0
- package/dist/esm/messages/cache.mjs +55 -34
- package/dist/esm/messages/cache.mjs.map +1 -1
- package/dist/esm/messages/contextPruning.mjs +17 -43
- package/dist/esm/messages/contextPruning.mjs.map +1 -1
- package/dist/esm/messages/core.mjs +305 -24
- package/dist/esm/messages/core.mjs.map +1 -1
- package/dist/esm/messages/format.mjs +290 -61
- package/dist/esm/messages/format.mjs.map +1 -1
- package/dist/esm/messages/handoffCue.mjs +61 -0
- package/dist/esm/messages/handoffCue.mjs.map +1 -0
- package/dist/esm/messages/index.mjs +4 -1
- package/dist/esm/messages/injected.mjs +60 -0
- package/dist/esm/messages/injected.mjs.map +1 -0
- package/dist/esm/messages/prune.mjs +500 -128
- package/dist/esm/messages/prune.mjs.map +1 -1
- package/dist/esm/run.mjs +80 -7
- package/dist/esm/run.mjs.map +1 -1
- package/dist/esm/session/handlers.mjs +19 -10
- package/dist/esm/session/handlers.mjs.map +1 -1
- package/dist/esm/stream.mjs +34 -11
- package/dist/esm/stream.mjs.map +1 -1
- package/dist/esm/summarization/node.mjs +28 -14
- package/dist/esm/summarization/node.mjs.map +1 -1
- package/dist/esm/tools/ToolNode.mjs +56 -63
- package/dist/esm/tools/ToolNode.mjs.map +1 -1
- package/dist/esm/tools/search/keenable-scraper.mjs +88 -0
- package/dist/esm/tools/search/keenable-scraper.mjs.map +1 -0
- package/dist/esm/tools/search/tool.mjs +9 -1
- package/dist/esm/tools/search/tool.mjs.map +1 -1
- package/dist/esm/tools/toolOutputReferences.mjs +6 -0
- package/dist/esm/tools/toolOutputReferences.mjs.map +1 -1
- package/dist/esm/utils/index.mjs +1 -1
- package/dist/esm/utils/llm.mjs +1 -1
- package/dist/esm/utils/llm.mjs.map +1 -1
- package/dist/esm/utils/tokens.mjs +307 -21
- package/dist/esm/utils/tokens.mjs.map +1 -1
- package/dist/esm/utils/toolContent.mjs +1503 -0
- package/dist/esm/utils/toolContent.mjs.map +1 -0
- package/dist/types/common/constants.d.ts +18 -0
- package/dist/types/graphs/Graph.d.ts +139 -2
- package/dist/types/hooks/HookRegistry.d.ts +15 -0
- package/dist/types/hooks/index.d.ts +12 -1
- package/dist/types/hooks/types.d.ts +45 -6
- package/dist/types/index.d.ts +1 -1
- package/dist/types/llm/invoke.d.ts +34 -1
- package/dist/types/llm/openai/index.d.ts +4 -0
- package/dist/types/llm/openai/utils/index.d.ts +2 -0
- package/dist/types/llm/openrouter/index.d.ts +5 -0
- package/dist/types/llm/preempt.d.ts +40 -0
- package/dist/types/messages/alternation.d.ts +23 -0
- package/dist/types/messages/contextPruning.d.ts +2 -1
- package/dist/types/messages/core.d.ts +36 -0
- package/dist/types/messages/format.d.ts +6 -0
- package/dist/types/messages/handoffCue.d.ts +40 -0
- package/dist/types/messages/index.d.ts +3 -0
- package/dist/types/messages/injected.d.ts +3 -0
- package/dist/types/messages/prune.d.ts +16 -12
- package/dist/types/run.d.ts +7 -0
- package/dist/types/stream.d.ts +14 -0
- package/dist/types/tools/ToolNode.d.ts +0 -7
- package/dist/types/tools/search/keenable-scraper.d.ts +15 -0
- package/dist/types/tools/search/types.d.ts +31 -2
- package/dist/types/types/graph.d.ts +8 -1
- package/dist/types/types/run.d.ts +65 -0
- package/dist/types/types/stream.d.ts +1 -26
- package/dist/types/utils/tokens.d.ts +7 -0
- package/dist/types/utils/toolContent.d.ts +107 -0
- package/package.json +1 -1
- package/src/__tests__/stream.eagerEventExecution.test.ts +74 -0
- package/src/agents/AgentContext.ts +1 -0
- package/src/{splitStream.test.ts → aggregator.test.ts} +59 -666
- package/src/common/constants.ts +21 -0
- package/src/events.ts +15 -1
- package/src/graphs/Graph.ts +1261 -198
- package/src/graphs/MultiAgentGraph.ts +6 -1
- package/src/graphs/__tests__/Graph.contextOverflow.test.ts +1139 -4
- package/src/graphs/__tests__/Graph.preemptSignal.test.ts +126 -0
- package/src/hooks/HookRegistry.ts +40 -0
- package/src/hooks/__tests__/preemptBoundary.test.ts +152 -0
- package/src/hooks/index.ts +16 -2
- package/src/hooks/types.ts +47 -3
- package/src/index.ts +1 -1
- package/src/langfuse.ts +26 -1
- package/src/llm/anthropic/utils/message_inputs.ts +158 -12
- package/src/llm/anthropic/utils/tool-id-normalization.test.ts +109 -0
- package/src/llm/bedrock/utils/message_inputs.test.ts +131 -1
- package/src/llm/bedrock/utils/message_inputs.ts +100 -24
- package/src/llm/bedrock/utils/toolResultCachePoint.test.ts +15 -0
- package/src/llm/google/utils/common.test.ts +75 -9
- package/src/llm/google/utils/common.ts +34 -3
- package/src/llm/invoke.alternation.test.ts +87 -0
- package/src/llm/invoke.handoffCue.test.ts +112 -0
- package/src/llm/invoke.test.ts +488 -0
- package/src/llm/invoke.ts +611 -8
- package/src/llm/openai/index.ts +106 -6
- package/src/llm/openai/utils/index.ts +109 -53
- package/src/llm/openai/utils/messages.test.ts +330 -1
- package/src/llm/openrouter/index.ts +12 -2
- package/src/llm/openrouter/reasoning.test.ts +314 -0
- package/src/llm/preempt.test.ts +323 -0
- package/src/llm/preempt.ts +178 -0
- package/src/messages/__tests__/observationMasking.test.ts +93 -2
- package/src/messages/alternation.test.ts +212 -0
- package/src/messages/alternation.ts +112 -0
- package/src/messages/cache.tail.test.ts +193 -0
- package/src/messages/cache.test.ts +113 -0
- package/src/messages/cache.ts +92 -60
- package/src/messages/contextPruning.test.ts +184 -0
- package/src/messages/contextPruning.ts +49 -42
- package/src/messages/core.ts +653 -40
- package/src/messages/ensureThinkingBlock.test.ts +49 -1
- package/src/messages/foldToollessToolBlocks.test.ts +163 -5
- package/src/messages/format.ts +454 -91
- package/src/messages/formatAgentMessages.steer.test.ts +267 -0
- package/src/messages/formatAgentMessages.test.ts +604 -14
- package/src/messages/formatAgentMessages.tools.test.ts +103 -0
- package/src/messages/handoffCue.test.ts +96 -0
- package/src/messages/handoffCue.ts +78 -0
- package/src/messages/index.ts +3 -0
- package/src/messages/injected.test.ts +90 -0
- package/src/messages/injected.ts +74 -0
- package/src/messages/prune.ts +996 -183
- package/src/run.ts +91 -6
- package/src/scripts/preempt-probe.ts +330 -0
- package/src/scripts/preempt-scenarios.ts +388 -0
- package/src/session/handlers.ts +32 -12
- package/src/specs/handoffCue.test.ts +165 -0
- package/src/specs/langfuse-callbacks.test.ts +352 -2
- package/src/specs/preemptSeal.test.ts +309 -0
- package/src/specs/prune.test.ts +1083 -6
- package/src/specs/summarization-unit.test.ts +105 -0
- package/src/specs/tokens.test.ts +609 -32
- package/src/stream.dispatch.test.ts +63 -0
- package/src/stream.ts +59 -23
- package/src/summarization/__tests__/node.test.ts +77 -0
- package/src/summarization/node.ts +46 -18
- package/src/tools/ToolNode.ts +150 -99
- package/src/tools/__tests__/ToolNode.onResultCompletion.test.ts +148 -1
- package/src/tools/__tests__/ToolNode.outputReferences.test.ts +112 -3
- package/src/tools/__tests__/annotateMessagesForLLM.test.ts +32 -0
- package/src/tools/__tests__/directToolHooks.test.ts +255 -7
- package/src/tools/search/keenable-scraper.test.ts +153 -0
- package/src/tools/search/keenable-scraper.ts +137 -0
- package/src/tools/search/tool.ts +13 -2
- package/src/tools/search/types.ts +50 -3
- package/src/tools/toolOutputReferences.ts +6 -0
- package/src/types/graph.ts +12 -1
- package/src/types/run.ts +67 -0
- package/src/types/stream.ts +1 -42
- package/src/utils/llm.test.ts +18 -0
- package/src/utils/llm.ts +4 -1
- package/src/utils/tokens.ts +586 -31
- package/src/utils/toolContent.test.ts +1432 -0
- package/src/utils/toolContent.ts +2707 -0
- package/dist/cjs/splitStream.cjs +0 -151
- package/dist/cjs/splitStream.cjs.map +0 -1
- package/dist/esm/splitStream.mjs +0 -150
- package/dist/esm/splitStream.mjs.map +0 -1
- package/dist/types/mockStream.d.ts +0 -32
- package/dist/types/splitStream.d.ts +0 -37
- package/src/mockStream.ts +0 -99
- package/src/splitStream.ts +0 -234
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { buildAnthropicCacheControl, resolvePromptCacheTtl, stripAnthropicCacheControl, stripBedrockCacheControl } from "../../messages/cache.mjs";
|
|
2
|
+
import { projectOpenAIResponsesToolMessageContent, projectToolStreamContentForProvider } from "../../messages/core.mjs";
|
|
1
3
|
import { OPENAI_CHAT_SEQUENTIAL_STREAMED_TOOL_CALL_ADAPTER, STREAMED_TOOL_CALL_ADAPTER_METADATA_KEY } from "../../tools/streamedToolCallSeals.mjs";
|
|
2
4
|
import { _convertMessagesToOpenAIParams, isReasoningModel } from "./utils/index.mjs";
|
|
3
5
|
import { dropRepeatedScalarMetadata } from "./streamMetadata.mjs";
|
|
@@ -36,6 +38,22 @@ function normalizeHeaders(headers) {
|
|
|
36
38
|
});
|
|
37
39
|
return Object.fromEntries(output.entries());
|
|
38
40
|
}
|
|
41
|
+
function stripResponsesToolCacheControl(tools) {
|
|
42
|
+
if (!Array.isArray(tools)) return tools;
|
|
43
|
+
return tools.map((tool) => {
|
|
44
|
+
if (tool == null || typeof tool !== "object") return tool;
|
|
45
|
+
const clone = { ...tool };
|
|
46
|
+
delete clone.cache_control;
|
|
47
|
+
if (clone.extras != null && typeof clone.extras === "object" && !Array.isArray(clone.extras)) {
|
|
48
|
+
clone.extras = { ...clone.extras };
|
|
49
|
+
delete clone.extras.cache_control;
|
|
50
|
+
}
|
|
51
|
+
return clone;
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
function projectOpenAIResponsesProviderMessages(messages) {
|
|
55
|
+
return projectOpenAIResponsesToolMessageContent(stripAnthropicCacheControl(stripBedrockCacheControl(projectToolStreamContentForProvider(messages))));
|
|
56
|
+
}
|
|
39
57
|
const CACHE_WRITE_METADATA_KEY = "__librechat_cache_write_tokens";
|
|
40
58
|
function applyManagedRequestParams(params, fields) {
|
|
41
59
|
return {
|
|
@@ -504,6 +522,7 @@ var LibreChatOpenAICompletions = class extends ChatOpenAICompletions {
|
|
|
504
522
|
includeReasoningContent;
|
|
505
523
|
includeReasoningDetails;
|
|
506
524
|
convertReasoningDetailsToContent;
|
|
525
|
+
preserveToolCacheControl;
|
|
507
526
|
promptCacheExplicit;
|
|
508
527
|
safetyIdentifier;
|
|
509
528
|
constructor(fields) {
|
|
@@ -511,6 +530,7 @@ var LibreChatOpenAICompletions = class extends ChatOpenAICompletions {
|
|
|
511
530
|
this.includeReasoningContent = fields?.includeReasoningContent;
|
|
512
531
|
this.includeReasoningDetails = fields?.includeReasoningDetails;
|
|
513
532
|
this.convertReasoningDetailsToContent = fields?.convertReasoningDetailsToContent;
|
|
533
|
+
this.preserveToolCacheControl = fields?.preserveToolCacheControl;
|
|
514
534
|
this.promptCacheExplicit = fields?.promptCacheExplicit;
|
|
515
535
|
this.safetyIdentifier = fields?.safety_identifier;
|
|
516
536
|
}
|
|
@@ -548,7 +568,8 @@ var LibreChatOpenAICompletions = class extends ChatOpenAICompletions {
|
|
|
548
568
|
const messagesMapped = _convertMessagesToOpenAIParams(messages, this.model, {
|
|
549
569
|
includeReasoningContent: this.includeReasoningContent,
|
|
550
570
|
includeReasoningDetails: this.includeReasoningDetails,
|
|
551
|
-
convertReasoningDetailsToContent: this.convertReasoningDetailsToContent
|
|
571
|
+
convertReasoningDetailsToContent: this.convertReasoningDetailsToContent,
|
|
572
|
+
preserveToolCacheControl: this.preserveToolCacheControl
|
|
552
573
|
});
|
|
553
574
|
if (params.stream === true) {
|
|
554
575
|
const stream = this._streamResponseChunks(messages, options, runManager);
|
|
@@ -632,7 +653,8 @@ var LibreChatOpenAICompletions = class extends ChatOpenAICompletions {
|
|
|
632
653
|
const messagesMapped = _convertMessagesToOpenAIParams(messages, this.model, {
|
|
633
654
|
includeReasoningContent: this.includeReasoningContent,
|
|
634
655
|
includeReasoningDetails: this.includeReasoningDetails,
|
|
635
|
-
convertReasoningDetailsToContent: this.convertReasoningDetailsToContent
|
|
656
|
+
convertReasoningDetailsToContent: this.convertReasoningDetailsToContent,
|
|
657
|
+
preserveToolCacheControl: this.preserveToolCacheControl
|
|
636
658
|
});
|
|
637
659
|
const params = {
|
|
638
660
|
...this.invocationParams(options, { streaming: true }),
|
|
@@ -711,17 +733,28 @@ var LibreChatOpenAICompletions = class extends ChatOpenAICompletions {
|
|
|
711
733
|
};
|
|
712
734
|
var LibreChatOpenAIResponses = class extends ChatOpenAIResponses {
|
|
713
735
|
promptCacheExplicit;
|
|
736
|
+
responsesPromptCache;
|
|
737
|
+
responsesPromptCacheTtl;
|
|
714
738
|
safetyIdentifier;
|
|
715
739
|
constructor(fields) {
|
|
716
740
|
super(fields);
|
|
717
741
|
this.promptCacheExplicit = fields?.promptCacheExplicit;
|
|
742
|
+
this.responsesPromptCache = fields?.responsesPromptCache;
|
|
743
|
+
this.responsesPromptCacheTtl = fields?.responsesPromptCacheTtl;
|
|
718
744
|
this.safetyIdentifier = fields?.safety_identifier;
|
|
719
745
|
}
|
|
720
746
|
invocationParams(options) {
|
|
721
|
-
const
|
|
747
|
+
const cacheOptions = options;
|
|
748
|
+
const cacheControl = (cacheOptions?.promptCache ?? this.responsesPromptCache) === true ? buildAnthropicCacheControl(resolvePromptCacheTtl(cacheOptions?.promptCacheTtl ?? this.responsesPromptCacheTtl)) : void 0;
|
|
749
|
+
const baseParams = applyManagedRequestParams(super.invocationParams(options), {
|
|
722
750
|
promptCacheExplicit: this.promptCacheExplicit,
|
|
723
751
|
safetyIdentifier: this.safetyIdentifier
|
|
724
752
|
});
|
|
753
|
+
const params = {
|
|
754
|
+
...baseParams,
|
|
755
|
+
...baseParams.tools != null && { tools: stripResponsesToolCacheControl(baseParams.tools) },
|
|
756
|
+
...cacheControl != null && { cache_control: cacheControl }
|
|
757
|
+
};
|
|
725
758
|
if (shouldIncludeEncryptedReasoning(this.model, params)) params.include = [...new Set([...params.include ?? [], "reasoning.encrypted_content"])];
|
|
726
759
|
return params;
|
|
727
760
|
}
|
|
@@ -734,16 +767,19 @@ var LibreChatOpenAIResponses = class extends ChatOpenAIResponses {
|
|
|
734
767
|
return isResponsesStream(result) ? result : attachCacheWriteMetadata(result);
|
|
735
768
|
}
|
|
736
769
|
async _generate(messages, options, runManager) {
|
|
737
|
-
const result = await super._generate(messages, options, runManager);
|
|
770
|
+
const result = await super._generate(projectOpenAIResponsesProviderMessages(messages), options, runManager);
|
|
738
771
|
for (const generation of result.generations) attachCacheWriteUsage(generation.message);
|
|
739
772
|
return result;
|
|
740
773
|
}
|
|
741
774
|
async *_streamResponseChunks(messages, options, runManager) {
|
|
742
|
-
for await (const chunk of super._streamResponseChunks(messages, options, runManager)) {
|
|
775
|
+
for await (const chunk of super._streamResponseChunks(projectOpenAIResponsesProviderMessages(messages), options, runManager)) {
|
|
743
776
|
attachCacheWriteUsage(chunk.message);
|
|
744
777
|
yield chunk;
|
|
745
778
|
}
|
|
746
779
|
}
|
|
780
|
+
async *_streamChatModelEvents(messages, options, runManager) {
|
|
781
|
+
yield* super._streamChatModelEvents(projectOpenAIResponsesProviderMessages(messages), options, runManager);
|
|
782
|
+
}
|
|
747
783
|
_getReasoningParams(options) {
|
|
748
784
|
return getReasoningParams(this.reasoning, options);
|
|
749
785
|
}
|