add option to skip provider tool call validation

This commit is contained in:
Markus Ylisiurunen
2025-12-07 17:24:06 +02:00
parent 2e3ff4a15a
commit 0196308266
12 changed files with 38 additions and 4 deletions
@@ -37,6 +37,7 @@ export const streamOpenAICompletions: StreamFunction<"openai-completions"> = (
options?: OpenAICompletionsOptions,
): AssistantMessageEventStream => {
const stream = new AssistantMessageEventStream();
const shouldValidateToolCalls = options?.validateToolCallsAtProvider !== false;
(async () => {
const output: AssistantMessage = {
@@ -86,7 +87,7 @@ export const streamOpenAICompletions: StreamFunction<"openai-completions"> = (
block.arguments = JSON.parse(block.partialArgs || "{}");
// Validate tool arguments if tool definition is available
if (context.tools) {
if (shouldValidateToolCalls && context.tools) {
const tool = context.tools.find((t) => t.name === block.name);
if (tool) {
block.arguments = validateToolArguments(tool, block);