生成AIの精度アップ4つの方策 -経営者の[AI=魔法の箱]の期待値に近づける方法
生成AI関係で毎日、色々な会社の方とお話しをしていると、経営者が、生成AIをあたかも「魔法の箱」「玉手箱」のように、何でもできると期待しているように感じることが多々あります。
[AI=魔法の箱]の期待で起きていること
Chat-GPTが登場して、1年半が経ちました。この間で、生成AIはものすごくい進化を遂げましたが、まだ汎用人工知能=AGIではありません。
しかし、そもそも「生成AIって何?」という理解は難しいこともあり、他社が「生成AIを利用してXXを達成!」といったニュースを耳にした経営者によって、以下のようなことが多くの企業で起きています。
皆さんの会社でも同様のことが起きていないでしょうか?
生成AIが「何でもできる」という勘違い
この1年で、OpenAIのChat-GPTはバージョンが「GPT4o」となり、またGoogleのGeminiや、AnthropicのClaude3など、Chat-GPTを超えると言われるような生成AIが登場してきました。
1年前には考えられなかったぐらい、生成AIはこの1年で進化しています。マルチモーダル化は驚くほど進化していますしね。
しかし、今の生成AIは依然として弱いAIであり、強いAIになったわけではありません。まだ数年は、弱いままでしょう。逆説的に言えば、あと数年もすれば、強いAIになり、誰もがAIを使わないと仕事ができなくなる、とも言えます。
ですので、ビジネスで、生成AIを使うのをやめてしまう社員が大半のままだと、数年後に、その企業は存続の危機に陥り始める危惧を、僕は抱いています。このブログを書いているのも、そうした思いからです。
生成AIに限りませんが、仕事に必要でない限り、ビジネスでシステムを使わないのは、ごく自然なことでもありますよね。ユーザーは、生成AIが便利で使わないと、自分にとって損と思えば、そもそも教育は不要です。
プロンプトの書き方の情報は、ネットを検索すれば、今では山のようにでてきますし、本もたくさん出版されています。僕も何度か書いています。
プロンプトの工夫の仕方は、「プロンプト・エンジニアリング」と呼ばれています。例えば、
・AIに役割を伝える:あなたは議事録作成の担当者です.
・箇条書きで、具体的に用件を伝える
といった類にモノですね。
しかし、こういったプロンプトを書くコツは、社内教育しても、テンプレートを用意しても、ユーザーは面倒なので使わないのです。正確には、面倒さを凌駕するほどの効果が実感できないから使わない……。
生成AIの回答精度を向上する4つの方法
しかし、方法はあります。
生成AIの能力を発揮させる方法は、大きく、以下の4つの方法があります。
こうした情報は、エンジニアがエンジニアに向けて情報発信していることが多く、一般的にはあまり知られていませんので、簡単に説明したいと思います。
ちなみに、下に行くほどシステム的に難易度が上がりますし、システム費用も掛かります(②と③は使い方次第では③が安くなります)。
1つずつ、説明していきます。
①プロンプト・チューニング
目的に応じたプロンプトを入力することで、得たい回答の精度を上げる方法です。これはもう一般的ですよね。
例えば、メルマガ作成用のプロンプト、メールでの謝罪用のプロンプト、特定の画像生成のためのプロンプト、など、テンプレートは多数、本やネットで出回っています。
また、プロンプトを作成するテクニック(プロンプト・エンジニアリング)の技法も多数公開されていますよね。
僕も以前26のプロンプト技法を説明した記事を書きました。
しかし、この方法だけでは、嘘の回答をする「ハルシネーション」の発生や、ネット上に公開されていない情報は、そもそも未学習、かつ、インターネット検索でもみつけられないため、回答できることには限界があります。
②RAG(Retrieval-Augmented Generation)の導入
先日、AIの展示会に行ってきたのですが、AIベンチャーや、システムベンダーの出展内容の半分は、RAG導入サービスでした。
RAGの翻訳は検索拡張生成。訳のわからない日本語ですね。
Chat-GPTを導入した企業が現在取り組んでいるのが、RAGの導入です。通常のChat-GPTだと読めない社内のデーターを生成AIが読めるようにすることで、業務の効率化ができます。
「検索」、「拡張」、「生成」という動作から、RAG(検索拡張生成)と呼ばれているわけです。
RAGは、AIベンダーが提供しているクラウドのサービスに社内データーをいくつかアップロードして、検索して……といった、簡単な仕組みから始めるのが通常です。
これでうまくいけば、社内の複数データー、例えば会計システムの売り上げや利益などのデータ、ファイルサーバーの各種社内規定などを、ファイルを都度アップロードなしで検索できる自社専用システムに移行します。
しかし、
・最初の簡単な仕組みで、回答の精度が高くならない
・社内のユーザーが思ったほど使ってくれない
・本格システムを構築するにはかなりのコストがかかる
という3つの理由により、次の自社専用システムに移行できていない企業が、日本では大半です。
ユーザーが使わないのに、かなりのお金を投入して自社専用システムを開発……これは、経営会議では通りません。
ですので、情報システム部門は、システム・インテグレーターに、「RAGの精度を上げてほしい」、「ユーザーがもっと使うようにしてほしい」と依頼するわけです。
ユーザーが使うには、
・ユーザインターフェース(使い勝手)を上げる
・テンプレートなどを活用するといった教育をする
・社内事例を発表・共有して社員の生成AIの利用モチベーションを高める
といった工夫をするしかないのですが、そもそも「効果が感じられないシステムは使わない」ので、根本的にはRAGの精度を上げる必要があります。
RAGの精度向上は難しいので、別途記事に書いてみたいと思います。
③ファイン・チューニングの実施
この方法は、Chat-GPTであれば、GPT4などの言語モデルのほんの一部分を変更することによって、回答の精度を向上させる方法です。
ファイン・チューニングは、すでにある言語モデル(LLM)に数百個の学習データーを読み込ませることで、言語モデルを少し賢くする方法です。
この方法は、プロンプト・チューニングがしにくい場合、RAGの精度向上に限界がある場合に利用します。
プロンプト・チューニングがしにくい場合の典型的な例は、「言語化できないこと」です。
例えば、僕は昨年、「AI中山」という自分の分身を開発しましたが、「AI中山」を僕らしくする、のは、結構難しい。
なぜなら、「僕らしい」ということが日本語(プロンプト)で表現できないからです。論理的に話します、でも時々直感で話します、口調はマイルド?いや違うか、えっと何だろう...うーん...僕は書けませんでした(笑)。
そういう時には、このファイン・チューニングが有効です。
要はプロンプトに書く代わりに、僕が例えば、オンライン会議した記録を文字起こしをして、その質問と回答とをセットにして、LLMに数百個入れ込みました。
すると、僕の会話の仕方をLLMは学び、言語化できない「僕らしさ」を理解して話すようになりました。結果、僕らしくなったのです。
このファイン・チューニングは一部のAIベンチャーしか取り組んでいない領域ですが、言語化できないこと、例えば、匠の技の再現、などで今後使われていくようになります。
来年の今頃、AIの開発のトレンドはRAGからファイン・チューニングに移行しているかもしれません。
④言語モデルそのものを独自に作る(言語モデルの継続学習)
最終的に生成AIの回答精度を向上させるには、この方法が一番です。
言語モデルそのものを新規に作る、あるいは既存のモデルをベースに教育を継続して新しいモデルを作ることができれば、より精度の高い回答ができるようになります。
しかし、これはかなり大変なのです。
LLMのパラメーターが、例えば、Chat-GPT3.5で1750億、GPT4になると1兆と言われていますが、そのような大きなパラメーターを有するモデルを教育するには、相当なコンピュータパワー(GPUを動かす)必要があります。
モデルが100億パラメーターを超えてたら、教育するのに、毎日1000万円かかる、という、感じで、とんでもないコストがかかりますし、使うGPUの確保も難しいのです。
ですので、昨今のトレンドとして、パラメーターの少ない小さな言語モデル(Small Langage Model:SLM)を開発したり、学習させてモデルを変更する、という方法が取られ始めています。
有名なところでは、META社のLlama3の7B(70億パラメーター)や、マイクロソフトのPhi3といったモデルです。
こうした小さなモデルだと、GPT4を継続学習させるほどのコストはかかりませんで、今後小さな言語モデルであるSLMが、業界特化型、例えば、専門用語が多い金融。保険業界、医療業界、などで開発されるでしょう。
米国ではこうした業界特化型SLMの開発が既にされています。
RAGの精度向上やSLMといった今後のトレンドについては、別途記事を書いてみたいと思います。
この記事が気に入ったらサポートをしてみませんか?