AI Generatif (Gen AI) telah menjadi asas inovasi dalam pembangunan aplikasi moden. Dengan memanfaatkan model seperti GPT (Generative Pre-trained Transformer), pembangun boleh membina aplikasi yang mampu menjana teks seperti manusia, mencipta imej, meringkaskan kandungan dan banyak lagi. Mengintegrasikan AI Generatif dengan aplikasi tindanan MERN (MongoDB, Express, React, Node.js) boleh meningkatkan pengalaman pengguna dengan menambahkan automasi pintar, antara muka perbualan atau keupayaan penjanaan kandungan kreatif. Blog ini akan membimbing anda melalui proses penyepaduan Gen AI dengan aplikasi MERN, memfokuskan pada pelaksanaan praktikal.
Sebelum menyepadukan Generative AI ke dalam aplikasi MERN anda, pastikan anda mempunyai:
Halaman belakang (Node.js Express) akan bertindak sebagai jambatan antara apl MERN anda dan Generative AI API.
npm install express dotenv axios cors
Simpan kunci API anda dengan selamat menggunakan fail .env:
npm install express dotenv axios cors
Buat fail bernama server.js atau serupa dan sediakan pelayan Express:
OPENAI_API_KEY=your_openai_api_key_here
Gunakan axios atau ambil untuk memanggil API bahagian belakang anda daripada bahagian hadapan React. Pasang axios jika anda belum melakukannya:
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}`); });
Buat komponen React untuk berinteraksi dengan bahagian belakang:
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
Atas ialah kandungan terperinci Mengintegrasikan Generatif AI dengan Aplikasi MERN. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!