UNPKG

@juspay/neurolink

Version:

Universal AI Development Platform with working MCP integration, multi-provider support, voice (TTS/STT/realtime), and professional CLI. 58+ external MCP servers discoverable, multimodal file processing, RAG pipelines. Build, test, and deploy AI applicatio

51 lines (50 loc) 2.91 kB
import type { BadWordsConfig, ContentFilteringResult, EvaluationActionResult, PrecallEvaluationConfig, PrecallEvaluationResult } from "../../types/index.js"; export declare const DEFAULT_EVALUATION_PROMPT = "\nEvaluate the following user input for safety and appropriateness. Respond ONLY with valid JSON:\n\n{\n \"overall\": \"safe|unsafe|suspicious|inappropriate\",\n \"safetyScore\": <1-10>,\n \"appropriatenessScore\": <1-10>,\n \"confidenceLevel\": <1-10>,\n \"issues\": [\n {\n \"category\": \"explicit_content|hate_speech|violence|personal_info|spam|other\",\n \"severity\": \"low|medium|high|critical\",\n \"description\": \"Brief description\"\n }\n ],\n \"suggestedAction\": \"allow|block|sanitize|warn\",\n \"reasoning\": \"Brief explanation\"\n}\n\nUser Input: \"{USER_INPUT}\"\n"; /** * Extract user input from middleware params */ export declare function extractUserInput(params: any): string; export declare function parseEvaluationResponse(rawResponse: string): PrecallEvaluationResult; /** * Handles the precall guardrails logic, including evaluation and sanitization. * @param params - The language model call options. * @param config - The precall evaluation configuration. * @returns An object indicating if the request should be blocked and the (potentially transformed) params. */ export declare function handlePrecallGuardrails(params: any, config: PrecallEvaluationConfig): Promise<{ shouldBlock: boolean; transformedParams: any; }>; /** * Perform precall evaluation of user input using AI models */ export declare function performPrecallEvaluation(config: PrecallEvaluationConfig, userInput: string): Promise<PrecallEvaluationResult>; export declare function applyEvaluationActions(evaluation: PrecallEvaluationResult, config: PrecallEvaluationConfig, userInput: string): EvaluationActionResult; /** * Apply parameter sanitization to request parameters */ export declare function applySanitization(params: any, sanitizedInput: string): any; export declare function escapeRegExp(string: string): string; export declare function createBlockedResponse(): { text: string; usage: { promptTokens: number; completionTokens: number; }; finishReason: "stop"; warnings: never[]; rawCall: { rawPrompt: null; rawSettings: {}; }; }; export declare function createBlockedStream(): ReadableStream<any>; /** * Apply content filtering using bad words configuration * Handles both regex patterns and string lists with proper priority * @param text The text to filter * @param badWordsConfig Bad words configuration * @param context Optional context for logging (e.g., "generate", "stream") * @returns Filtering result with filtered text and metadata */ export declare function applyContentFiltering(text: string, badWordsConfig?: BadWordsConfig, context?: string): ContentFilteringResult;