この例では、POST
リクエストを受け取り、ユーザーからのプロンプトに応じたテキスト生成を行います。ユーザーの入力を受けて、AIがどのようにして適切なテキストを生成するかを見ていきましょう。
コードの概要
プログラミングとAIに興味のある読者に向けて、このコードは以下のステップで構成されています:
- ユーザーからのリクエストを受け取ります。
- OpenAIのAPIを通じて、ユーザーの問いかけに答えるテキストを生成します。
- 生成された内容をレスポンスとして返します。
実装例
if (req.method === 'POST') {
try {
// リクエストの開始時刻を記録
const startTime = Date.now();
// ユーザーのプロンプトを取得
const { prompt } = req.body;
// OpenAIの設定
const openai = new OpenAI({
apiKey: process.env.OPENAI_API_KEY,
timeout: 10 * 60 * 2000, // タイムアウト設定
});
// チャット生成処理
const chatCompletion = await openai.chat.completions.create(
{
model: 'gpt-4', // 使用するモデル
messages: [
{ role: 'system', content: 'You are a helpful assistant.' },
{ role: 'user', content: 'YOUR_PROMPT' + prompt },
],
temperature: 1.17, // 生成テキストの多様性を決定
},
{
timeout: 10 * 60 * 2000, // タイムアウト設定
},
);
// 結果をコンソールに表示し、クライアントに返す
console.log(chatCompletion.choices[0].message.content);
return res
.status(200)
.json({ response: chatCompletion.choices[0].message.content });
} catch (error) {
// エラーハンドリング
console.log('An error occurred:', error);
}
}
注意点
- このコードはNode.jsの環境で動作します。
- 実際には
YOUR_PROMPT
をユーザーが入力するテキストに置き換えて使用します。 - APIキーは環境変数から安全に読み込むことが重要です。
このサンプルコードを参考に、OpenAIのAPIを使ったテキスト生成の機能を実装してみてください。
コメント