UNPKG

gepa-spo

Version:

Genetic-Pareto prompt optimizer to evolve system prompts from a few rollouts with modular support and intelligent crossover

48 lines (47 loc) 1.56 kB
#!/usr/bin/env node import type { TaskItem } from './types.js'; /** * Calculate percentage improvement */ declare function calculateImprovement(initial: number, final: number): { absolute: number; percentage: number; }; /** * Format statistics for logging */ declare function formatStats(stats: { initialScore: number; finalScore: number; iterations: number; budgetUsed: number; totalBudget: number; candidatesGenerated: number; acceptedCandidates: number; crossoverOperations: number; mutationOperations: number; strategySwitches: number; paretoSize: number; feedbackSize: number; holdoutSize: number; }): string; /** * Validate configuration and provide helpful error messages */ declare function validateConfig(config: Record<string, unknown>, dtrainLength: number): void; /** * Apply sensible defaults to configuration */ declare function applyDefaults(config: Record<string, unknown>, dtrainLength: number): Record<string, unknown>; /** * Parse input with support for new format: { system?: string, modules?: [{id,prompt}], prompts: [...] } * Validates input structure and handles fallbacks */ declare function parseInput(inputRaw: Record<string, unknown>): { system: string; prompts: Array<Partial<TaskItem>>; }; declare function parseArgs(argv: string[]): Record<string, string>; declare function printHelp(): void; declare function main(): Promise<void>; export { parseArgs, main, parseInput, validateConfig, applyDefaults, printHelp, calculateImprovement, formatStats };