const axios = require('axios'); const dotenv = require('dotenv'); dotenv.config(); const apiKey = process.env.GOOGLE_GEMINI_API_KEY; /** * Formatea y organiza un texto con buena indentación y explicaciones. * @param {String} text - Texto a formatear y organizar. * @returns {Promise} - Texto formateado y organizado. */ const formatText = async (text) => { const url = `https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash-latest:generateContent?key=${apiKey}`; // Definimos un prompt específico para pedir una reformateación y organización del texto const prompt = ` Por favor, organiza y formatea el siguiente texto con buena indentación y estructura, proporciona explicaciones claras y usa subtítulos si es necesario. No modifiques el contenido, pero haz que sea fácil de leer y entender. Texto a organizar: ${text} `; try { const response = await axios.post( url, { contents: [{ parts: [{ text: prompt }] }] }, { headers: { 'Content-Type': 'application/json' } } ); // Extrae el texto organizado de la respuesta const formattedText = response.data.candidates[0].content.parts[0].text; return formattedText; } catch (error) { console.error('Error al formatear el texto:', JSON.stringify(error.response?.data, null, 2)); return text; // Devuelve el texto original en caso de error } }; module.exports = { formatText };