「実はものすごく地道。業務用プロンプトチューニングの具体的なプロセスをお話しします」の文字起こし全文です。タイムスタンプをクリックすると、その場面から動画を再生できます。別の動画なら YouTube 文字起こしツールをご利用ください。
0:00 今回はめちゃくちゃ地道な業務用の プロンプトチューニングの具体的な プロセスについてお話ししていきます。今 を解きめくAIですが、それを使って実際 にプロダクトを提供するのは大きな壁が あります。そこで本動画ではそんな壁を 乗り越えるべく開発者たちが何をしている のか解説するために日々のAI活用の プロンプトチューニングと業務の プロンプトチューニングは一体何が違うの かや具体的なプロンプトチューニング プロセスそして本当にAIを使う必要が あるのなどを話をしていきます。事業とし てAIプロダクトを作っていく方、車内で いろんな人に向けて業務効率化ツールを 提供していく方々にはもちろんためになる
0:45 情報ではあると思いますが、技術的に そんなに複雑な話をするわけでもないので 、純粋にAIプロダクト開発現場はどの ように働いているのかを知って知的好奇心 を満たせるような内容にもなっていると 思います。またなんだかんだ普段のAI 活用にも転用できる考え方はあると思うの で、是非こんな感じなんだと楽しんでいっ てください。では最初に業務用プロンプト チューニングが必要になるAIプロダクト 開発という言葉を使って私は何をイメージ しているかと言いますとそのままですが AIをソフトウェアの機能として搭載する ことをさしています。カーサーや ジェンスパークなどのAIネイティブな ツールたちもあれば、Gmailに ジェミニによる執筆補助機能が足される
1:31 など既存のソフトウェアにAI機能が追加 されるものも含んでいます。これらのよう にAIにソフトウェアの中で活躍して いただくためにはAIの性能を引き出す ためのプロンプトなどのチューニングや 全体のアーキテクチャー設計、どこで どんなデータを引っ張ってどんな処理を 行っていくのかを考えます。では1点目の プロンプトチューニングにつきまして日常 と業務では一体何が違うのでしょうか? 答えとしてはインプットとアウトプットの 幅の違いが大きくあります。まず日常で 使うプロンプトはそもそも1回だけ満足 する結果が得られればいいという状況も 多くかつ使うのも自分だけなので入力する インプットの幅もそんなになければ
2:16 アウトプットもそこまで幅を想定しなくて 良いです。一方でプロダクトとして提供 する場合には不特定多数のユーザーに使わ れますし、アウトプットの幅も広くかつ それなりの品質を求められます。この 幅広いインプットアウトプットにおいて 品質を担保しなければいけないところに 難しさが詰まってます。そして業務でAI を使った機能を作る時、その機能の最終的 なアウトプットは何も1つのプロンプトで 行うものではありません。時に複数の プロンプトを組み合わせたり、外部の データソースからデータを引っ張ってき たり、ツールを連携させたり、なんなら AIの仕事の流れに人間を挟んだりと様々 な打ち手が考えられます。こういった 内ち手の数々は求められる成果を出すのに
3:03 大事なわけですが、一方で変数が増えて くるとその組み合わせもテストしなければ いけなくなるという側面もあります。この プロンプと1個1個がうまくいっているか も確認しますし、外部ツールの呼び出しも ちゃんとして欲しいタイミングでできて いるかを確認する必要があります。そして 当然ですがこのシステム全体としての アウトプットの品質も確認します。こう なると流行りのワードであるAI エージェントを作ることの大変さも想像が できるのではないでしょうか。AI エージェントはこの図のように記憶や外部 ツールなど様々なものを参照しながら自分 で思考と行動を繰り返していきます。この 途中のステップでダメな思考だったり行動 をしてしまうとその影響が後の工程に波及
3:50 してしまいます。こういった組み合わせに より複雑度がどんどん増していくのがAI の業務システム利用の難しさです。では次 に具体的なプロンプトチューニングの プロセスを紹介していきます。具体的な 手順に入る前にできたら1番効率的で あろうプロンプトの自動チューニングが どんな風に行われるのかを見てみましょう 。実はプロンプトチューニングの自動化と いうのはホットなテーマで天田の手法が 提案されています。実際に自動化がうまく いくかは一旦置いておいてほぼ全てに共通 している手法としては評価基準と評価 データセットを作ってそれに即して自動で プロンプトが最適になっていくように変え ていくというものです。評価基準とはその AIシステムがどのような振る舞いをす
4:36 べきか、あるいはどのような振る舞いをす べきでないか、何が満たせていたらいいの かを定義したものです。例えばAIによる VTuberを作って会話体験を提供する として、会話が面白いこと、口調に一貫性 があること、不適切な発言をしないこと など、正直これだと流度がかなり荒いです が、イメージこんな感じで、そのAIを 使ったシステムがどのように振る舞うべき かを定義していきます。評価データセット というのはその作った基準を満たせている かを確認するための入出力例です。先の AIキャラクターを例に取るとユーザーが こんな発をしてきた時にキャラはこう返す のが理想という発例を作ります。これを
5:22 たくさん用意していきます。この2つが 用意できたらあはプロンプと評価データ セットのインプットを用いて実行しまくり 、評価基準に沿ってスコアなどをつけて 成績が最高のものを選ぶというのが大まか な自動チューニングの流れです。それでは ここからはこの2つをいかに用意しかつ 実行していくのかを解説していきます。 まず1点目。評価基準を定義するのが めちゃくちゃ難しいです。例えばですが、 先ほど会話が面白いこと、おAI キャラクターの評価基準の1つとしてあげ てみましたが、会話が面白いとはもっと 具体的にはどんな状況なのでしょうか? 面白いジョークを言ったら、知的好奇心を 刺激するようなことを言ってくれたら、
6:09 それとも過激だったり、際どい発言が 多かったらなど具体化する余地がかなり あることが分かるでしょう。特にこういっ た人の観でも変わるような評価観点は決め きるのが非常に難しいです。またそもそも 評価基準を最初から言語化しきることは不 可能です。気上の空論だけで満たすべき 品質を考えきることはおよそ人間離れをし ており、基本実際にAIシステムが出す アウトプットをあ、これいいな。こういう 回答は微妙だなと実際に評価をしていく ことによって評価基準が徐々に言語化され ていきます。とある論文ではこの評価を するにつれて基準が定まっていく過程を クライテリアドリフトと名付けています。 わざわざ名付けられるくらいあるあるな
6:55 事象と言えるでしょう。評価基準はうろう ものという前提で仕事の不ローを組むこと が大事です。また作りたいAIシステムに よってはそもそも開発者が評価するに ふさわしくないこともあります。というか どちらかと言うとその方が多いでしょう。 例えば医療の紋信AIシステムを作って いくとして、ある質問をした後に次に どんな質問をするのが適切なのか、そんな 評価をしようと思ったら医療の知識がない 人には評価の仕様もありません。つまり この評価のプロセスは対象の分野の専門家 、よくドメインエキスパートという呼び方 をしたりしますが、そういった人を見つけ て伴奏してもらう必要が出てきます。評価 基準を定義していくことが適切に評価
7:42 できる人を巻き込みつつ地道に改善を 重ねる大変な仕事だとイメージが伝わった でしょうか?2つ目に大変なものはデータ セットを作っていくことです。様々な評価 観点を満たしているか確認するためには 結構な数の評価データセットが必要になり ます。AIで実現したいことにもよります が、少なかったら数個から数十個、 そこそこ大仕事を任せている場合は数百個 にもなったりします。そんな数の会話例 たちを作っていくのはなかなかにしんどい です。楽をするために1つ取れる内手とし てはまずは合成データというのですが 要するにAIにデータを作ってもらいます 。ただ私の肌感ちょっと現実的ではない ような会話例も作られてしまうかなという
8:28 印象です。AIシステムをAIが作った 評価データセットに最適化させていくのは 現実世界の人間たちにちゃんと価値を提供 できるかちょっと不安です。実際のところ 、仮に現実世界を完璧に反映したデータが 出せるのであれば、そのAIは人々が何が 欲しいかを完璧に予測できることになると 言えます。さすがに現状そこまでAIが 全地前脳でないことは皆さんも同意 いただけるでしょう。合成データは パターン出しには便利ですが、それだけで 済ませようとするのは危険です。より良い 方法としては実際の会話ログから評価 データセットを拡充させるという方法です 。これは現実に起きた会話での記録なので データとしての品質も高くなります。AI
9:13 アプリを使ってもらった時のログを取得し 、それらに対して地道に評価をしていき、 微妙な回答をしている例が見つかったら、 こんな回答が理想という訂性と共に評価 データセットに追加していきます。手間は かかりますが、最初から完璧を求めるので はなく、現実世界での使われ方を集め ながら継続的に改善を回していくのが大事 です。 それでは実際にチューニングをしていって データセットを元にAIシステムを実行し た時に評価が高くなるようにしていきます 。さて、ここで問題なのは肝心の評価は どうやって行うのかです。テストする ケースが5個とかなら毎回目検査でうまく いっているかどうかを確認することはでき ますが、これが何十個、何百個となって
10:00 くるとそうも言ってられません。また理想 としてはプロンプトを変えるたびに良く なったのか悪くなったのかを確認したいの でそれも考慮すると名のこと人間が確認 するのは現実的ではありません。そこで またしても活躍するのがAIです。評価 基準に即してAIにAIの回答を評価して もらいます。これを専門用語ではLLMア ジャッジLLM評価者と呼びます。しかし このAIによる評価も信頼できるか分かり ません。なので評価の評価を行って評価 プロンプともチューニングをします。評価 の評価用データセットも作り、人間による 評価とAIによる評価の率を上げていき ます。評価言いすぎて、え、マジでそんな
10:47 ことやってるのと思われた方も いらっしゃるかもしれません。マジでやっ てます。とはいえ、この評価の評価まで やるのはかかる時間も多いため、全部の AIシステムに対してこれをやるわけでは なく、このAI機能を本気で磨き上げて いくぞという着替いを持ったものに対して だけ作っていきます。こうやって自動で 評価をする仕組みが出来上がれば プロンプトを変えた時に良くなったのか 悪くなったのかがすぐに分かります。こう なったら後はどんどんいろんなプロンプト を試していくのみです。正直チューニング 自体はそんなに大きい話ではなく、それを 取り巻く評価をどう行っていくのか、ここ が1番大事なポイントです。この評価の 仕組みがないとゴールも見えない中
11:32 プロンプトをひたすら変えて時間もかかる し品質も大して上がらないし地獄みたいに なります。全体像をおさいしますとデータ がうまく回る仕組みを作りコツコツと データと向き合って時には専門家を 巻き込んで評価をしていく。こういった 取り組みを地道にやっていくことで好品質 な振る舞いをするAIプロダクトができ ます。皆さんもAIを使ったプロダクト 運用をガチでしていく際に参考にしてみて ください。以上、AIプロダクト開発に おける評価、チューニングプロセスについ て語ってきました。最後に他にこの プロセスを楽にする方法について語って 閉めようと思います。最初に業務用の チューニングが大変な理由はインプットと アウトプットの幅が大きいからだとお伝え
12:18 しました。つまりはこの幅を小さくして しまえばチューニングも楽になるわけです 。例えばインプットをフリーテキストの 入力でなく複数の選択肢から選ぶ形にし たり、アウトプットはフォーマットを絞る ようにしたり、あとは幅を狭くするとは ちょっと違いますが、AIは70%くらい を素早く叩き出し、あとは人間が確認し たりバトンパスすることを前提とした ワークフローにすることで、アウトプット の品質をそこまで上げなくてよくできたり します。ただ一方でAIの強みというのは 幅広いインプットとアウトプットを扱える ことにあり、狭めすぎると、え、これもう 普通のプログラミングで良くないとなり ます。それで素晴らしい体験を提供できる
13:05 のであれば品質保障もしやすいですし、 プログラミングする方がいいです。AIは 可能性を広げてくれるめちゃくちゃ楽しい 存在には違いないのですが、あくまでも ハウの1つに過ぎないので固執しすぎない ことが重要です。特にAIエージェントに 関しては完全に自立的なものは難易度が 非常に高く、いきなりそれをやるよりは 細かく分割したワークフローをいくつか 組み合わせていく方がすぐに作れる支重分 というケースも多いのではないかと思い ます。今回の話が皆さんのAIプロダクト 開発の一序となれば幸いです。それでは 今回の動画ためになったらチャンネル登録 と高評価をお願いします。また次回の動画 で。
13:51 [音楽] やちゃ。