Classi開発者ブログ

教育プラットフォーム「Classi」を開発・運営するClassi株式会社の開発者ブログです。

ChatGPTと大規模言語モデルのLT会を開きました

こんにちは、データAI部でPythonエンジニアをしている工藤 ( id:irisuinwl ) です。

最近、ChatGPT を始めとした大規模言語モデル (Large Language Model, 以降 LLM と略す) がホットですね。社会全体でLLMの議論・活用が散見されており、ますます今後重要な技術となるだろうと感じております。

私達はLLMに社会的なポテンシャルを感じ、それを活用してどのように社会を変えていけるかを検討したいと考えるため、

今回、Classi で ChatGPT と LLM の LT ( Lightning Talks ) 会の企画および開催をしました。

この記事では、LT会を通してどのようなアイデアが出たか、LT会をすることで何が分かったかを記載したいと思います。

LT会の目的

このLT会の主な目的として、LLM技術を使って社会にどのようなインパクトを与えることができるかを模索することと設定しました。

参加者は、LLMの活用アイデアを積極的に提案し、その実現可能性や制約を検討することで、LLM技術のポテンシャルをより具体的に把握することを目的としました。

ルールとしては、社外秘情報は Webで提供されている ChatGPT には送らないこととしました。

LT会の内容

LTは計10件と多くエントリーされました。

全てを紹介することは難しいので、LT会で発表された内容をピックアップして紹介します。

発表1. 二次元キャラクターに勉強を教えてもらいたい人生だった

開幕早々イロモノですが、自分(工藤)のLTです。

与えられた文章を解説する台詞のyamlデータをLLMにより生成し、それを動画に変換するコードの開発について説明しました。

概要:

  • 二次元キャラクターに勉強教えてもらいたいと思ったので作った
  • ChatGPT に元となるコンテンツを教える -> 台詞形式で出力 -> システムが読み込みやすいようにyaml形式に変換 することで説明形式データを作成する
  • 出力されたスクリプトを読み込み、合成音声エンジンVoicevoxと動画編集ライブラリMoviePyによって、二次元美少女AIが解説する動画を自動生成する

所感: 

  • 自動生成動画として分かりやすい動画であるという品質として、キャラクターの動き、話し方のスピードや間隔、発話だけでなく板書の内容などが関わる
  • 動画コンテンツの品質として、ユーザーの前提知識に対してわかりやすい説明になっているか、コンテンツの正しさを担保しないといけない
  • 上記、品質を担保するための動画を自動生成で作成することを考えるとシステムにするのは大変だと感じた。

デモ:

www.youtube.com

リポジトリ:

github.com

最近、学術系YouTuber を視聴しており、動画コンテンツの可能性を探りたいと思いました。過去に自分も学術系動画を作ろうと思ったのですが、スクリプトを作るのが大変だったので、ChatGPTの力を借り、どうなるか気になったので試しました。

発表2. ChatGPTに代表されるLLMは何がそんなにすごいのか

開発本部本部長の伊藤さん( id:tetsuro-ito )による発表です。

TransformerからLLMの発展までを解説するという発表になります。

概要:

  • DNNの発展は、Hinton教授の有効性検証、フレームワーク(Tensorflow, Chainer, Keras, Pytorch, etc)の発展、計算資源の性能向上といった要因によって発生したと言われている
  • 2012年画像認識分野でのブレークスルーから、2018年のNLP分野でのTransformerによる精度向上、GPT3に至る。
  • GPT3で大切となるのは「データを大量に増やし、大量のパラメーターを学習すれば精度が高くなる」というスケール則(Scaling Low)、そして、現在のLLMへ。
  • 世界のいろんなところでこの技術を使ったアプリケーションが検討されているので、このビッグウェーブに乗るしかない!

活用するのも大切ですが、技術の変遷を知り、仕組みを理解して技術を使うという活用と理解の両利きが重要であると感じるLTでした。

発表3. ChatGPT に問題を出題してもらってみた

Pythonエンジニアの小川さんによる発表です。

実際にChatGPT-4と会話し、入試相当の問題を20題ほど出題してもらい、実際に解いたという発表です。

内容の抜粋:

  • 文法の問題をChatGPTに出題してもらい、その解答と解説を出力できる
問題1:
次の文の空欄に入る最も適切な語句を選んでください。
If I _____ more time, I would help you with your homework.

a) have 
b) has
 c) had
問題2:
以下の文を正しく修正してください。
She don't like to play basketball with her friends on weekends.
問題3:
次の文の空欄に入る最も適切な前置詞を選んでください。
She has been living in Tokyo _____ 2015.

a) for 
b) since 
c) at
問題1:
正解: c) had

解説: この文は、仮定法過去(第二条件文)の形式で書かれています。「If」節の後には過去形の動詞(ここではhad)が必要です。したがって、「If I had more time, I would help you with your homework.」が正しい文になります。
問題2:
正解: She doesn't like to play basketball with her friends on weekends.

解説: この文では、主語が「She」(3人称単数)なので、否定形の助動詞として「doesn't」を使う必要があります。「don't」は誤りです。
問題3:
正解: b) since

解説: この文では、特定の時点からの期間を表すために「since」を使用します。「She has been living in Tokyo since 2015.」という文は、「彼女は2015年から東京に住んでいる」という意味になります。「for」は一定の期間を表す際に使用され、「at」は一般的に時間や場所を示す際に使用されますが、ここでは適切ではありません。
  • 東大入試レベルの英語読解問題例を出してもらい採点してもらう
    • chatgpt:

      以下のパラグラフを読んで、後の質問に答えてください。
      "Behavioral economics, a relatively new field of study, explores the psychological factors that drive individuals to make economic decisions. Traditional economics assumes that people act rationally and always try to maximize their own self-interest. However, behavioral economics challenges this notion by incorporating insights from psychology, sociology, and neuroscience. For instance, one key concept in behavioral economics is the 'nudge,' a subtle intervention that guides people toward making better choices without restricting their freedom. Nudges have been used to promote healthier eating, increase savings, and reduce energy consumption, among other applications. Despite its effectiveness in some contexts, critics argue that nudging can be manipulative and infringe on individual autonomy."
      質問: 行動経済学が伝統的な経済学と異なる点は何ですか?また、行動経済学で用いられる「nudge」の例を1つ挙げてください。
      
    • 回答:

      伝統的な経済学では自分の利益を最大化することを考えていたが、行動経済学では、他者がより良い選択をするように導く。
      ナッジは人々の自由を制限することなく、他者をより良い選択に導く、行動経済学の概念の1つです。
      
    • chatgpt:

      回答はほぼ正確ですが、行動経済学の違いについてもう少し明確にしましょう。伝統的な経済学は、人々が合理的に行動し、自分の利益を最大化しようとすると仮定します。しかし、行動経済学は心理学、社会学、神経科学の知見を取り入れ、人々の経済的意思決定に影響を与える心理的要因を調べることで、この仮定に挑戦します。
      ナッジについては正確に説明されています。人々の自由を制限しない方法で、より良い選択に導く行動経済学の概念です。ただし、質問では「nudge」の具体的な例を1つ挙げるよう求められているので、その点にも応えてみてください。
      

まとめ:

  • わかったこと:
    • 学習する上で重要な解説文も出力できる。
    • 自由記述式の回答にも対応できる。
    • 正解/不正解だけでなく、部分的な正解も解釈してくれて、正解できてない残りの部分の回答を要求してくれる。
    • 問題の難易度を調節できる。
  • ChatGPTで問題を作成できるのか?
    • 正しいこと言ってそうで嘘ついてたりするので、人間によるチェックは必要だと思う
    • 問題制作のサポートはできると思う
  • ChatGPTを使って勉強できるのか?
    • 自由記述回答に対応できるのは良かった。
    • 自分は何がわかって何がわかってないか、それを対話しながら認識していく体験が良い。
    • 理解できたかどうかをもっと詳しく把握したい、どのくらいの難易度の問題をどれくらい正解できれば理解できたと言えるかを知りたい

まずはユーザー目線で利用して、何が実現出来るのか、何が嬉しいのかをシンプルに向き合う素晴らしい内容でした。 ユーザーに価値を提供することが重要であり、そのためにユーザー目線に立って探索する姿勢がとても良いと感じました。

発表4. Q&A チャットボット

データサイエンティストの王さんによる発表です。

OpenAI Conversation APIを用いてClassiの使い方の問い合わせ回答Botを作ったという発表です。

概要:

  • 利用可能な問い合わせデータを収集する。
  • 投げられた質問に対して、最も類似した問い合わせデータを探索する。
  • 得られたデータとOpen AI Conversation API (ChatGPT-3-turbo)を組み合わせて回答を生成する
  • 上記処理を行うデモアプリを作成し、社内アプリとしてデプロイした。

デモアプリの画面

アイデアから動くものを作る素晴らしい発表でした。このアプリをこれから実際に現場で使用し、問い合わせ業務の効率化に役立てていきたいです。

発表5. 自分のbotを作ろうとして色々と失敗した話

データサイエンティストの廣田さんによる発表です。

自分に関するQ&Aボットを作成して、利用してもらった結果についての発表です。

概要:

  • 発表者は最近入籍し、配偶者に対して、自分に関する問い合わせが多かった。
    • なので、自分に関するQ&Aボットを作成しようと思った。
  • ベクトル検索によってQ&Aボットを作成し、LINE経由で呼び出せるようにした。
  • Open AI APIを呼び出す gunicorn+Flask アプリを render 上にサービングした

    システム構成図

  • 実際に配偶者に使ってもらった結果、ボットが危険な回答をしたのでサービス終了した。

    ※発表者本人に画像掲載の許諾を頂いております

  • ユーザーの質問意図に近いQ&Aを取得するシステムにおいて、致命的なやりとりは避けねばならないという技術的課題が分かった

実際にアプリケーションをデプロイして、使ってもらい、サービスの問題点を発見するという素晴らしい内容でした。実際に使ってもらうことで、全てのQuestionを網羅することは出来なく、致命的なテストケースを探すことが難しいというQ&Aサービスを作る上での課題が見つかったことが非常に良いと感じました。また、ペルソナを持つQ&Aサービスの課題を明らかにし、ソフトウェアエンジニアリングの重要性を示す発表でした。

LT会を通してわかったこと

LT会を通じて、多様なアイデアが集まり、LLM技術の実現可能性を高めるための議論ができたと感じました。

ただし、LLMは必ずしも正確な情報を提供するわけではなく、プロンプトによっては誤った情報を生成することがあるため、実用化に向けて情報の確からしさを保証する方法が重要になると感じました。

さらに、LLMが特定のタスクを実行する場合、プロンプトの設計がタスクの実現に大きく影響するため、適切なプロンプトを書くスキルも重要であることが分かりました。

このLT会を通じて、LLM技術の活用方法や限界を理解することができたことで、今後の開発や研究に活かしていきたいと思っております。

※ この記事の文章は一部ChatGPTを用いて、執筆されております

© 2020 Classi Corp.