import openai import tweepy import os from transformers import AutoTokenizer, pipeline # Autenticación de Twitter def authenticate_twitter(): auth = tweepy.OAuth1UserHandler( consumer_key=os.getenv('TWITTER_API_KEY'), consumer_secret=os.getenv('TWITTER_API_SECRET_KEY'), access_token=os.getenv('TWITTER_ACCESS_TOKEN'), access_token_secret=os.getenv('TWITTER_ACCESS_TOKEN_SECRET') ) api = tweepy.API(auth) return api # Cargar y preparar el tokenizador tokenizer = AutoTokenizer.from_pretrained("gpt2") # Asignar el token de padding al token de fin de secuencia tokenizer.pad_token = tokenizer.eos_token # Función para generar un tweet usando GPT-2 def generate_tweet(): try: # Tokenización con truncamiento y padding inputs = tokenizer("Genera un tweet divertido sobre IA", max_length=50, truncation=True, padding=True) # Generación de texto generator = pipeline("text-generation", model="gpt2") tweet = generator(inputs['input_ids'], max_length=50, num_return_sequences=1)[0]['generated_text'] return tweet except Exception as e: print(f"Error al generar el tweet: {e}") return None # Publicar el tweet en Twitter def post_tweet(tweet, api): try: api.update_status(tweet) # Publica el tweet en Twitter print("Tweet publicado correctamente.") except Exception as e: print(f"Error al publicar el tweet: {e}") # Función principal para ejecutar el script def main(): api_twitter = authenticate_twitter() # Autenticación con Twitter tweet = generate_tweet() # Generar el tweet if tweet: # Verifica si el tweet fue generado correctamente post_tweet(tweet, api_twitter) # Publicar el tweet else: print("No se pudo generar un tweet.") # Iniciar el programa if __name__ == "__main__": main()