diff --git a/src/lib/agents/analyzerAgent.ts b/src/lib/agents/analyzerAgent.ts index 1551f83..e496130 100644 --- a/src/lib/agents/analyzerAgent.ts +++ b/src/lib/agents/analyzerAgent.ts @@ -59,7 +59,7 @@ export class AnalyzerAgent { async execute(state: typeof AgentState.State): Promise { try { - setTemperature(this.llm, 0.0); + //setTemperature(this.llm, 0.0); // Initialize originalQuery if not set if (!state.originalQuery) { diff --git a/src/lib/agents/taskManagerAgent.ts b/src/lib/agents/taskManagerAgent.ts index 08f0bf5..e7381d8 100644 --- a/src/lib/agents/taskManagerAgent.ts +++ b/src/lib/agents/taskManagerAgent.ts @@ -39,7 +39,7 @@ export class TaskManagerAgent { */ async execute(state: typeof AgentState.State): Promise { try { - setTemperature(this.llm, 0); // Set temperature to 0 for deterministic output + //setTemperature(this.llm, 0); // Set temperature to 0 for deterministic output // Check if we're in task progression mode (tasks already exist and we're processing them) if (state.tasks && state.tasks.length > 0) { diff --git a/src/lib/agents/webSearchAgent.ts b/src/lib/agents/webSearchAgent.ts index f2320e3..cf2a7ce 100644 --- a/src/lib/agents/webSearchAgent.ts +++ b/src/lib/agents/webSearchAgent.ts @@ -54,7 +54,7 @@ export class WebSearchAgent { */ async execute(state: typeof AgentState.State): Promise { try { - setTemperature(this.llm, 0); // Set temperature to 0 for deterministic output + //setTemperature(this.llm, 0); // Set temperature to 0 for deterministic output // Determine current task to process const currentTask = diff --git a/src/lib/utils/analyzePreviewContent.ts b/src/lib/utils/analyzePreviewContent.ts index 29d0aac..c03cdca 100644 --- a/src/lib/utils/analyzePreviewContent.ts +++ b/src/lib/utils/analyzePreviewContent.ts @@ -19,7 +19,7 @@ export type PreviewContent = { // Zod schema for structured preview analysis output const PreviewAnalysisSchema = z.object({ isSufficient: z.boolean().describe('Whether the preview content is sufficient to answer the task query'), - reason: z.string().optional().nullable().describe('Specific reason why full content analysis is required (only if isSufficient is false)') + reason: z.string().nullable().describe('Specific reason why full content analysis is required (only if isSufficient is false)') }); export const analyzePreviewContent = async ( @@ -80,11 +80,6 @@ Snippet: ${content.snippet} - Be specific in your reasoning when the content is not sufficient - The original query is provided for additional context, only use it for clarification of overall expectations and intent. You do **not** need to answer the original query directly or completely -# Response Format -You must return a JSON object with: -- isSufficient: boolean indicating whether preview content is sufficient -- reason: string explaining why full content analysis is required (only if isSufficient is false) - # Information Context: Today's date is ${formatDateForLLM(new Date())} @@ -99,6 +94,11 @@ ${taskQuery} # Search Result Previews to Analyze: ${formattedPreviewContent} + +# Response Format +You must return a JSON object with: +- isSufficient: boolean indicating whether preview content is sufficient +- reason: string explaining why full content analysis is required (only if isSufficient is false) `, { signal }, ); diff --git a/src/lib/utils/summarizeWebContent.ts b/src/lib/utils/summarizeWebContent.ts index 0ad494c..008736e 100644 --- a/src/lib/utils/summarizeWebContent.ts +++ b/src/lib/utils/summarizeWebContent.ts @@ -3,6 +3,7 @@ import { BaseChatModel } from '@langchain/core/language_models/chat_models'; import { formatDateForLLM } from '../utils'; import { getWebContent } from './documents'; import { removeThinkingBlocks } from './contentUtils'; +import { setTemperature } from './modelUtils'; export type SummarizeResult = { document: Document | null; @@ -17,6 +18,7 @@ export const summarizeWebContent = async ( signal: AbortSignal, ): Promise => { try { + setTemperature(llm, 0); // Set temperature to 0 for deterministic output // Helper function to summarize content and check relevance const summarizeContent = async ( content: Document, @@ -140,5 +142,8 @@ ${i === 0 ? content.metadata.html : content.pageContent}`; document: null, notRelevantReason: `Error processing URL: ${error instanceof Error ? error.message : 'Unknown error'}`, }; + } finally { + // Reset temperature to default after processing + setTemperature(llm); } };