Bugfix/Gemini Structured Output (#4713)

* fix gemini structured output

* update issues templates
This commit is contained in:
Henry Heng
2025-06-23 19:10:41 +01:00
committed by GitHub
parent f50a817bf4
commit 2e42dfb635
10 changed files with 756 additions and 790 deletions
@@ -18,7 +18,6 @@ import {
} from '../../../src/Interface'
import { getInputVariables, getVars, handleEscapeCharacters, prepareSandboxVars, transformBracesWithColon } from '../../../src/utils'
import {
ExtractTool,
checkCondition,
convertStructuredSchemaToZod,
customGet,
@@ -27,7 +26,6 @@ import {
filterConversationHistory,
restructureMessages
} from '../commonUtils'
import { ChatGoogleGenerativeAI } from '../../chatmodels/ChatGoogleGenerativeAI/FlowiseChatGoogleGenerativeAI'
interface IConditionGridItem {
variable: string
@@ -485,20 +483,8 @@ const runCondition = async (
try {
const structuredOutput = z.object(convertStructuredSchemaToZod(conditionAgentStructuredOutput))
if (llm instanceof ChatGoogleGenerativeAI) {
const tool = new ExtractTool({
schema: structuredOutput
})
// @ts-ignore
const modelWithTool = llm.bind({
tools: [tool],
signal: abortControllerSignal ? abortControllerSignal.signal : undefined
})
model = modelWithTool
} else {
// @ts-ignore
model = llm.withStructuredOutput(structuredOutput)
}
// @ts-ignore
model = llm.withStructuredOutput(structuredOutput)
} catch (exception) {
console.error('Invalid JSON in Condition Agent Structured Output: ' + exception)
model = llm