import express from 'express'; import { getPipeline, getRawImage } from '../transformers.js'; export const router = express.Router(); const TASK = 'image-to-text'; router.post('/', async (req, res) => { try { const { image } = req.body; const rawImage = await getRawImage(image); if (!rawImage) { console.warn('Failed to parse captioned image'); return res.sendStatus(400); } const pipe = await getPipeline(TASK); const result = await pipe(rawImage); const text = result[0].generated_text; console.info('Image caption:', text); return res.json({ caption: text }); } catch (error) { console.error(error); return res.sendStatus(500); } });