import { NextResponse } from 'next/server' import { generateEmbedding } from '@/lib/huggingface' import { createServerSupabaseClient } from '@/lib/supabase-server' export async function POST(request: Request) { try { const { content, title, metadata } = await request.json() if (!content) { return NextResponse.json( { error: 'Content is required' }, { status: 400 } ) } // Generate embedding using Hugging Face const embedding = await generateEmbedding(content) // Store in Supabase with embedding const supabase = await createServerSupabaseClient() const { data, error } = await supabase .from('documents') .insert({ content, title: title || null, embedding, metadata: metadata || {}, }) .select() .single() if (error) { console.error('Supabase error:', error) throw error } return NextResponse.json({ success: true, document: data }, { status: 200 }) } catch (error: unknown) { console.error("Embedding API Error:", error); const message = error instanceof Error ? error.message : "Internal server error"; return NextResponse.json( { error: message }, { status: 500 } ); } }