ai-sdk-guardrails
Version:
Input and output guardrails middleware for Vercel AI SDK.
47 lines (44 loc) • 2.28 kB
TypeScript
import { A as AIResult, O as OutputGuardrail } from '../types-B9h_0Gyl.js';
import 'ai';
declare function extractContent(result: AIResult): {
text: string;
object: unknown;
usage?: {
promptTokens?: number;
completionTokens?: number;
totalTokens?: number;
};
finishReason?: string;
generationTimeMs?: number;
reasoningText?: string;
};
declare const lengthLimit: (maxLength: number) => OutputGuardrail;
declare const blockedContent: (words: string[]) => OutputGuardrail;
declare const outputLengthLimit: (maxLength: number) => OutputGuardrail;
declare const blockedOutputContent: (words: string[]) => OutputGuardrail;
declare const jsonValidation: () => OutputGuardrail;
declare const confidenceThreshold: (minConfidence: number) => OutputGuardrail;
declare const toxicityFilter: (threshold?: number) => OutputGuardrail;
declare const customValidation: (name: string, validator: (output: {
text?: string;
object?: unknown;
usage?: {
promptTokens?: number;
completionTokens?: number;
totalTokens?: number;
};
finishReason?: string;
generationTimeMs?: number;
}) => boolean, message: string) => OutputGuardrail;
declare const schemaValidation: (schema: {
parse: (obj: unknown) => unknown;
}) => OutputGuardrail;
declare const tokenUsageLimit: (maxTokens: number) => OutputGuardrail;
declare const performanceMonitor: (maxGenerationTimeMs: number) => OutputGuardrail;
declare const hallucinationDetector: (confidenceThreshold?: number) => OutputGuardrail;
declare const biasDetector: () => OutputGuardrail;
declare const factualAccuracyChecker: (requireSources?: boolean) => OutputGuardrail;
declare const privacyLeakageDetector: () => OutputGuardrail;
declare const contentConsistencyChecker: (referenceContent?: string) => OutputGuardrail;
declare const complianceChecker: (regulations?: string[]) => OutputGuardrail;
export { biasDetector, blockedContent, blockedOutputContent, complianceChecker, confidenceThreshold, contentConsistencyChecker, customValidation, extractContent, factualAccuracyChecker, hallucinationDetector, jsonValidation, lengthLimit, outputLengthLimit, performanceMonitor, privacyLeakageDetector, schemaValidation, tokenUsageLimit, toxicityFilter };