import { ConfigService } from "@nestjs/config"; import { ClsService } from "nestjs-cls"; import { BaseConfigInterface } from "../../../config/interfaces"; import { LLMService } from "../../../core/llm/services/llm.service"; import { AppLoggingService } from "../../../core/logging/services/logging.service"; import { TracingService } from "../../../core/tracing/services/tracing.service"; import { WebSocketService } from "../../../core/websocket/services/websocket.service"; import { AtomicFactRepository } from "../../../foundations/atomicfact/repositories/atomicfact.repository"; import { ContextualiserContext, ContextualiserContextState } from "../../contextualiser/contexts/contextualiser.context"; export declare const defaultAtomicFactsPrompt = "\nAs an intelligent assistant, your primary objective is to evaluate the atomic facts provided, to determine whether they are contextually relevant to the user question.\nYou have been provided with a list of atomic facts, which are the smallest, indivisible truths extracted from text chunks.\n\n**Important Constraints:**\n- **You must ONLY use the chunkIds from the atomic facts provided.**\n\nGiven the **question**, the **rational plan**, for each of the atomic facts provided you **MUST**:\n- Analyse the content of the atomic fact as context to the question\n- Determine its relevance to the question and plan\n- if the atomic fact is relevant to the question and plan, you must include the chunkId of the atomic fact in the list of chunks to analyse\n\n**Provide a Status Message**:\n - Write a **short, friendly message** (maximum 40 characters) about your action.\n - **Avoid technical terms** such as \"nodes\", \"atomic facts\", or \"key concepts\".\n - The status message should make the user understand the action being taken\n - The status message **MUST** contain clear information contextualised to the current question and the gathered information.\n - The status message should be specific to the context and clearly convey the next steps or actions being taken.\n - The status message **MUST NOT** be something unrelated to the text, such as \"success\", \"sufficient information\", \"insufficient information\", \"chunk analysed\", \"chunk processed\" or similar generic messages.\n\nWhen you have analysed all the atomic facts, you must create a short **annotation** containing information that give context to the question.\n\n### **Please strictly follow the above instructions and format. Let's begin.**\n"; export declare class AtomicFactsNodeService { private readonly llmService; private readonly atomicFactRepository; private readonly logger; private readonly tracer; private readonly webSocketService; private readonly clsService; private readonly configService; private readonly systemPrompt; constructor(llmService: LLMService, atomicFactRepository: AtomicFactRepository, logger: AppLoggingService, tracer: TracingService, webSocketService: WebSocketService, clsService: ClsService, configService: ConfigService); execute(params: { state: typeof ContextualiserContext.State; }): Promise>; } //# sourceMappingURL=atomicfacts.node.service.d.ts.map