PythonでpyChatGPTを用いてChatGPTを使用する

スポンサーリンク

PythonでpyChatGPTを用いてChatGPTを使用してみます。

今回はpyChatGPTを用います。このライブラリ・モジュールはPythonの標準ライブラリではありませんので、事前にインストールする必要があります。

Python

今回のPythonのバージョンは、「3.8.5」を使用しています。(Windows10)(pythonランチャーでの確認)

■セッション トークン(session token)を取得する

まずはセッション トークン(session token)を取得します。取得しますので、今回はWebブラウザのGoogleChromeを用います。GoogleChromeで「Chat OpenAI – ChatGPT(https://chat.openai.com/chat)」にアクセスします。この時にOpenAI アカウントでのログインが必要になります。

アクセス後、Google Chromeデベロッパーツールを起動します。起動する場合はWindowsの場合F12キーを押します。Macの場合はCommand+Option+Iキーを押します。

起動後、「Application」をクリックします。「Application」は「>>」に隠れている場合があります。クリック後、「Storage」から「Cookies」をクリックします。クリックすると、「https://chat.openai.com/」のURLが表示されます。こちらの表示されたURLをクリックします。

クリックすると「Name」で「Cookies」の一覧が表示されます。この中に「__Secure-next-auth.session-token」というNameがあります。このNameの「Value」をコピーします。コピーした情報を保存しておきます。これで準備は完了となります。

■pyChatGPTを用いてChatGPTを使用する

完了後、pyChatGPTを用いてChatGPTを使用するスクリプトを書いていきます。

■コード

import pyChatGPT

Session_token = "保存したセッション トークン(session token)"

Session_api = pyChatGPT.ChatGPT(session_token=Session_token)

request = input("Your_query: ")

response = Session_api.send_message(request)

print(response)

まずはimportでpyChatGPTモジュールを呼び出します。その後、Session_tokenという変数を定義し、その中に取得したセッション トークン(session token)を格納します。

格納後、Session_apiという変数を定義し、その中でpyChatGPT.ChatGPT()を用います。括弧内には引数,パラメータ(session_token=)としてSession_token変数を渡します。これでセッション トークン(session token)を用いてChatGPTと繋がる状態を作ることができました。

その後、requestという変数を定義し、その中でinput()を用います。これでキーボードに入力したデータを受け付けて、データをrequestに格納します。

格納後、responseという変数を定義し、Session_api.send_message()を用います。括弧内には引数,パラメータとしてrequest変数を渡します。これで入力したデータが格納されたrequestをChatGPTにメッセージとして送信します。送信後、返信された情報がrequest変数に格納されます。

最後にprint()でrequest変数内の情報を出力します。

■実行・検証

このスクリプトを「Chat_test.py」という名前で、Pythonが実行されている作業ディレクトリ(カレントディレクトリ)に保存し、コマンドプロンプトから実行してみます。

実行してみるとまずGoogleChromeが自動的に起動します。起動後ChatGPTにアクセスされ、アクセス後コマンドプロンプト上にキーボードを用いてデータを入力するように求められます。求められますので、ChatGPTに対しての質問を入力します。入力後、しばらくすると質問にする回答がコマンドプロンプト上に出力されます。この間、バックではGoogleChrome上でChatGPTが動いている状態となります。なお、今回は日本語で質問を入力しましたが、返信は日本語で出力されていることを確認できました。

コメント

タイトルとURLをコピーしました