1. TOP
  2. お役立ち情報
  3. 話題のChatGPTの登場でプログラミング学習はどう変わる?メリット・デメリットも解説

話題のChatGPTの登場でプログラミング学習はどう変わる?
メリット・デメリットも解説

投稿日
2023.02.24
更新日
2023.05.12
話題のChatGPTの登場でプログラミング学習はどう変わる?メリット・デメリットも解説
misono先生

こんにちは、Winスクール講師のMisonoです。外部研修やテキスト制作を担当しています。最近はSNSも運用中。

現在話題になっているChatGPT、どんなサービスかご存じでしょうか?
今回はChatGPT自身にChatGPTのことや、メリット、デメリットなどを解説してもらいましたので一緒に見ていきましょう。

ChatGPTとは?

そもそも、ChatGPTとはどのようなものでしょうか?
今回はChatGPT自身に挨拶をしてもらいました。

※赤い[KA]のアイコンが、私。緑のアイコンがChatGPTからの返信です。

はい、皆さんこんにちは! ChatGPTと申します。 私はOpenAIが開発した言語モデルで、 様々な質問や会話に対応することができます。 何かお困りのことがありましたら、お気軽にお尋ねください!

このようにChatGPTが挨拶を返してくれました。
すごい技術ですね!

まず、OpenAIとは何か?ですが、こちらもChatGPTに教えてもらいましょう。

OpenAIは、人工知能(AI) の研究・開発を行っている非営利団体です。 OpenAIは、AIの進歩が人類全体の利益につながるように、AIの安全性と信頼性を向上させることを目的としています。 OpenAIは、大規模な自然言語処理モデル(GPTなど) や、 自律的なロボットの制御、ゲームAIなどの分野で成果を上げています。また、OpenAIはAIの倫理的・社会的な問題についても積極的に議論を行っています。

こちらについて補足します。
OpenAIとはスマートフォン向けの位置情報サービスの提供を行っているLooptの創立者Sam Altman氏と、Tesla社やTwitter社のCEOを務めるElon Musk氏によって設立された非営利団体です。

OpenAI社のWebページにはOpenAI社について次のような記述があります。

OpenAI is an AI research and deployment company. Our mission is to ensure that artificial general intelligence benefits all of humanity.
(OpenAIはAIの研究、展開を行う企業です。私たちの使命は汎用人工知能が人類全体に利益をもたらすことを保証することです)

引用元:https://openai.com/about/

つまり、人工知能の研究とそのサービスを提供する企業ですね。

ChatGPTを使うメリットは?

ChatGPTを使うメリットについて、ChatGPTに教えてもらいましょう。

ChatGPTを使うメリットは以下の通りです。
1.幅広い知識を持つ ChatGPTは、 膨大な量の自然言語テキストから学習されているため、広範囲にわたるトピックに関する知識を持っています。
2.迅速な回答: ChatGPTは、リアルタイムで質問に迅速に回答することができます。
3.質問形式に対応 : ChatGPTは、 自然言語の質問に対して回答することができます。
4.24時間365日対応可能 : ChatGPTはオンライン上で動作しており、24時間365日利用可能です。
5.人工知能による質問応答: ChatGPTは人工知能による質問応答システムであり、 常に学習を続け、より正確な回答ができるようになっていきます。

これらのメリットから、 ChatGPTはさまざまな分野で活用され、 質問応答や対話システムの実現に貢献しています。

ChatGPTは膨大な量の自然言語テキストから…
とありますが、これはインターネット上にある約1兆個に近いデータから学習を行っています。
そのため、非常に精度の高い回答ができることが特徴です。
また自然言語(コンピュータが用いるプログラミング言語ではなく、日本語や英語など日常会話に使用する言語)の質問に返答することも特徴と言えるでしょう。

これまでインターネット上の検索は『プログラミング 学習方法』などの単語を入力し、その検索結果に表示されたWebページから欲しい情報を探して閲覧するという形でした。

ChatGPTは人間の会話のように『プログラミングの学習方法は?』と文章を入力することで、回答してくれます。

ChatGPTを使うデメリットは?

メリットだけを見ると万能のツールのように感じますが、AIは日々進化し続けています。デメリットはあるのでしょうか?
こちらもChatGPTに質問してみましょう。

“ChatGPTを使用する上でのデメリットは以下のようになります。
1.回答の信頼性: ChatGPTは、 大量のデータから自動的に回答を生成するため、 回答の信頼性が完全に保証されているわけではありません。 特に、 専門的な分野や特定の知識を必要とする問題に対しては、間違った回答を提供する可能性があります。
2.コンテキストの理解: ChatGPTは、 回答に必要な文脈や背景を理解することができない場合があります。 これにより、回答が不正確になる場合があります。
3.プライバシーの問題: ChatGPTを使用する場合、 会話の内容がオープンAIのサーバーに送信されるため、プライバシーの問題が懸念される場合があります。
4.質問への即時回答が難しい場合がある : ChatGPTは、大量のデータを処理してから回答を生成するため、質問に対する回答が即座に得られるわけではありません。 特に、複雑な問題や特定の分野に関する問題に対しては、 時間がかかる場合があります。
5.会話の流れの制御: ChatGPTは、 人工知能によって操作されるため、会話の流れを制御することが難しい場合があります。 これにより、回答の精度や完全性が低下する可能性があります。

これらのデメリットはありますが、 ChatGPTは、 多くの人にとって便利で使いやすいツールであり、正確な回答を提供することができます。 利用する際には、 これらのデメリットを考慮し、注意深く利用することが重要です。”

ChatGPT自身も回答しているように、実は回答の信頼性は保証されていません。


正確ではなく間違いの場合もある。

この事を念頭に置いてChatGPTを使用しなければなりません。
まだまだAIは発展途上ということもあり、ChatGPTの回答は参考程度に考える必要があります。
またプライバシーの問題もあります。個人情報などを質問内容に記載するといった行動は控える方が良いでしょう。

ChatGPTの使用方法は?

実際にChatGPTを使ってみましょう!2023年2月時点では無料で利用することができます。

1.  ChatGPTのサイトにアクセス

Webブラウザで下記URLにアクセスします。
https://openai.com/blog/chatgpt/

画面左下に「TRY CHATGPT」のボタンが設置されているのでクリックします。

「Log in」「Sing up」のボタンが表示されます。
今回は初回登録なので、「Sing up」をクリックしましょう。

POINT

※ChatGPTにアクセスしているユーザーが多数いる場合、下記の画面が表示される場合があります。
この場合は少し時間を置いてから試してみてください。

上記の画面が表示されない場合、アカウントの作成画面が表示されます。

2.  Eメールアドレスで登録

Email addressにEメールアドレスを入力し、「Continue」ボタン、もしくはMicrosoftアカウントをお持ちの場合は「Continue with Microsoft Account」、Googleアカウントをお持ちの場合は「Continue width Google」からでもログイン可能です。

今回はEメールアドレスを指定した場合の方法を記載します。

3.  パスワードの設定

パスワード入力画面が表示されます。
任意のパスワードを入力し「Continue」ボタンをクリックします。

4.  メール認証

入力したメールアドレスに確認メールが送信されるので、メールを確認します。

メール本文の「Verify email address」ボタンをクリックします。

5.  アカウント情報の入力

Webブラウザに下記ページが表示されます。姓名を入力し「Continue」ボタンをクリックします。

続いて電話番号の入力画面が表示されます。
電話番号を入力後、「Send code」ボタンをクリックします。
その電話番号にショートメールで認証コードが送信されます。

6.  認証コードの入力

携帯番号のショートメールに記載された6桁の数字を入力します。

ログインが行われChatGPTの画面が表示されます。

これで登録は完了です。せっかくなので、JavaプログラムをChatGPTに書いてもらいましょう。

ChatGPTでJavaの「Hello World」のプログラムを作成してみよう

ChatGPTの画面右下に質問の入力欄がありますので、「Javaで”Hello World”が表示されるプログラムを書いてください。」と入力し、右側の紙飛行機ボタンをクリックします。

数秒待つと…、Javaのプログラムが生成されました!

“以下は、Javaで”Hello World”を表示する最も基本的なプログラムです。”

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

さらに、プログラム内部の説明も同時に表示されます。

このプログラムは、HelloWorldという名前のpublicなクラスを定義しています。 そのクラスには、 `main’と いうpublic staticなメソッドがあります。このメソッドは、Javaプログラムの実行開始点であり、ここからプログラムが実行されます。System.out.println(“Hello World”);は、コンソールに “Hello World” を表示するコマンドです。 print Inメソッドは、 引数の文字列を出力し、 その後に改行を挿入します。

このプログラムを実行するには、Java Development Kit (JDK)をインストールして、次のコマンドを実行します。

javac HelloWorld.java
java HelloWorld

‘javac’コマンドは、Javaコンパイラを呼び出し、 Javaファイルをコンパイルしてクラスファイルを生成します。’javaコマンドは、生成されたクラスファイルを実行します。 “Hello Worldというメッセージがコンソールに 表示されるはずです。

実際にこのプログラムは動作するのでしょうか?確認してみましょう。

EclipseでHelloWorld.javaファイルを作成し、プログラム実行します。
※デフォルトパッケージの使用は推奨されていないため、独自にchatgptパッケージを作成しHelloWorld.javaプログラムを作成しました。

コンソールに「Hello World」が表示されましたので、正しいプログラムがChatGPTによって作成されたことがわかります。

すごいですね。ただ、コードを書いてくれるだけではなく、中身まで説明してくれるとは。
これは上手く使えばプログラミング学習が効率よく進められそうです。

プログラマーの仕事はAIによって無くなってしまうのか

今回は簡単なJavaプログラムでしたが、他のプログラミング言語でのプログラムも作成することができます。AI技術が進化することでこのような作業が可能となりました。
ただし、注意すべき点があります。

顧客の要望を確実に満たすプログラムは書けない
AIがどれだけ進化しても、顧客の要望を確実に実現できるプログラムを書けることはできません。
そのため、プログラマー側と顧客とのコミュニケーションによって必要なシステムの構築を行うことに変わりはありません。

プログラムの中身は人間が判断する必要がある
現在のシステム制作では1からプログラムを作成することはなく、既存のプログラム、またはインターネット上に記載されたプログラムを参考に制作することが主流です。ただしそのままコピー&ペーストを行うのではなく、そのプログラムの内容をすべて把握してからプログラマー側もカスタマイズを行います。

ChatGPTでも同様です。ChatGPTが書いたプログラムの中身を理解してシステムに用いる必要があります。

まとめ

どれだけ技術が進化してもプログラミングの知識が必要になることは変わりありません。
AI技術の進化により、AIが記載したプログラムを理解するためにさらに深いプログラミングの知識が必要になったと言えるのではないでしょうか。

Winスクールでは経験豊かな講師陣よりプログラミングをわかりやすく学ぶことができます!これからますます発展するであろうAI技術を上手く使いこなすためにも、一緒にプログラミングを学んでみませんか?

関連記事