Funzionalità AI per Generazione e Miglioramento Immagini Prodotti
Descrizione
Implementate funzionalità AI per generare e migliorare automaticamente le immagini dei prodotti finiti utilizzando OpenAI DALL-E 3.
API Endpoints
1. POST /api/ai/generate-product-image
Genera una nuova immagine per un prodotto utilizzando DALL-E 3.
Body:
{
"productId": "string",
"productName": "string",
"productDescription": "string (optional)"
}Response:
{
"success": true,
"imageUrl": "https://s3.../image.png",
"prompt": "Prompt usato per la generazione"
}Caratteristiche:
- Modello: DALL-E 3
- Dimensione: 1024x1024
- Qualità: Standard
- Stile: Natural (fotografia realistica)
- Prompt ottimizzato per food photography professionale
- Upload automatico su S3 nella cartella
products/ai-generated/ - Aggiornamento automatico del prodotto nel database
2. POST /api/ai/improve-product-image
Migliora un’immagine esistente generandone una versione di qualità superiore.
Body:
{
"productId": "string",
"imageUrl": "string",
"productName": "string",
"productDescription": "string (optional)"
}Response:
{
"success": true,
"imageUrl": "https://s3.../improved-image.png",
"prompt": "Prompt usato per il miglioramento"
}Caratteristiche:
- Modello: DALL-E 3
- Dimensione: 1024x1024
- Qualità: HD (qualità superiore)
- Stile: Vivid (colori più vivaci)
- Prompt ottimizzato per styling professionale
- Upload automatico su S3 nella cartella
products/ai-improved/ - Aggiornamento automatico del prodotto nel database
Frontend - ProductImageCard
Interfaccia Utente
Quando NON c’è immagine:
- Placeholder vuoto con icona Upload
- Pulsante “Carica Immagine”
- Pulsante “Genera con AI” (icona Sparkles ✨)
Quando c’è immagine:
- Visualizzazione immagine con drag & drop per sostituirla
- Pulsante “Carica Immagine”
- Pulsante “Migliora con AI” (icona Wand2 🪄)
Funzionalità
Genera con AI
handleGenerateImage();- Chiama
/api/ai/generate-product-image - Toast informativi durante il processo (può richiedere 30 secondi)
- Aggiorna automaticamente l’anteprima con la nuova immagine
- Notifica il componente parent per ricaricare i dati
Migliora con AI
handleImproveImage();- Chiama
/api/ai/improve-product-image - Toast informativi durante il processo (può richiedere 30 secondi)
- Aggiorna automaticamente l’anteprima con l’immagine migliorata
- Notifica il componente parent per ricaricare i dati
Stati
isGenerating: Indica quando è in corso un’operazione AI- Tutti i pulsanti vengono disabilitati durante le operazioni
- Indicatore di caricamento mostra “Elaborazione AI…” durante la generazione
Prompt Engineering
Generazione Nuova Immagine
A high-quality, professional food photography image of "{productName}".
{productDescription}.
The image should be appetizing, well-lit, and suitable for a restaurant menu
or food delivery app. Studio lighting, white background, centered composition,
food photography style.Miglioramento Immagine
A professional, enhanced food photography image of "{productName}".
{productDescription}.
High-end restaurant quality, perfect lighting, garnished beautifully,
professional food styling, appetizing presentation, studio photography,
commercial quality, sharp focus, vibrant colors, white background.Configurazione Richiesta
Variabili d’Ambiente
OPENAI_API_KEY=sk-proj-...Dipendenze
openai: ^6.9.1 (già installato)- S3 configurato per upload immagini
Note Tecniche
Storage
- Le immagini generate vengono salvate su S3
- Cartelle separate per immagini generate e migliorate
- Nomi file con UUID per evitare collisioni
- Formato: PNG
Performance
- La generazione con DALL-E 3 può richiedere 20-30 secondi
- Timeout adeguato necessario per le richieste
- Toast informativi avvisano l’utente dei tempi di attesa
Sicurezza
- Tutte le API protette con autenticazione
- Validazione productId e productName
- Multi-tenancy supportato
- Error handling completo
Costi
- DALL-E 3 Standard (1024x1024): ~$0.040 per immagine
- DALL-E 3 HD (1024x1024): ~$0.080 per immagine
- Storage S3: costi standard AWS
Miglioramenti Futuri Possibili
- Cache delle immagini generate per evitare rigenerazioni
- Opzioni di personalizzazione prompt dall’UI
- Preview prima del salvataggio definitivo
- Cronologia delle versioni generate
- Batch generation per più prodotti
- Integrazione con altre AI (Midjourney, Stable Diffusion)
- Editing avanzato (rimozione sfondo, color correction)
Last updated on