openAIのAPIキーの取得とPython openaiモジュールの動作確認メモ
ChatGPTで話題のOpenAI社が提供するAPIキーを取得し、Pythonからopenaiモジュールの動作確認を行ってみました。APIキーの取得にはOpenAI社のホームページでの会員登録を行います。登録後のフリートライアル期間(5ドル分)は無料でお試しできますがそれ以降の利用は有料となります。
詳しい料金体系はOpenAI社のホームページから確認できます。
実行環境: macOS Python3.9
openAIのAPIキーの取得
最初にopenai.comの下記のアドレスを開いていAPIキーの取得の登録を行います。
「Get started」をクリック。
https://openai.com/product
Create your accountページではメールアドレス、もしくはGoogleアカウント、Microsoftアカウントのいずれかで登録が行えます。今回はメールアドレスでの登録を行いました。メールアドレスを入力して「Continue」をクリック。
登録料のパスワードを入力して「Continue」をクリック。
登録したメールアドレスにOpenAI社から確認メールが届きます。
メール内のリンク先のページを開き、「Verify email address」をクリック。
Tell us about youページで名と姓を入力します。
SMS認証にて登録の確認を行います。
携帯番号を登録して「Send code」をクリック。
携帯のショートメッセージで受信した番号をEnter codeに入力します。
コード入力後にOpenAIの会員webページがログインした状態で自動で開かれます。
ページ右上の[Personal]-[View API keys]をクリックします。
API keysページにて「+ Create new secret key」をクリック。
これでAPIキーが生成されます。キーの右側のボタンでコピーします。
コピーしたAPIキーは忘れないよう保管しておきましょう。次にこのAPIキーを使ってプログラムを生成します。
これでユーザー登録とAPIキーの取得は完了です。
Python openaiモジュールの動作確認
Python、openaiモジュールのインストール
openaiモジュールはpipコマンドからインストールします
$ pip install openai
最初に先ほど取得したAPIキーを環境変数に設定します。
.bash_profileに以下のコードを追加します。
export OPENAI_API_KEY="取得したAPIキーを入力してください"
設定を反映させます。
$source .bash_profile
以下はopenaiモジュールを使った簡単なchat、text、imageの生成の例です。
・gpt-3.5-turboモデルを使用した例
import os import openai # APIキーを取得 openai.api_key = os.environ["OPENAI_API_KEY"] # 質問の返答をresに代入 res = openai.ChatCompletion.create( model="gpt-3.5-turbo", messages=[ {"role": "user", "content": "YMOについて教えてください"}, ], ) # 返答を出力 print(res.choices[0]["message"]["content"])
[出力結果]
YMOとは、Yellow Magic Orchestraの略称で、日本の電子音楽バンドの一つです。バンドは、1978年に高橋幸宏、坂本龍一、細野晴臣の3人で結成され、ヒット曲「テクノポリス」や「リューシー・スペシャル」などを生み出しました。YMOは、日本の音楽シーンに大きな影響を与え、世界的な知名度も高く、特にシンセサイザーを用いた独自のサウンドが特徴とされています。また、メンバーたちは、ソロ活動やプロデュース業などでも活躍しています。
・text-davinci-003モデルを使用した例
import os import openai # APIキーを取得 openai.api_key = os.environ["OPENAI_API_KEY"] # 質問の返答をresに代入 res = openai.Completion.create( model="text-davinci-003", prompt="AIが今後の経済に及ぼす影響力とまたそれによって生まれる問題点を教えてください", max_tokens=1024, temperature=1, ) # 返答を出力 print(res.choices[0].text)
[出力結果]
AIが今後の経済に及ぼす影響力は、大きなものとなると考えられます。AIを利用した自動化、大規模なデータの収集・分析、グローバル的なサービス拡大などを可能にするため、今後の経済活動が大きく変化すると考えられます。
しかし、AIを用いた経済活動を行うことによって、いくつかの問題点が生じることも予想されます。一つは、自動化による就業機会の減少です。AIの発展に伴い、多くの労働力が不要なことが予想されており、労働者がフォローしきれないほどの発展によって失業問題が発生する可能性があります。また、AIを使った自動処理により、不正行為や悪質なサービスが増える恐れもあります。AIが大量のデータを取り扱うため、プライバシーやセキュリティー問題も懸念されています。さらに、AIを使ったサービスがグローバルに拡大する中で、開発体制や法規制に問題が出てくることも考えられます。
・DALL·Eモデルを使用した例
import os import openai # APIキーを取得 openai.api_key = os.environ["OPENAI_API_KEY"] # 画像を生成 response = openai.Image.create( prompt="富士山と桜", n=1, size="512x512" ) #生成した画像のURL image_url = response['data'][0]['url'] #生成された画像のURLを表示 print(image_url)
[出力結果]
[参考サイト]
https://platform.openai.com/docs/introduction/overview
https://dev.classmethod.jp/articles/openai-api-chat-python-first-step/
https://okumuralab.org/~okumura/python/openai_api.html