やろうと思った動機
ざっくり言うと、
「ブログ記事をAIに書いてもらって、最小限の確認や手直しで魅力的なコンテンツを作ることができれば、ブログからのアフィリエイトや広告収入で稼げるんじゃないか」
でした。
やってみての結果
まず、最初に結論書いておくと
- 記事の自動作成は成功しました ※そこそこ苦労しました
- 記事の自動投稿も成功しました ※そこそこ苦労しました
- 魅力的なコンテンツの自動生成は成功してません ※でもやれるんじゃないかと思うので検証中です
- (残念ながら)本記事は自動投稿ではありません
です。
ただ、それをやろうとする過程でわかったこと、得られたものは多かったです。一部ですが、
- ChatGPT(生成AI)は文章作成だけじゃなく、独学(特にプログラミング)の相棒として優秀であることがわかった
- コーディングの大枠を作ってくれるのである程度知識があればローコードツールとしても使える
- エラーの原因を調べる際も範囲をだいぶ絞ってくれるので、動作検証が非常に捗る
- APIの使い方やライブラリ、実際に動かすのに関連するサービス(Google Coloboratoryなど)について詳しくなっていく
- プログラミングや周辺サービスの知識が付くと、「こういうことできるんじゃない?」が出てくるので、その中から「これやってみたい」が自然に生まれる。一言で言えばワクワクする。
同じように感じる人もいるんじゃないか、と思うので、自身のアウトプットの場として/それを受け取ってワクワクする人が増えてくれたらいいな、と思っています。
実際のコード公開
お待たせしましたが本題です。ChatGPTに「OpenAI APIとWordPressのRest API エンドポイントを用いて、指定したプロンプトを使ってChatGPTによる文章の生成を行なった上でWordPressに下書きとして投稿をする」pythonプログラムの作成をお願いしました。
実際には一発ではできず、それなりにやり取りがあったのですが、最終的に出来上がったコードがこちらです。
!pip install requests
!pip install openai
import requests
import openai
# WordPressのREST APIエンドポイント
endpoint = 'https://{yourblogdomain}/wp-json/wp/v2/posts'
# ユーザー名とパスワード
username = 'yourid'
password = 'yourpassword'
openai.api_key = ""
# ChatGPTに渡す文章のプロンプト
prompt_text = ""
# ChatGPT APIを呼び出し、文章を生成
response = openai.Completion.create(
engine="text-davinci-002", # GPT-3.5-turboエンジンを使用
prompt=prompt_text,
max_tokens=100, # 生成する文章の最大トークン数
temperature=0.7, # 生成の多様性を制御(0.2が堅い、1.0がランダム)
)
# 生成された文章を取得
generated_text = response.choices[0].text.strip()
# ブログ記事の情報を作成
post_data = {
'title': 'title', # 記事のタイトル
'content': generated_text, # 記事の本文
'status': 'draft', # 記事の公開ステータス (publishで公開、draftで下書き)
}
# WordPressにブログ記事を作成
response = requests.post(endpoint, auth=(username, password), json=post_data)
# レスポンスを確認
if response.status_code == 201:
print("ブログ記事が作成されました。")
else:
print("ブログ記事の作成に失敗しました。エラーコード:", response.status_code)
※ログイン情報やAPIキーは直接コードに書くとセキュリティ的に危険なので環境変数と言うもので別に格納する必要があるようです。
自動で書いてもらった記事
せっかくなので上記コードを使って環境変数についてChatGPTに記事を書いてもらいました。
プロンプトは
プログラミングにおける環境変数の概要とその必要性について具体的な事例も交えて教えてください。その際、わかりやすく見出しと本文を分けて文章を作ってください。
としました。
結果はこちらです。
ご覧の通り、辞書か!と言うくらい堅苦しい感じで、一発でなかなかそのまま使えるものにはならなそうです。但し、ChatGPT自体の機能向上はこの瞬間も行われていますし、コードの書き方次第でも最終的な出力は変わりそうです。
まだまだやれることが多く、楽しみです。
この記事も何かあれば更新していくつもりですが、今日はこの辺で。
コメント