diff --git a/package-lock.json b/package-lock.json index 125446d..5d19bd5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "version": "0.1.0", "dependencies": { "@ai-sdk/mistral": "^2.0.15", + "@ai-sdk/openai": "^2.0.32", "@mendable/firecrawl-js": "^4.3.5", "@radix-ui/react-progress": "^1.1.7", "@radix-ui/react-slot": "^1.2.3", @@ -67,6 +68,22 @@ "zod": "^3.25.76 || ^4" } }, + "node_modules/@ai-sdk/openai": { + "version": "2.0.32", + "resolved": "https://registry.npmjs.org/@ai-sdk/openai/-/openai-2.0.32.tgz", + "integrity": "sha512-p7giSkCs66Q1qYO/NPYI41CrSg65mcm8R2uAdF86+Y1D1/q4mUrWMyf5UTOJ0bx/z4jIPiNgGDCg2Kabi5zrKQ==", + "license": "Apache-2.0", + "dependencies": { + "@ai-sdk/provider": "2.0.0", + "@ai-sdk/provider-utils": "3.0.9" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "zod": "^3.25.76 || ^4" + } + }, "node_modules/@ai-sdk/provider": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@ai-sdk/provider/-/provider-2.0.0.tgz", diff --git a/package.json b/package.json index 29a29f7..f44deab 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,7 @@ }, "dependencies": { "@ai-sdk/mistral": "^2.0.15", + "@ai-sdk/openai": "^2.0.32", "@mendable/firecrawl-js": "^4.3.5", "@radix-ui/react-progress": "^1.1.7", "@radix-ui/react-slot": "^1.2.3", diff --git a/src/app/api/generate-conversation/route.ts b/src/app/api/generate-conversation/route.ts index 9231e76..bb7b637 100644 --- a/src/app/api/generate-conversation/route.ts +++ b/src/app/api/generate-conversation/route.ts @@ -1,6 +1,6 @@ import { NextRequest, NextResponse } from 'next/server'; import { streamObject } from 'ai'; -import { mistral } from '@ai-sdk/mistral'; +import { openai } from '@ai-sdk/openai'; import { z } from 'zod'; const messageSchema = z.object({ @@ -23,9 +23,9 @@ export async function POST(request: NextRequest) { console.log('Generating streaming conversation for:', { title, url, contentLength: content.length, contentPreview: content.substring(0, 200) + '...' }); - // Stream podcast conversation using Mistral + // Stream podcast conversation using OpenAI const result = streamObject({ - model: mistral('mistral-medium-latest'), + model: openai('gpt-4o-mini'), output: 'array', schema: messageSchema, schemaName: 'PodcastMessage',