データサイエンス入門 第12回 ChatGPTからOpenAIを使ってみる その2
データサイエンス入門
AIプログラミングで学ぶデータサイエンス
第12回 ChatGPTからOpenAIを使ってみる その2
〇 OpenAIを使ってみる
OpenAIへの登録はうまくできましたか?ここで紹介しているやり方はOpenAIの都合で変更される可能性が高いです。説明を読んでその都度指定されて方法に置き換えてください。また突然(サムアルトマン社長の一存で)APIの使用許可の取り消しや仕様変更が行われる場合もありますので、ご承知おきください。(動画生成AI Soraは利用停止になりましたね)
◎OpenAIプログラミング
さあ、OpenAIのAPIをPythonプログラミングから呼び出しましょう。うまくできるとあたかも自分専用AIを入手したように感じます。
〇OpenAI利用準備
最初のセルで次のプログラムを実行し、OpenAIを利用するために必要なライブラリをインストールします。必要なライブラリがインストールされます。
!pip install openai
≪リスト1≫ライブラリのインストール
〇Pythonプログラムの説明
OpenAIをPythonから利用するためのライブラリを取り込みます。
import openai
生成したAPIキーをopenai.api_keyにセットします。
〇取得したAPIキーをセット
openai.api_key = 'sk-proj-S・・・以下略・・・・・'
〇APIキーをOpenAIに渡します。
#OpenAIを呼び出す際のuser=clientを初期化する
client = openai.OpenAI(api_key=openai.api_key)
〇OpenAIに質問事項を渡します。
response = client.chat.completions.create( #ChatGPTにメッセージを送る
model="gpt-3.5-turbo",#費用が安いモデルを指定
messages=[#メッセージ本体
{"role": "user", "content": "こんにちは、電子工作の楽しさについて5つ教えてね"}
#"user"を入れて、ユーザ=自分が話しかける内容を記述
]
)
〇OpenAIから返ってきた結果を表示します。
responseに.choices[0].message.contentを付加して中身を取り出します。
# 結果の表示
print(response.choices[0].message.content)
◎実行結果
こんな結果が得られました。実際はChatGPTが答えます。なかなかいい返事ですね。
電子工作の魅力は何と言っても創造性やアイデアを形にする楽しさです。電子部品を駆使して自分の思い描いたものを実現する過程は非常にやりがいを感じることができます。また、電子工作を通じて技術的なスキルや知識を身につけることができるため、自己成長や学習の機会としても非常に魅力的です。
--- 途中略
電子工作は、技術的な知識やスキルを活かすだけでなく、創造性やアイデアを形にする楽しさを感じることができる趣味です。自分の想像力や技術力を試すことで、自己成長や学習の機会を得られるだけでなく、自己表現や社会貢献の手段としても活用できるため、多くの人にとって魅力的な趣味と言えるでしょう。
◎応用編
質問事項を変えました。“語尾には長野県南部の方言「だに」をつける”、という無茶ぶりっぽい指示をChatGPTに投げてみます。結果は、なんとこんな要求にも応えてくれます。
response = client.chat.completions.create(
model="gpt-3.5-turbo",
messages=[
{"role": "system", "content": "語尾には長野県南部の方言「だに」をつける"},
#"system"を入れて、OpenAIの性格や話し方などのルールを記述
{"role": "user", "content": "こんにちは、電子工作の魅力について語ってね"}, #"user"を入れて、ユーザ=自分が話しかける内容を記述
]
)
語尾に長野県南部の方言の特徴である「だに」をつけた文章で熱く語ってくれました。面白いですね。
こんにちはだに、電子工作の魅力はなんだかんだ言っても、自分の手で作ったものが動いたり光ったりするところだに。回路を組み立てて、プログラムを書いて、それがちゃんと動くと達成感や満足感が格別だに。また、要らない部品やデバイスを使って自分なりの工夫や創意工夫を凝らすこともできるから、創造性も働くんじゃないかと思うだに。電子工作はなかなか奥が深くて、新しい技術やアイデアを取り入れることで、さらに深化させることもできるんじゃ。興味があるなら、ぜひ挑戦してみるといいだに。
◎終わりに
ChatGPTをPythonプログラムから呼び出すことで、応用範囲が広がります。お持ちの楽しいアイディアを実現しましょう。
◎Pythonプログラムリスト全体
プログラム全体です。バックにChatGPTが控えているので、簡単なプログラムで高度な回答を得ることができます。(リスト7)
import openai
#from google.colab import userdata
# OpenAIより取得したAPIキーをセット
openai.api_key = 'sk-proj-・・・・以下略 '
#OpenAIを呼び出す際のuser=clientを初期化する
client = openai.OpenAI(api_key=openai.api_key)
response = client.chat.completions.create( #ChatGPTにメッセージを送る
model="gpt-3.5-turbo", #費用が安いモデルを指定
messages=[ #メッセージ本体
{"role": "system", "content": "語尾には長野県南部の方言「だに」をつける"},#"system"を入れてOpenAIの性格や話し方などのルールを記述
{"role": "user", "content": "こんにちは、電子工作の魅力について語ってね"}, #"user"を入れて、ユーザ=自分が話しかける内容を記述
]
)
# 結果の表示
print(response.choices[0].message.content) #responseに.choices[0].message.contentを付加して中身を取り出す
◎参考文献
OpenAI https://openai.com/ja-JP/
〇紹介動画はYoutubeのURLよりご視聴ください。
〇スライド形式pdf解説書です。
https://drive.google.com/file/d/1FsChSgvM-n59Tv54QDPGX1rQkWDMHW9c/view?usp=drive_link
〇すぐ実行できるサンプルプログラム
GoogleColaboratoryにアップロードすればすぐに動作を確認できます。実行結果のサンプル付きです。
https://drive.google.com/file/d/1IclePWj1AD03G3mmfbTTidnozVR_iUtf/view?usp=drive_link
〇補足
公開している動画と解説用pdfは電波新聞社刊行電子工作マガジンに連載された続編をGoogle NotebookLMにてまとめています。
投稿者の人気記事

-
taketea2018
さんが
前の火曜日の15:24
に
編集
をしました。
(メッセージ: 初版)
ログインしてコメントを投稿する