Integre Google Sheets con Chat GPT para generar biografías de contactos de CRM

 
Nota editorial: ganamos una comisión por los enlaces de socios en nuestro sitio. Los encargos no afectan las opiniones o valoraciones de nuestros editores.

En esta publicación de blog, le mostraré cómo generar biografías breves para sus contactos de CRM utilizando Google Sheets y el modelo de lenguaje GPT-3.5 Turbo. 

Creé una secuencia de comandos que le permite pegar datos de CRM en una hoja de Google y mi secuencia de comandos podrá leer los encabezados de las columnas y los datos correspondientes para cada contacto. ¡No importa cuántas columnas de datos tenga o el orden en que se encuentren las columnas!

Siga las instrucciones para implementar esto en su propia hoja de Google.

Paso 1: crea una nueva hoja de Google

Vaya a https://docs.google.com/spreadsheets, cree una hoja en blanco y asígnele un nombre.

Agregue la etiqueta Bios a la celda A1 y pegue sus datos de CRM en la celda B1, incluidos los encabezados. No se preocupe si los encabezados de sus columnas son diferentes a los míos: el script puede manejarlo. 

Este script está destinado a manejar numerosos puntos de datos para cada contacto. Si sólo proporcionas el nombre y el correo electrónico, no esperes biografías estelares.

La columna A será donde generaremos la BIOS con el script, así que la dejaremos en blanco por ahora.

Puedes usar los datos simulados que usé para mi demostración con este enlace.

Paso 2: abra el editor de secuencias de comandos

Vaya a "Extensiones" en la barra de menú superior y seleccione "Apps Script".

 

Esto abre el Editor de secuencias de comandos a un proyecto sin título con una función en blanco en su interior. 

Cambie el nombre de su proyecto y elimine la función en blanco

Paso 3: pegue mi script

Copie el siguiente script y péguelo en el editor. Asegúrate de reemplazar TU_API_KEY con su propia clave API GPT-3.


function generateBioForRow() { // Accede a la hoja de cálculo activa y a la hoja constante de celda activa = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); const activeCell = SpreadsheetApp.getActiveRange(); const número de fila = activeCell.getRow(); // Obtener los encabezados (nombres de las columnas) y el número de columnas const headers =sheet.getRange(1, 1, 1,sheet.getLastColumn()).getValues()[0]; const numColumns = encabezados.longitud; // Construya el mensaje GPT-3 dinámicamente usando todos los encabezados y valores de las columnas let request = "Le proporcionaré datos de CRM sobre una persona. Quiero que escriba una breve biografía sobre ellos usando estos datos. Incluya solo información que sea a partir de los datos (no inventes nada). Mantén tu respuesta por debajo de 70 tokens.:\n"; for (let col = 0; col < numColumns; col++) { encabezado constante = encabezados[col]; valor constante = hoja.getRange(rowNum, col + 1).getValue(); mensaje += `${encabezado}: ${valor}\n`; } // Definir la clave API, el modelo y otros parámetros para la llamada API GPT-3 const API_KEY = "YOUR_API_KEY"; modelo constante = "gpt-3.5-turbo"; temperatura constante = 0,2; // Establecer un valor más bajo para respuestas más deterministas const maxTokens = 100; // Establece max_tokens un poco más alto de lo que dijiste en tu mensaje para darle un poco de espacio // Configura el cuerpo de la solicitud con los parámetros dados const requestBody = { "model": model, "messages": [ { "role" : "system", "content": "Eres un asistente útil". }, { "rol": "usuario", "contenido": mensaje }, ], "temperatura": temperatura, "max_tokens": maxTokens }; // Configure las opciones de solicitud con los encabezados requeridos const requestOptions = { "method": "POST", "headers": { "Content-Type": "application/json", "Authorization": "Bearer " + API_KEY } , "carga útil": JSON.stringify(requestBody) }; // Enviar la solicitud al punto final de la API GPT-3 para su finalización const respuesta = UrlFetchApp.fetch("https://api.openai.com/v1/chat/completions", requestOptions); // Obtener el cuerpo de la respuesta como un objeto JSON const ResponseBody = JSON.parse(response.getContentText()); // Extrae el texto generado de la respuesta const bio = ResponseBody.choices[0]["message"]["content"]; // Devuelve la biografía generada return bio; }
				
					function generateBioForRow() { // Accede a la hoja de cálculo activa y a la hoja constante de celda activa = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); const activeCell = SpreadsheetApp.getActiveRange(); const número de fila = activeCell.getRow(); // Obtener los encabezados (nombres de las columnas) y el número de columnas const headers =sheet.getRange(1, 1, 1,sheet.getLastColumn()).getValues()[0]; const numColumns = encabezados.longitud; // Construya el mensaje GPT-3 dinámicamente usando todos los encabezados y valores de las columnas let request = "Le proporcionaré datos de CRM sobre una persona. Quiero que escriba una breve biografía sobre ellos usando estos datos. Incluya solo información que sea a partir de los datos (no inventes nada). Mantén tu respuesta por debajo de 70 tokens.:\n"; for (let col = 0; col < numColumns; col++) { encabezado constante = encabezados[col]; valor constante = hoja.getRange(rowNum, col + 1).getValue(); mensaje += `${encabezado}: ${valor}\n`; } // Definir la clave API, el modelo y otros parámetros para la llamada API GPT-3 const API_KEY = "YOUR_API_KEY"; modelo constante = "gpt-3.5-turbo"; temperatura constante = 0,2; // Establecer un valor más bajo para respuestas más deterministas const maxTokens = 100; // Establece max_tokens un poco más alto de lo que dijiste en tu mensaje para darle un poco de espacio // Configura el cuerpo de la solicitud con los parámetros dados const requestBody = { "model": model, "messages": [ { "role" : "system", "content": "Eres un asistente útil". }, { "rol": "usuario", "contenido": mensaje }, ], "temperatura": temperatura, "max_tokens": maxTokens }; // Configure las opciones de solicitud con los encabezados requeridos const requestOptions = { "method": "POST", "headers": { "Content-Type": "application/json", "Authorization": "Bearer " + API_KEY } , "carga útil": JSON.stringify(requestBody) }; // Enviar la solicitud al punto final de la API GPT-3 para su finalización const respuesta = UrlFetchApp.fetch("https://api.openai.com/v1/chat/completions", requestOptions); // Obtener el cuerpo de la respuesta como un objeto JSON const ResponseBody = JSON.parse(response.getContentText()); // Extrae el texto generado de la respuesta const bio = ResponseBody.choices[0]["message"]["content"]; // Devuelve la biografía generada return bio; }
				
			

Paso 4: guarde y ejecute el script

Guarde el script haciendo clic en "Guardar proyecto" en el Editor de scripts.

 

Ahora regresa a tu hoja de Google. 

Haga clic en la celda A2 y ejecute esta función: =generateBioForRow(). 

El script generará una breve biografía basada en los datos de CRM en la fila seleccionada y devolverá el texto de la biografía.

Recomiendo ajustar el texto para que puedas ver la biografía en el celular. Para hacer eso, haga clic en el botón del menú de ajuste de texto >> y luego haga clic en el icono de ajuste, como se ve en la imagen a continuación.

Aquí está la biografía envuelta:

(estos son datos falsos/de demostración)

Puede copiar y pegar la fórmula generateBioForRow() en todas sus filas para generar biografías para todos los contactos. Obviamente, tenga en cuenta los límites de datos de Open AI.

Paso 5: explora y experimenta

Intente ejecutar el script con diferentes datos de CRM para ver cómo varían las biografías generadas. Siéntase libre de personalizar el script y experimentar con diferentes parámetros de GPT-3. Practique la integración con Zapier o publique su propia aplicación web utilizando Google Sheets.

Conclusión

Ahora sabe cómo generar biografías breves para sus contactos de CRM utilizando Google Sheets y GPT-3. Ya sea que esté administrando un equipo de ventas, manteniendo una base de datos de clientes o ejecutando una campaña de marketing, este script es valioso para generar contenido personalizado y atractivo. Disfrútelo y no olvide suscribirse a continuación para recibir contenido líder en la industria antes de su publicación.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Suscríbete a nuestro boletín

Recibe actualizaciones y aprende de los mejores

Compartir esta publicacion

Más para explorar