ChatGPTの意味とできること

まず結論から申し上げますと、ChatGPTとは「言葉を使って会話ができるコンピューターのしくみ」です。人の質問に対して、まるで本当に話しているかのように答えることができます。

なぜそんなことができるのかというと、大量の文章を学んで「こんなふうに返したらよさそう」と判断する頭のようなしくみを持っているからです。

たとえば、以下のようなことができます。

  • わからない言葉の意味を説明する
  • 文章を書いてくれる(手紙や作文など)
  • 「おはよう」と言えば「おはようございます」と返してくれる

つまり、ChatGPTは人と会話するのが得意なコンピューターの一種と考えるとわかりやすいです。

どうやって言葉を理解している?

ChatGPTは言葉を理解しているように見えますが、実は過去の文章をたくさん覚えていて、「次はこう言えばいいだろう」と考えているだけです。

たとえば「今日は寒いですね」と言われたら、「そうですね、上着を着たほうがいいですね」などと返すのは、似たようなやりとりを何千回も学んでいるからです。

人間のように気持ちがあるわけではありませんが、

  • よく使われる返し方を覚えている
  • 状況に合った言葉を選ぶよう工夫している
  • 難しい言葉をわかりやすく言い換える

このような工夫をすることで、人に近い応答ができます。

どんな使い方ができるの?

ChatGPTの使い方はとても広く、学校でもお店でも活用できます。たとえば、次のようなことが可能です。

  • 子どもの宿題を手伝う(ヒントだけ教える)
  • お店のよくある質問に自動で答える
  • 誰かが書いた文章をやさしい言葉に言い直す

このように、使う人に合わせて言い方を変えたり、便利な道具として活躍したりします。自動応答システムに使えば、人の代わりに対応することもできます。

Pythonってなに?どんなことができる?

結論から言うと、Pythonとは「コンピューターに仕事をお願いするための簡単な道具」です。子どもでも読みやすく、少ない言葉でたくさんのことができます。

理由は以下のとおりです。

  • 難しい言葉をあまり使わない
  • まるで話すように書ける
  • 世界中でたくさん使われていて、手本が多い

たとえば、「こんにちは」と返す自動応答を作るとき、Pythonならたった数行でできます。

なぜPythonと相性がいいのか

ChatGPTとつなぐためには、コンピューターに正確なお願いをする必要があります。Pythonはそれに向いているため、とても相性が良いです。

その理由は以下のとおりです。

  • 文字を読むのが得意(文章の処理がしやすい)
  • 決まった順番で仕事をさせるのが得意
  • ChatGPTのしくみに合った道具がそろっている

つまり、PythonはChatGPTと会話させるための「ぴったりな道具箱」のような存在です。

Pythonでできる自動応答の例

Pythonを使うと、次のような自動応答が作れます。

  • 名前を聞いたら返事をする
  • よくある質問に自動で答える
  • 「ありがとう」と言われたら「どういたしまして」と返す

このように、人の代わりに返事をしてくれるしくみがPythonで作れるのです。

APIってなに?やさしく説明

APIとは「こんなお願いをしていいよ、という入り口」のことです。

たとえば、お店の人に「メロンパンをください」と言うとメロンパンを出してくれるように、ChatGPTにも「この質問に答えてください」とお願いできます。

その入り口のことを、APIと呼びます。

  • コンピューターどうしのやりとりのルール
  • PythonからChatGPTにお願いするために使う
  • ルールに合った形でお願いしないと使えない

このように、APIはおしゃべりのルールを守るために必要なしくみです。

ChatGPT APIの使い方と手順

ChatGPT APIを使うには、いくつかの準備が必要です。

  1. OpenAI(ChatGPTを作った会社)に登録する
  2. 「APIキー」というカギをもらう
  3. Pythonの中でこのカギを使ってお願いを送る

APIキーとは、「私は正しく使いますよ」という証明のようなものです。このカギを使ってChatGPTにアクセスします。

PythonでAPIを動かす基本コード

次に、PythonでAPIを動かすための基本の流れです。

import openai

openai.api_key = "ここにあなたのAPIキー"

返事 = openai.ChatCompletion.create(
  model="gpt-3.5-turbo",
  messages=[
    {"role": "user", "content": "こんにちは"}
  ]
)

print(返事["choices"][0]["message"]["content"])

このコードでは「こんにちは」と話しかけて、その返事を画面に出します。これが基本のしくみです。

準備するもの一覧(環境・キーなど)

まずは自動応答システムを作るための準備を整えましょう。必要なものは以下のとおりです。

  • インターネットにつながるパソコン
  • Pythonが動く環境(例:WindowsやMac)
  • ChatGPTのAPIキー(OpenAIから取得)
  • Pythonの基本がわかること(少しで大丈夫です)

また、Pythonの便利な道具(ライブラリ)もインストールしておくと安心です。

pip install openai

これでAPIを動かす準備が整います。

Pythonで基本のコードを書く流れ

以下のような手順で、実際の自動応答システムを作成していきます。

  1. 必要なライブラリを読み込む(import)
  2. APIキーを設定する
  3. ユーザーからの入力を受け取る
  4. ChatGPTに送るメッセージを用意する
  5. ChatGPTからの返事を受け取り、表示する

実際のコード例も以下のようになります。

import openai

openai.api_key = "あなたのAPIキー"

while True:
    入力 = input("あなた:")
    if 入力 == "おわり":
        break

    返事 = openai.ChatCompletion.create(
        model="gpt-3.5-turbo",
        messages=[{"role": "user", "content": 入力}]
    )

    print("ChatGPT:" + 返事["choices"][0]["message"]["content"])

このコードは、話しかけるたびにChatGPTが返事をくれるしくみです。「おわり」と入力すると終了します。

チャット形式の応答を作るコツ

チャット形式をうまく作るためには、いくつかのコツがあります。

  • 会話の流れを保存しておく
  • 前のメッセージも含めてChatGPTに送る
  • ユーザーとアシスタントの区別をはっきりさせる

たとえば、以下のように複数のメッセージを送ると、流れのある会話ができます。

messages = [
    {"role": "user", "content": "こんにちは"},
    {"role": "assistant", "content": "こんにちは!どうしましたか?"},
    {"role": "user", "content": "今日は何をしたらいい?"}
]

このようにすることで、ChatGPTは「前に話したこと」をもとに返事をしてくれるのです。

以下は、チャット形式の自動応答を簡単に動かすための実践的な例です。

import openai

openai.api_key = "あなたのAPIキー"

メッセージ = [
    {"role": "system", "content": "あなたは親切なアシスタントです。"}
]

while True:
    入力 = input("あなた:")
    if 入力 == "おわり":
        break

    メッセージ.append({"role": "user", "content": 入力})

    返事 = openai.ChatCompletion.create(
        model="gpt-3.5-turbo",
        messages=メッセージ
    )

    応答 = 返事["choices"][0]["message"]["content"]
    print("ChatGPT:" + 応答)

    メッセージ.append({"role": "assistant", "content": 応答})

このコードでは、前の会話の内容をすべて記録して、より自然な応答を目指しています。

ChatGPTとPythonで自動応答を作るときに、よくあるトラブルとその対策を紹介します。

APIキーがうまく動かない

  • APIキーが間違っていると動きません
  • キーをコピーする時に余分なスペースが入らないように注意しましょう
  • キーが無効になっていないか確認します

メッセージの形式が違うと言われる

  • messagesはリスト形式で、役割(role)と内容(content)を正しく書きましょう
  • 文字のカギ(”)が全角になっているとエラーになります

料金がかかるか心配

  • ChatGPT APIは使った分だけ料金がかかります
  • はじめに無料の枠がありますので、まずは少しずつ試して使いましょう

ChatGPTは、人のように会話ができる頭のいいしくみです。 Pythonと組み合わせれば、自動で返事をするシステムも作ることができます。

最初はむずかしく感じるかもしれませんが、少しずつ手を動かして試すことで、きっとできるようになります。

学校の学習サポートから、お店でのお客さま対応まで、いろいろな場面で使えるので、ぜひあなたもチャレンジしてみてください。