Files
2026-06-09 18:02:04 +02:00

18 lines
792 B
TypeScript

import { streamText, convertToModelMessages } from "ai";
import { openai } from "@ai-sdk/openai";
import { createSupabaseServerClient } from "@/lib/supabase-server";
export async function POST(req: Request) {
const { messages } = await req.json();
const supabase = await createSupabaseServerClient();
const { data: bands } = await supabase.from("bands").select("name, genre, country, stage, time");
const context = (bands ?? []).map((b) => `${b.name} (${b.genre}, ${b.country}) — ${b.stage} ${b.time}`).join("\n");
const result = streamText({
model: openai("gpt-4o-mini"),
system: `Je bent een hulpvaardige festival-roadie voor Polderfest 2027.\nLine-up:\n${context}`,
messages: convertToModelMessages(messages),
});
return result.toUIMessageStreamResponse();
}