Joi Itoが説明するChatGPTによる3つのプログラミング革命とは?
人気がとどまるところを知らない生成AI、ChatGPTの登場がプログラミングに起こした3つの革命について、伊藤穰一氏(Joi Ito)のビデオの内容を基に説明します。
このビデオは、日本のベンチャーキャピタリストであり実業家、千葉工業大学変革センターセンター長など多彩に活躍している、伊藤穰一氏によって作成されました。伊藤氏は、元アメリカマサチューセッツ工科大学(MIT)メディアラボの所長でもあり、メディア出演や著作も多いので、ご存じの方も多いでしょう。
ChatGPTは、最新のデータを学習していないため、必ずしも正確な回答を返さないことは知られています。しかし、そもそもChatGPTから効果的な回答を得るためには、条件を指定し、的確な指示を出すことが必要です。それには一定のフォーマットがあり、「プロンプト」と呼ばれています。また、プロンプトを使った技術的な指示の手法は「プロンプトエンジニアリング」と呼ばれています。
今回紹介する10分少々のビデオでは、このプロンプトエンジニアリングについて、全く知らない人からある程度知っている人まで、参考になる情報が非常にコンパクトにまとまっています。実演や参考資料のリンクも交えた説明なので、興味がある人はぜひチェックしてみてください。
GPTでプログラミングの未来を切り拓く!Promptエンジニアリングとは? by Joi Ito
革命1.
プロンプトエンジニアリングによって、プログラミング知識がない人でも、自然言語を使ってコンピューターと対話したり、知識を得ることが可能になった
まず、これがChatGPTの非常に大きな革命です!!特にプログラミングの知識や経験がない一般の人でも、プログラミング言語を使うのではなく、日常的に使う自然言語を使って、AIと対話してアウトプットを手にできるようになりました。
前述のように、プロンプトエンジニアリングとは、プログラムの形の指示や設定をGPTに送って、自然言語によって対話したり操作するための、新たなエンジニアリング手法です。その例として、伊藤氏は「Mr. Ranedeer」というプログラムの例を実演しています。
https://github.com/JushBJJ/Mr.-Ranedeer-AI-Tutor
このMr. Ranedeerのすごいところは、ユーザーの多様なニーズや興味に応じて、AIチューター(教える役)がさまざまな個別の教育コンテンツを提供してくれることです(有料版サブスクリプションライセンスのGPT-4モデルを推奨します)。ぜひ、使ってみてください!
伊藤氏のビデオ内の実演では、GPT-4にプログラムを貼り付けた後、ユーザーとAIチューターとの対話が進んでいきます。まるでプログラミングのように、バージョンナンバーや機能、知識の難易度などについて、変数を変更してAIチューターの設定を自由に変えています。量子コンピューターを専門とする筆者が、試しに量子コンピューターについてAI チューターに聞いてみました!(一部抜粋)
メインレッスン
さて、量子コンピューターについて教えましょう。量子コンピューターは、量子力学の法則を利用して情報を処理する新しい種類の計算装置です。
従来のコンピューターがビット(0または1)を使用するのに対し、量子コンピューターでは量子ビット(qubit)を使用します。qubitは、量子力学の法則により、0と1の状態を同時に取ることができます。これをスーパーポジションと言います。
この説明は、基本的に合っています。
このようにプログラミングについて詳しくない人でも、自然言語をベースに作られたプロンプトと自然言語を使って、AIと対話できるようになりました。
革命2.
自然言語とコンピューター言語の境目がなくなり、コンピューター言語を理解することと、自然言語で物事を説明することがほぼ同じレベルになる(プログラミングは自然言語で書いたり、ゲームのルールを設定したりするような感覚になる)
人間の言語とプログラミング言語の境界線が曖昧になる、ということが伊藤氏の大きな主張です。先のAIチューターは、教育用にプロンプトをデザインして作られていますが、伊藤氏は、プロンプトの作り方を変えれば例えばゲームを作って遊ぶことができるといっています。
従来のゲーム開発では、「ゲームのルールはこうなっています」とか「設定とか世界観はこうです」といった定義付けは、コンピューター言語のプログラムでかっちり設定されていました。これを、自然言語でも同じように設定できるようになる、ということです。また、伊藤氏は、自然言語を操る際の要件定義付けとか物事のルールをかっちり説明できる能力が求められてくる、とも述べています。
別の識者も、似たようなテーマを扱っています。メディアアーティストの落合陽一氏の言葉で印象的なのが、「いま最もエキサイティングなプログラミング言語は英語」という言葉です。この発言が、この生成AI革命をよく説明していると思います。
【落合陽一が実演:ChatGPTの賢い使い方】経営戦略、アイディア出し、要約、コーディングにフル活用/英語こそ最強のプログラミング言語/人間が鍛えるべきは「好奇心」
革命3.
これまでと全く新しい、より身近で人間の言語と一体化したソフトウェア開発方式が生まれる
伊藤氏は、GPT-4のプロンプトを誰でも操作できることを示しました。また、今の言語モデルは異なるプログラミング言語間の関連性や文法を学習してきていて、自然言語を使った情報の整理やマークアップの表現などもすでに可能であることを説明しています。
これらを踏まえて、自然言語を中心とした「ノーコード」プログラミングの可能性を強調しています。ノーコード no-code とは、ソフトウェア開発においてプログラミングコードを人間が書かなくてもいい開発手法です(同様に、ほとんどコードを書かない開発手法はローコード low-code と呼ばれています)。
これは、プログラミングのあり方を変え、より身近で人間の言語と一体化したソフトウェア開発が可能になるかもしれないということです。確かに、革命2のように自然言語とコンピューター言語の境目がほぼなくなってくると、コンピューター言語と自然言語が衝突し合って一つになり、新しいソフトウェア開発方式(プログラミング方式)が生まれてくるかもしれません。
革命はまだまだ続いていく
今回の記事では、プログラミングと自然言語の未来について紹介しました。もちろん、これらの内容は一部に過ぎず、大規模言語モデルは日々急速に進化し続けています。リープリーパーでは今後も、皆さんがこれらについての理解を深め、その進化を追い続ける手助けになる記事を提供していきます。これからもご期待ください。
理人様 見ず知らずの者に温かいアドバイスをありがとうございます。 生物学の中だけ…
Soさん、ご質問ありがとうございます。 博士課程で必要な生物学の知識は、基本的に…
貴重な情報をありがとうございます。 私は現在データエンジニアをしており、修士課程…
四葉さん、コメントいただきありがとうございます。にんじんです。 僕がこの会社この…
面白い話をありがとうございます。私自身は法学部ですが哲学にも興味があります。 ふ…