User Tools

Site Tools


comentarios_de_openai_a_partir_de_un_.csv

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
comentarios_de_openai_a_partir_de_un_.csv [2023/11/25 18:17] – created osocomentarios_de_openai_a_partir_de_un_.csv [2024/10/17 21:42] (current) – external edit 127.0.0.1
Line 1: Line 1:
 +==== Instalación de Dependencias: ====
  
-para probar, las envvars se pueden crear durante la sesión con +=== Instalar 'pip' para traer las dependencias ===
-<code bash>export OPENAI_API_KEY=sk-pzQ9l5oNpH</code>+
  
-para instalarla pernmanentemente, usar +<code bash>sudo apt install python3-pip</code>
-<code bash>sudo nano /etc/environment</code>+
  
-<code bash>sudo reboot</code>+=== Instalar la librería OpenAI ===
  
-comprobar con +<code bash>pip install openai</code>
-<code bash>env</code>+
  
-setear la hora para que crontab corra a la hora justa 
-<code bash>sudo timedatectl set-timezone America/Argentina/Buenos_Aires</code> 
  
-reiniciar la máquina o el cronjob+==== Configuración de Variables de Entorno: ====
  
-<code python= main.py>+ 
 +=== Crear las variables de entorno durante la sesión === 
 + 
 +<code>export OPENAI_API_KEY=sk-tuClaveSecretaAqui</code> 
 + 
 +==== Configuración Permanente de Variables de Entorno: ==== 
 + 
 +=== Editar el archivo de entorno === 
 + 
 +<code>sudo nano /etc/environment</code> 
 + 
 +=== Reiniciar el sistema para aplicar los cambios === 
 + 
 +<code>sudo reboot</code> 
 + 
 +=== Comprobar las variables de entorno === 
 + 
 +<code>env</code> 
 + 
 + 
 +==== El programa en sí ==== 
 + 
 +El código genera un comentario corto en base a las últimas 14 líneas de un archivo .csv con la cotización del dolar paralelo, que encuentra en internet (es de otro servicio que corre en otra VM y queda accesible desde internet). 
 + 
 +Lo piola es que uno podría por ejemplo pasarle otros resultados y decirle "redactame un párrafo en base a estos resultados" y enviarlo por mail. Lo interesante acá es poder hacer datos --> openai --> app 
 + 
 +Este es el código: 
 + 
 +<code python = main.py>
 import requests import requests
 from openai import OpenAI from openai import OpenAI
Line 27: Line 51:
 lines = response.text.splitlines()[-14:] lines = response.text.splitlines()[-14:]
  
-# Formatear las líneas y truncar los números+# Formatear las líneas y truncar los números a un entero
 formatted_lines = [] formatted_lines = []
 for line in lines: for line in lines:
Line 55: Line 79:
     file.write(apiresponse.choices[0].message.content + '\n')     file.write(apiresponse.choices[0].message.content + '\n')
 </code> </code>
 +
 +<WRAP center round info 60%>
 +''"role": "system"'' le da contexto al LLM de openai
 +</WRAP>
 +
 +
 +=== Ejecutar el script Python ===
 +
 +<code>python3 main.py</code>
 +
 +La respuesta se parece a esto:
 +
 +
 +<code>facundo@openai:~/weeklyPost$ cat output.txt</code>
 +
 +<WRAP center round box 100%>
 +¡El peso argentino sigue luchando contra el dólar! 😡 Hoy, la cotización sigue bajita, ¡un alivio y una esperanza para todos! 💪🇦🇷 #PesoArgentinoDevaluado #DólarEnDescenso 😌✨
 +</WRAP>
 +
 +==== Configuración de Crontab: ====
 +
 +
 +=== Setear la hora para que crontab corra a la hora justa ===
 +
 +<code>sudo timedatectl set-timezone America/Argentina/Buenos_Aires </code>
 +=== Crear el script de actualización ===
 +
 +<code>nano update.sh</code>
 +
 +**Contenido de ''update.sh'':**
 +<code bash = update.sh>
 +#!/bin/bash
 +cd /home/facundo/weeklyPost
 +python3 main.py
 +</code>
 +
 +
 +==== Configurar la tarea recurrente en crontab (Ejemplo: 22:30 todos los días) ====
 +
 +''crontab -e''
 +<code bash>
 +30 22 * * * /home/facundo/weeklyPost/update.sh
 +</code>
 +
 +==== Integración con Telegram: ====
 +
 +=== Crear el script para enviar mensajes a Telegram ===
 +
 +<code>nano sendmsg.sh</code>
 +
 +**Contenido de ''sendmsg.sh'':**
 +<code bash = sendmsg.sh>
 +#!/bin/bash
 +
 +TOKEN="160*********90:AAGGHbwa******************-iRUn2bOUsHympz6rI"
 +ID="-47*******"
 +current_time=$(date +%H%M)
 +current_date=$(date +%m%d)
 +MSG="Buenas! El resultado de hoy y en glorioso jpg. Ahora como buen argentino también opina https://repo.facundoitest.space/usdPagano/latest.jpg?v=${current_date}-${current_time} $(cat /home/facundo/weeklyPost/output.txt)"
 +URL="https://api.telegram.org/bot$TOKEN/sendMessage"
 +
 +curl -s -X POST $URL -d chat_id=$ID -d text="$MSG"
 +</code>
 +
 +<WRAP center round info 60%>
 +
 +''$(cat /home/facundo/weeklyPost/output.txt)'' le pasa el contenido del archivo de texto a la variable.
 +</WRAP>
 +
 +<WRAP center round info 60%>
 +El parámetro ''?v=${current_date}-${current_time}'' es para que Telegram no traiga el thumbnail desde el caché y de esta forma lo fuerza a generarlo de nuevo. Podría tener un valor random. Es más práctico esto que generar el archivo con un nombre distinto cada vez. Puedo linkearlo como ''latest.jpg'' desde cualquier lado.
 +</WRAP>
 +
 +
comentarios_de_openai_a_partir_de_un_.csv.1700936234.txt.gz · Last modified: 2024/10/17 21:42 (external edit)