Quiz de Piel

Test de Tipo de Piel

Open ai


const OPENAI_API_KEY = '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'; // Reemplaza con tu clave de API de OpenAI function enviarAChatGPT() { const hoja = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); const ultimaFila = hoja.getLastRow(); // Suponiendo que los datos comienzan en la fila 2 (fila 1 son encabezados) for (let fila = 2; fila <= ultimaFila; fila++) { const status = hoja.getRange(fila, 15).getValue(); // Columna O if (status === '') { // Procesar solo si la columna O está vacía const datos = hoja.getRange(fila, 1, 1, 14).getValues()[0]; // Columnas A-N // Mapea los datos a variables (ajusta según tus columnas) const [nombreApellido, edad, respuesta1, respuesta2, respuesta3, respuesta4, respuesta5, respuesta6, respuesta7, respuesta8, respuesta9, respuesta10, respuesta11, respuesta12] = datos; // Construye el prompt personalizado const prompt = ` Hola ${nombreApellido}, Gracias por completar nuestro diagnóstico de piel. A tus ${edad} años, observamos que tu piel es **${respuesta1}**, y ${respuesta2}, lo que puede deberse a ${respuesta3}. Además, has mencionado ${respuesta4}, lo que sugiere que ${respuesta5}. Es posible que ${respuesta6}. Incorporar ${respuesta7} y utilizar productos con ${respuesta8} puede ayudarte a ${respuesta9} y mejorar su apariencia. ¿Te gustaría ${respuesta10}? **¡${respuesta11}** diseñadas especialmente para ti y da el primer paso hacia una piel radiante y saludable! `; // Llama a la API de OpenAI const respuestaChatGPT = llamarAPIChatGPT(prompt); // Escribe la respuesta en la columna O hoja.getRange(fila, 15).setValue(respuestaChatGPT); // Opcional: Agregar un pequeño retraso para no exceder los límites de la API Utilities.sleep(1000); } } } function llamarAPIChatGPT(prompt) { const url = 'https://api.openai.com/v1/chat/completions'; const payload = { model: "gpt-4", messages: [ { "role": "system", "content": "Eres un asistente que genera respuestas persuasivas basadas en los datos proporcionados." }, { "role": "user", "content": prompt } ], max_tokens: 300, temperature: 0.7 }; const opciones = { method: 'post', contentType: 'application/json', headers: { 'Authorization': `Bearer ${OPENAI_API_KEY}` }, payload: JSON.stringify(payload) }; try { const respuesta = UrlFetchApp.fetch(url, opciones); const datos = JSON.parse(respuesta.getContentText()); return datos.choices[0].message.content.trim(); } catch (error) { Logger.log('Error al llamar a la API de OpenAI: ' + error); return 'Error al generar la respuesta.'; } Logger.log('Procesando fila: ' + fila); }