me duele esa identación tan grande ⚠️
OpenAI API
¿Cómo usar la API de OpenAI en tu producto?
Conociendo la documentación de la API de OpenAI
Chat Completions: modelos de Chat de OpenAI
Parámetros de Chat Completions: temperature, top_p y n
Aplicación de ejemplo utilizando modelos de OpenAI
Buenas prácticas al usar modelos de OpenAI
Modelos de texto disponibles de OpenAI
Quiz: OpenAI API
Fine-tuning de modelos de OpenAI
¿Por qué hacer fine-tuning a modelos de OpenAI?
Modelos disponibles para fine-tuning en OpenAI
Costos de uso de OpenAI: tokenización de texto
Configuración de entorno local de OpenAI con Anaconda
Formato de datos para fine-tuning
Preparar datos para fine-tuning
Fine-tuning de modelo de OpenAI
¿Cómo usar el Playground de OpenAI para probar modelos?
Pruebas al modelo con fine-tuning
Optimizar el modelo: ajuste de parámetros en Playground
Quiz: Fine-tuning de modelos de OpenAI
Integración de modelo a aplicación de chat
¿Cómo crear un chatbot con Telegram?
Procesando la entrada del usuario para el chatbot
Prueba de envío de mensajes del chatbot
Función main() del chatbot
Integración del modelo de OpenAI a Telegram
Manejo de errores y excepciones de la API de OpenAI
Quiz: Integración de modelo a aplicación de chat
Conclusión
Recomendaciones finales y proyectos alternativos con la API de OpenAI
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
En el mundo de la programación, una de las habilidades más valiosas es poder tomar datos de cualquier tipo y transformarlos en información útil y manejable. Este es el caso al procesar entradas de usuario en aplicaciones de mensajería como Telegram. Es aquí donde Python y su versatilidad entran en juego, como vamos a descubrir en este artículo educativo.
Crear un bot de Telegram puede parecer una tarea desafiante, pero con las herramientas adecuadas y una buena guía, es un proceso bastante directo. En este caso vamos a utilizar Python, un lenguaje de programación conocido por su simpleza y eficacia en una gran diversidad de proyectos, incluido el desarrollo de bots.
Para empezar, creamos un archivo llamado getUpdate.py
en Visual Studio Code. Este archivo será la piedra angular para manejar las entradas que recibamos en nuestro bot de Telegram.
- Para este propósito, se requieren dos librerías fundamentales:
- Requests: Para realizar solicitudes HTTP a la API de Telegram y recibir datos.
- Time: Que utilizaremos para manejar intervalos de tiempo entre las peticiones al servidor de Telegram para evitar el uso excesivo de recursos.
La función getUpdate
toma como parámetro el 'token' que funciona como identificador único de nuestro bot dentro de la plataforma de Telegram.
- Definimos la URL de la API de Telegram utilizando https://api.telegram.org/bot
, seguido del token proporcionado.
- Además, introducimos un parámetro llamado offset
, inicializado en None
, que más tarde nos servirá para especificar desde qué mensaje queremos obtener actualizaciones.
Para leer los mensajes que envían los usuarios a nuestro bot, creamos una función llamada print_new_messages
. Esta función realiza múltiples tareas:
- Inicia con un bucle while True
para hacer peticiones constantes a la API de Telegram.
- Utiliza la variable update
para almacenar los mensajes nuevos mediante la función getUpdate
.
- Revisa si la estructura result
del JSON (que contiene las actualizaciones) tiene elementos para iterar sobre ellos.
- Extrae información vital como el mensaje, el ID del usuario y el nombre de usuario (username) a partir del JSON recibido.
- Imprime en la consola la información de forma clara y estructurada, asignando a offset
el indicador del último mensaje procesado más uno (update_id + 1
), para continuar con la siguiente actualización.
Es crucial no compartir el token de nuestro bot públicamente para mantener la seguridad. Se recomienda tratarlo como una variable de entorno o guardarlo en un lugar seguro que sólo el desarrollador pueda acceder.
Después de corregir cualquier error tipográfico en el código y asegurarnos de que no hay problemas al ejecutarlo, estaremos listos para comenzar a procesar entradas y responder a los usuarios.
La implementación de estos procedimientos no sólo nos permite tener un canal de comunicación eficiente con los usuarios sino también posibilita la automatización de tareas y la integración con otras funcionalidades que podemos desarrollar a futuro. Esta es una muestra de cómo Python facilita la creación de herramientas que interactúan con la web y los servicios de mensajería instantánea.
Recuerda, este es sólo el comienzo del proceso. En las próximas etapas, integraremos todo este trabajo en la función principal de nuestro proyecto para darle vida a nuestro bot de Telegram. Cada paso que damos es un aprendizaje que nos acerca más a la meta. Entonces, ¡manos a la obra!
Y tú, ¿estás preparado para dar el siguiente paso y continuar aprendiendo? ¡Anímate! Cada línea de código que escribes te acerca más al fascinante mundo del desarrollo de bots y la automatización.
Aportes 5
Preguntas 1
me duele esa identación tan grande ⚠️
Dejo mi codigo con comentarios si alguien se perdio po que significa cada linea:
import requests
import time
def get_updates(token, offset=None):
# definimos url
url = f"https://api.telegram.org/bot{token}/getUpdates"
# asignamos params desde offset
params = {"offset": offset} if offset else {}
# obtenemos la respuesta http GET
response = request.get(url,params =params)
# devolvemos en un JSON
return response.json()
def print_new_messages(token):
# el siguiente por default no existe
offset = None
# Para que haga peticiones siempre
while True:
# obtenemos respuestas
updates = get_updates(token,offset)
# validamos que hayan resultados desde http GET
if "result" in updates:
#imprimimos todas las respuestas
for update in updates["result"]:
message = update["result"]
id = message["from"]["id"]
username = message['from']["first_name"]
text = message.get("text")
print(f"Usuario: {username}({id})")
print(f"Mensaje: {text}")
print("-"*20)
# Pasar al siguiente
offset = update["update_id"]+1
time.sleep(1)
token = "TELEGRAM_TOKEN"
print_new_messages(token)
Que tal la opción de ver primero el resultado final para ir entendiendo mejor lo que se esta haciendo en cada línea de código?
message = update[‘result’]
#me marca un error de clave, lo resolví así:
message = update[‘message’]
por que telegram y no whatapp? ,nos guste o no la mayoria de la gente usa whatapp ahi estan los clientes
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?