/** * Simple test to verify dspy.ts integration works at runtime */ import { DSPyAgenticSynthTrainer } from './dspy-real-integration.js'; async function test() { console.log('๐Ÿงช Testing DSPy.ts Real Integration\n'); // Simple schema const schema = { type: 'object', properties: { id: { type: 'string' }, name: { type: 'string' }, value: { type: 'number' } } }; // Simple examples const examples = [ { input: JSON.stringify(schema), output: JSON.stringify({ id: '1', name: 'Test', value: 42 }), quality: 0.9 } ]; try { // Create trainer console.log('โœ“ Creating trainer...'); const trainer = new DSPyAgenticSynthTrainer({ models: ['gpt-3.5-turbo'], optimizationRounds: 2, minQualityScore: 0.7, batchSize: 3 }); console.log('โœ“ Trainer created'); // Check if API key is set if (!process.env.OPENAI_API_KEY) { console.log('\nโš ๏ธ OPENAI_API_KEY not set. Skipping initialization test.'); console.log(' Set OPENAI_API_KEY to test full functionality.\n'); console.log('โœ… Integration code structure is valid!'); return; } // Initialize console.log('โœ“ Initializing DSPy.ts...'); await trainer.initialize(); console.log('โœ“ Initialization complete\n'); // Get stats const stats = trainer.getStatistics(); console.log('๐Ÿ“Š Statistics:'); console.log(` Total Iterations: ${stats.totalIterations}`); console.log(` Best Score: ${stats.bestScore}`); console.log(` Training Examples: ${stats.trainingExamples}`); console.log('\nโœ… All tests passed!'); } catch (error: any) { console.error('\nโŒ Test failed:', error.message); if (error.details) { console.error('Details:', error.details); } process.exit(1); } } test().catch(console.error);