ai-sdk-next-openai/app/api/bedrock/route.ts
2025-09-26 15:46:29 +00:00

30 lines
839 B
TypeScript

import { bedrock } from '@ai-sdk/amazon-bedrock';
import { convertToModelMessages, streamText, UIMessage } from 'ai';
export async function POST(req: Request) {
try {
const { messages }: { messages: UIMessage[] } = await req.json();
const result = streamText({
model: bedrock('anthropic.claude-3-haiku-20240307-v1:0'),
prompt: convertToModelMessages(messages),
maxOutputTokens: 500,
temperature: 0.7,
});
return result.toUIMessageStreamResponse();
} catch (error) {
console.error('Bedrock API Error:', error);
return new Response(
JSON.stringify({
error: 'Bedrock API failed',
details: error instanceof Error ? error.message : 'Unknown error',
}),
{
status: 500,
headers: { 'Content-Type': 'application/json' },
},
);
}
}