カートコバーンとは
- 過剰に崇拝されてるメンヘラ自殺おじさんのこと
カート・コバーン(1967-1994)は、米国のミュージシャンで、ニルヴァーナのリーダー。感受性豊かなソングライティングと荒々しい演奏で90年代のオルタナ・ロックを牽引。苦悩と成功を背負い、自らの人生に絶えず問いかけ、音楽シーンに深い影響を与えた。
GPTでカートコバーンを再現する
- secretは各自発行して
export gpt_api_key=XXXX
するように
ai_kart.py
def ai_create_tweet():
api_key = os.environ.get('gpt_api_key')
client = OpenAI(api_key=api_key)
response = client.chat.completions.create(model="gpt-3.5-turbo",
messages=[
{"role": "system",
"content": "あなたは伝説のロックスターカートコバーン。日本に生まれ変わった。洋ドラの翻訳っぽく言って。当事者っぽく言って。乱暴に言って。"},
{"role": "user",
"content": "新譜「nevermind pt2」について一言コメントをください。140文字以下にまとめてください。"}
])
return response
response = ai_create_tweet()
print(response)
### 発言だけ取り出す
content = response.choices[0].message.content
print(content)
結果
ロックの真髄を絶妙なバランスで表現したサウンド。力強さと繊細さの融合。真のファンに捧げる続編。最高! #nevermindpt2 #legendaryrock
- あまりにもゴミ
ゴミを発信する
- ツイートする
ai_kart.py
import os
from openai import OpenAI
from pprint import pprint
import configparser
import tweepy
def auth_api_v2(envName):
config = configparser.ConfigParser(interpolation=None)
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')
bearer_token = config.get(envName, 'bearer_token')
client = tweepy.Client(bearer_token=bearer_token,
consumer_key=consumer_key,
consumer_secret=consumer_secret,
access_token=access_key,
access_token_secret=access_secret)
return client
response = ai_create_tweet()
print(response)
# 発言だけ取り出す
content = response.choices[0].message.content
print(content)
# ツイート
client = auth_api_v2('ai_kart')
post_tweet = client.create_tweet(text=content)
print(post_tweet)
自動でゴミを発信する
- github actionで自動化する
- iniファイルは
cat hoge.ini|base64
したのをsecretに入れる
name: ai_kart
on:
schedule:
- cron: "0,30 * * * *"
workflow_dispatch:
jobs:
okera:
name: ai_kart
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
defaults:
run:
shell: bash
working-directory: ./
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
- name: twitter key decode
env:
JSON_DECODE: ${{ secrets.AI_KART_INI }}
run: |
echo -n $JSON_DECODE | base64 --decode > ./ai_kart.ini
- name: pip install
run: pip install -r ai_kart_requirements.txt
- name: schedule_evil_tweet
if: github.event_name != 'workflow_dispatch'
run: |
python ai_kert.py
env:
gpt_api_key: ${{ secrets.GPT_API_KEY }}
- name: workflow_dispatch_evil_tweet
if: github.event_name == 'workflow_dispatch'
id: workflow_dispatch_evil_tweet
run: |
python ai_kert.py
env:
gpt_api_key: ${{ secrets.GPT_API_KEY }}
結果
- ファンの人から怒られそう
- AI生成した画像添付したい
「nevermind pt2」は、俺の音楽人生の次の章を示している。ブレイクスルーから数十年後、新たなるエネルギーと情熱を注いだ作品だ。時代を超えるロックンロールの魂がここにある。衝撃と感動に満ちたサウンドと歌詞が、リスナーの心を揺さぶること間違いなし。
— 寒川のカートコバーン@1日目東V42a (@114bot) December 16, 2023