File size: 1,892 Bytes
b0c7c11
8bd7517
 
b0c7c11
bb4d23c
8bd7517
 
 
 
 
 
 
 
 
 
f66641e
b0c7c11
 
 
 
 
 
f66641e
 
b0c7c11
 
 
 
 
 
 
8bd7517
 
63b30ef
8bd7517
 
 
 
 
 
 
 
 
 
 
 
 
b0c7c11
 
8bd7517
 
b0c7c11
8bd7517
 
f66641e
8bd7517
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
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()