NextJS の OPEN AI GPT 4 モデルを使用してチャットボットを構築しようとしています。ただし、POST リクエストを http://localhost:3001/api/generate に送信すると、ステータス コード 500 の応答と次のエラー メッセージを受け取ります。 <ブロック引用>
TypeError: 未定義のプロパティを読み取ることができません (「ヘッダー」を読み取ります)。
/app/api/generate/route.ts
import { NextResponse } from "next/server"; import { 構成, OpenAIApi } from "openai"; const 構成 = 新しい構成({ apiKey: process.env.OPENAI_API_KEY、 }); const openai = 新しい OpenAIApi(構成); 非同期関数のエクスポート POST(リクエスト: リクエスト) { const body = await request.json(); const {プロンプト} = 本体; if (!プロンプト || プロンプト === "") { return new Response("プロンプトを送信してください", { status: 400 }); } 試す { const aiResult = await openai.createCompletion({ モデル:「gpt-4」、 プロンプト、 温度: 0.9、 max_tokens: 8192、 }); const aiText = aiResult.data.choices[0].text?.trim() || "問題が発生しました!"; return NextResponse.json({ テキスト: aiText }); } キャッチ (エラー) { コンソール.ログ(エラー); } }
NextJS 13 は初めてですが、「Hello World」のような静的応答を送信しようとしてもエラーが発生しません
Next.js API ルートは、最初のパラメーターとしてリクエスト オブジェクトではなく、リクエスト オブジェクトを想定します。したがって、コード内の
request: Request
をreq: NextApiRequest
に変更する必要があります。さらに、応答オブジェクトを Response から NextResponse に変更する必要があります。リクエストについては、 これから### リーリー ###ここ### リーリー
応答については、 これから### リーリー ###ここ### リーリー