見出し画像

PythonでChatGPTとAPI経由で会話するサンプルコード

OpenAIのChatGPTをAPI経由で操作して会話を行う方法について詳しく解説する方法を紹介する

OpenAI ChatGPT APIとは?

OpenAIのChatGPT APIは、自然言語理解と生成に特化したモデルを提供するクラウドベースのサービスです。このAPIを使用することで、アプリケーションやウェブサービスに簡単にテキストベースの会話機能を組み込むことができます。

APIキーの取得

  1. OpenAIアカウントの作成
    OpenAIのウェブサイトにアクセスし、アカウントを作成します。

  2. APIダッシュボードへのアクセス:ログイン後、ユーザーダッシュボードまたはAPIダッシュボードにアクセスします。

  3. APIキーの生成:ダッシュボードの「API Keys」セクションに移動し、「Create new key」ボタンをクリックします。

  4. キーの詳細:新しいAPIキーが生成され、画面に表示されます。このキーをコピーして、安全な場所に保存してください。一度画面を離れると、キーは再表示されないので注意が必要です。

4. キーの管理

  • キーの保護:APIキーはアクセス権を持つ重要な情報なので、安全に管理し、漏洩しないように注意してください。たとえば、環境変数に保存するなどの方法が推奨されます。

  • 利用制限:APIキーの使用状況や制限をダッシュボードで確認できます。予算オーバーを防ぐため、利用制限の設定を行うことも可能です。APIダッシュボードへのアクセス:ログイン後、ユーザーダッシュボードまたはAPIダッシュボードにアクセスします。


環境設定

APIを利用するためには、HTTPリクエストを送信できる環境が必要です。Pythonを例に取り、必要なライブラリのインストール方法を説明します。

pip install openai=0.28


Pythonを使ったAPIの使用例


以下のPythonスクリプトは、APIを使ってChatGPTに質問し、回答を取得する方法を示しています。

import openai

# APIキーの設定
openai.api_key = 'your-api-key'

# ChatGPTへの質問
response = openai.ChatCompletion.create(
    model="gpt-4-chat",
    messages=[
        {"role": "user", "content": "こんにちは、今日の天気は?"}
    ]
)

# 回答の出力
print(response['choices'][0]['message']['content'])

このスクリプトでは、`openai.ChatCompletion.create`メソッドを使用して、ChatGPTモデルに対して質問を送り、得られた回答を出力しています。コードの各部分について詳しく説明します。

コードの解説


1. ライブラリのインポート

import openai

この行は、Pythonプログラムで`openai`ライブラリを使用できるようにするために必要です。`openai`ライブラリは、OpenAIが提供するAPIとやり取りするための関数やクラスを含んでいます。

2. APIキーの設定

openai.api_key = 'your-api-key'

ここで`openai.api_key`にあなたのAPIキーを設定しています。このキーはOpenAIのAPIを利用する際に、あなたが認証されたユーザーであることを証明するために必要です。このキーを設定することで、以降のAPIリクエストが認証されます。

3. ChatGPTへの質問

response = openai.ChatCompletion.create(
    model="gpt-4-chat",
    messages=[
        {"role": "user", "content": "こんにちは、今日の天気は?"}
    ]
)

この部分はAPIリクエストを実際に行っています。`openai.ChatCompletion.create`メソッドを使用し、特定のパラメータを渡してリクエストを送信します。主要なパラメータは以下の通りです:

  • model: 使用するモデルの指定です。ここでは`gpt-4-chat`という最新のモデルを指定しています。このモデルは会話形式のテキスト生成に最適化されています。

  • messages: 会話の内容をリスト形式で指定します。各メッセージは辞書形式で、`role`と`content`を持ちます。`role`はそのメッセージがユーザーからのものか、システムからのものかを示し、`content`はメッセージの実際の内容です。

4. 回答の出力

print(response['choices'][0]['message']['content'])


この行は、APIからのレスポンスを取得し、その中から具体的な回答を抽出して出力します。レスポンスは複数の部分から構成される可能性があるため、`choices[0]`を使用して最初の選択肢を取り出します。その後、その選択肢の`message`キーにある`content`を取得しています。

このコードを実行すると、"こんにちは、今日の天気は?"という質問に対するChatGPTの回答がコンソールに表示されます。このプロセスはOpenAIのAPIを利用した基本的な対話生成の例であり、APIを用いた他の複雑なタスクにも応用できます。


まとめ

OpenAIのChatGPT APIを利用することで、アプリケーションに対話型の機能を追加することができます。APIを活用して、顧客サポート、教育、エンターテインメントなど、さまざまな分野での応用が期待されます。この記事が、APIの基本的な使い方とその可能性を理解する一助となれば幸いです。

この記事が気に入ったらサポートをしてみませんか?