生成 AI (Gen AI) は、現代のアプリケーション開発におけるイノベーションの基礎となっています。 GPT (Generative Pre-trained Transformer) などのモデルを活用することで、開発者は人間のようなテキストの生成、画像の作成、コンテンツの要約などを実行できるアプリケーションを構築できます。 Generative AI を MERN (MongoDB、Express、React、Node.js) スタック アプリケーションと統合すると、インテリジェントな自動化、会話型インターフェイス、またはクリエイティブ コンテンツ生成機能が追加され、ユーザー エクスペリエンスが向上します。このブログでは、実用的な実装に焦点を当てて、Gen AI を MERN アプリケーションと統合するプロセスについて説明します。
Generative AI を MERN アプリケーションに統合する前に、次のことを確認してください。
バックエンド (Node.js Express) は、MERN アプリと Generative AI API の間のブリッジとして機能します。
npm install express dotenv axios cors
.env ファイルを使用して API キーを安全に保存します:
npm install express dotenv axios cors
server.js などの名前のファイルを作成し、Express サーバーをセットアップします。
OPENAI_API_KEY=your_openai_api_key_here
axios または fetch を使用して、React フロントエンドからバックエンド API を呼び出します。 axios をまだインストールしていない場合はインストールします:
const express = require('express'); const axios = require('axios'); const cors = require('cors'); require('dotenv').config(); const app = express(); app.use(express.json()); app.use(cors()); const PORT = 5000; app.post('/api/generate', async (req, res) => { const { prompt } = req.body; try { const response = await axios.post( 'https://api.openai.com/v1/completions', { model: 'text-davinci-003', // Adjust model based on your use case prompt, max_tokens: 100, }, { headers: { 'Content-Type': 'application/json', Authorization: `Bearer ${process.env.OPENAI_API_KEY}`, }, } ); res.status(200).json({ result: response.data.choices[0].text }); } catch (error) { console.error(error); res.status(500).json({ error: 'Failed to generate response' }); } }); app.listen(PORT, () => { console.log(`Server is running on http://localhost:${PORT}`); });
バックエンドと対話するための React コンポーネントを作成します:
npm install axios
import React, { useState } from 'react'; import axios from 'axios'; const AIChat = () => { const [prompt, setPrompt] = useState(''); const [response, setResponse] = useState(''); const [loading, setLoading] = useState(false); const handleSubmit = async (e) => { e.preventDefault(); setLoading(true); try { const result = await axios.post('http://localhost:5000/api/generate', { prompt }); setResponse(result.data.result); } catch (error) { console.error('Error fetching response:', error); setResponse('Error generating response.'); } finally { setLoading(false); } }; return ( <div> <h1>Generative AI Chat</h1> <form onSubmit={handleSubmit}> <textarea value={prompt} onChange={(e) => setPrompt(e.target.value)} placeholder="Enter your prompt here" rows="5" cols="50" /> <br /> <button type="submit" disabled={loading}> {loading ? 'Generating...' : 'Generate'} </button> </form> {response && ( <div> <h3>Response:</h3> <p>{response}</p> </div> )} </div> ); }; export default AIChat;
node server.js
以上が生成 AI と MERN アプリケーションの統合の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。