ChatGPTへのプロンプトをPythonで書いてみる
ChatGPTに代表される生成AIは、日常生活において、さまざまな場面で活用され、その活用の幅は今後さらに広がっていくことでしょう。そんな中、「生成AIに送るプロンプトをどのように書くか」が、課題となっています。
この記事では、ChatGPTに送るプロンプトをPythonで書く方法を紹介します。
• プロンプト例
まず、以下のような、Markdown記法で記述したプロンプトを考えます。
以下の目的、対象者、テーマ、制約条件に基づいて、文章を書いてください。
#目的
読者にとって興味深いトピックを提案し、QOLを高めるきっかけとなる有益な情報を提供する。
#対象者
10歳から12歳の、山梨県在住の小学生
#テーマ
生成AIの時代において、QOL向上の観点から、人間が自分で文章を書くことの有意性について。
#制約条件
•文字数は250字程度。
•テキスト形式で出力すること。
•読みやすさを重視し、簡潔で明確な表現を使うこと。
•以下のキーワードを本文中に使用すること。
#キーワード
•甲府市
•武田信玄
•県庁
•韮崎観音
• Pythonで記述した例
上記の例と同じ内容のプロンプトをPythonで記述することを考えます。以下に、例を示します。
[Pythonのコード]keywords = ['甲府市', '武田信玄', '県庁', '韮崎観音']
def exe(self):
 message = '''
あなたは、プロのWebライターです。
以下の目的、対象者、テーマ、制約条件に基づいて、文章を書いてください。
#目的
読者にとって興味深いトピックを提案し、QOLを高めるきっかけとなる有益な情報を提供する。
#対象者
10歳から12歳の、山梨県在住の小学生
#テーマ
生成AIの時代において、QOL向上の観点から、人間が自分で文章を書くことの有意性について。
#制約条件
•文字数は250字程度。
•テキスト形式で出力すること。
•読みやすさを重視し、簡潔で明確な表現を使うこと。
•self.keywords のキーワードを本文中に使用すること。
'''.strip()
 #print(self.keywords)
 print(message)
obj = prompt()
obj.exe()
このコードをコマンドプロンプトで実行すると、以下のように表示されます。
つまり、このコードは、ChatGPTへのプロンプト(メッセージ)を表示するプログラムです。
• ChatGPTに送ってみる
#PythonのコードをコピペしてChatGPTに送ってみました。ChatGPTは、下図のような、通常のプロンプトと同様の答えを返してくれました。
なぜPythonで書いたのか
コードの中で、keywords = ['甲府市', '武田信玄', '県庁', '韮崎観音']
という記述によってキーワードを指定しています。そして、「•self.keywords のキーワードを本文中に使用すること。」という記述で、それらキーワードを参照しています。こうすることで、参照関係を明確にするのが、Pythonで書いた狙いでした。
毎回うまくいくとは限らない
何回かChatGPTにコードを送ってみましたが、うまくいかない場合もありました。たとえば、プロンプトの内容をそのまま出力するだけで、答えを出力しないことがありました。
• まとめ
ChatGPTに送るプロンプトをPythonで書いてみました。変数や関数やクラスなどの、プログラミング言語の機能を使うことで、ChatGPTにより明確に意図を伝えられるかもしれません。
• 関連記事
ad: