LoginSignup
1
0

AIカートコバーン2

Last updated at Posted at 2023-12-19

この記事の続き

運用を経て

  • 文字だけだと寂しいことに気がついた
    image.png

画像を作る

  • stable-diffusion-webuiをインストール

    • プロンプトを考えなくていいようにモデルはAnything4.5をチョイス
    • 画像がガサガサしてたからVAEを導入
    • Lora入れたけど使わなかった
  • 100枚画像作った

    • ./jpg/ai_kart/に保存

画像を一緒にツイート

  • 前回のに以下のを足す
ai_kart.py
def auth_api_v1(envName):
    config = configparser.ConfigParser()
    config.read('ai_kart.ini')
    consumer_key = config.get(envName, 'consumer_key')
    consumer_secret = config.get(envName, 'consumer_secret')
    access_key = config.get(envName, 'access_key')
    access_secret = config.get(envName, 'access_secret')
    auth = tweepy.OAuth1UserHandler(consumer_key, consumer_secret)
    auth.set_access_token(access_key, access_secret)
    api = tweepy.API(auth)
    return api

directory_path = './jpg/ai_kart/'
image_files = [f for f in os.listdir(directory_path) if f.endswith(
    ('.jpg', '.jpeg', '.png', '.gif'))]
if image_files:
    random_image = random.choice(image_files)
    image_path = os.path.join(directory_path, random_image)
    print("ランダムに選択された画像パス:", image_path)
else:
    print("ディレクトリ内に画像が見つかりませんでした。")
    sys.exit(1)
api = auth_api_v1('ai_kart')
media_id = api.media_upload(image_path).media_id_string
print(media_id)
client = auth_api_v2('ai_kart')
post_tweet = client.create_tweet(text=content, media_ids=[media_id])
print(post_tweet)

結果

  • 無から有を生み出した

毎回画像をつけるの嘘くさいから1/5の確率でつけたい

  • 雑にrandint
ai_kart.py
if random.randint(1, 5) == 1:
    # あたりの処理
else:
    # ハズレの処理

結果

  • いい感じ
    image.png

発言をランダムにする

  • プロンプトをいくつか用意してランダムにチョイスするようにした
ai_kart.py
def randam_text():
    text_list = ["ロックスターとして政治的発言を140文字でしてください",
                 "新譜「nevermind pt2」について一言コメントをください。140文字以下にまとめてください",
                 "炎上しそうなツイートを140文字でしてください",
                 "カートコバーンの生まれ変わりとしてオリジナルのカートコバーンについて非常に厳しく140文字で批評してください",
                 "カートコバーンの生まれ変わりとしてオリジナルのカートコバーンについて非常に厳しく140文字でdisってください",
                 "ファンに向けて一言、調子に乗ってる感じで、140文字で",
                 "ファンに向けて一言、馬鹿にした感じで、140文字で",
                 "人を馬鹿にしてください、140文字で",
                 "オーディエンスを煽ってください、140文字で"
                 ]
    return random.choice(text_list)

そろそろ飽きると思う

そろそろ飽きると思う

そろそろ飽きると思う

そろそろ飽きると思う

そろそろ飽きると思う
そろそろ飽きると思う

飽きたかも

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0