import prisma from '../lib/prisma' /** * Setup OpenAI as default AI provider in database * Run this to ensure OpenAI is properly configured */ async function setupOpenAI() { console.log('šŸ”§ Setting up OpenAI as default AI provider...\n') const configs = [ { key: 'AI_PROVIDER_TAGS', value: 'openai' }, { key: 'AI_PROVIDER_EMBEDDING', value: 'openai' }, { key: 'AI_MODEL_TAGS', value: 'gpt-4o-mini' }, { key: 'AI_MODEL_EMBEDDING', value: 'text-embedding-3-small' }, ] try { for (const config of configs) { await prisma.systemConfig.upsert({ where: { key: config.key }, update: { value: config.value }, create: { key: config.key, value: config.value } }) console.log(`āœ… Set ${config.key} = ${config.value}`) } console.log('\n✨ OpenAI configuration complete!') console.log('\nNext steps:') console.log('1. Add your OPENAI_API_KEY in admin settings: http://localhost:3000/admin/settings') console.log('2. Or add it to .env.docker: OPENAI_API_KEY=sk-...') console.log('3. Restart the application') // Verify const verify = await prisma.systemConfig.findMany({ where: { key: { in: configs.map(c => c.key) } } }) console.log('\nāœ… Verification:') verify.forEach(c => console.log(` ${c.key}: ${c.value}`)) } catch (error) { console.error('āŒ Error:', error) process.exit(1) } } setupOpenAI() .then(() => process.exit(0)) .catch(() => process.exit(1))