1. とらジオ
  2. 22-4: 一流のプログラマーも自..
22-4: 一流のプログラマーも自分で書かない
2026-08-03 20:27

22-4: 一流のプログラマーも自分で書かない

spotify apple_podcasts youtube
HSL
HSL
Host
生成AIは2階建てで進化してきました

エンジン以外の進化の話。プロンプトエンジニアリング、コンテクストエンジニアリング、ハーネスエンジニアリングの3段階で、生成AIの使われ方がどう変わってきたかを話しました。マルかバツかの判断条件を先に渡しておくと、AIが自分でセルフチェックしてぐるぐる回すようになります。

 

感想

まだ感想はありません。最初の1件を書きましょう!

00:00
さて、前回までは、生成AIの進化について、 1 回部分というか、エンジン部分がどう進化してきたかという話をしてきました。
すごいざっくり言うと、第一世代、第二世代、第三世代とあって、 第一世代は素朴に聞かれたことにそのまま喋る世代ですね。
第二世代が文字だけじゃなくて画像とかファイルを扱えるようになった世代。
第三世代が自問自答してモゴモゴモゴモゴ喋れるような、 自問自答してから答えを返せるようになった世代というふうな説明の仕方をしました。
今回ここからは、モデルエンジン自体の進化だけじゃなくて、 足回りというか車でいくとエンジン以外の部分がどういうふうに進化してきたかという話をしていきたいと思います。
エンジンだけの話をしていると、 なんで今このLLMが、精製AIがすごいすごいと言われるかというのが見通しが悪いと思うんですよね。
エンジンだけの進化だけを見てみると、 産業革命を超えるのかということは多分ピンとこないと思うんですけれども、
エンジン以外の部分のことを見通しが理解していくと、今どれぐらいすごいことが起きようとしているのか、
今後何が起きる可能性があるのかということの見通しが少し良くなっていくんじゃないかなというふうに思います。
エンジン周り以外ですね、 精製AIのモデル自体の進化の周りのところの進化というのはものすごくざっくりと、
これまた言い訳というかあれじゃないんですけど、 すごい定説とか標準的な言い方があるわけではないので、
別の解説とか別の記事とかだと違う表現をしているかもしれないんですけれども、
言わんとしていることはざっくり一緒だと思うので、 今回はこういう言葉遣いでいきますというディスクレマーを入れさせてもらうんですけれども、
エンジン以外のところの進化もざっくり3段階に分けるとすると、
プロンプトエンジニアリングというものの進化と、 コンテクストエンジニアリングの進化と、
ハーネスエンジニアリングの進化というふうに3段階、
プロンプトエンジニアリング、コンテクストエンジニアリング、 ハーネスエンジニアリングという3段階の進化があったというふうに見ると、
03:04
すごく見通しよく見えるかなという ふうに思います
まずはプロンプトエンジニアリング のほうなんですけど これは昔から
も言われてますし 今もよく言われてる と思うんですけれども どういう
ふうに効くかって 生成AIの回答 のレベルが変わってくるという
話ですね 聞き方のコツみたいな のは 昔もいろいろ
紹介されてましたし 今でもそういう 話があると思うんですけど 最近
あんまりテクニックとして言われない くて 私もたまにしか使わないですけ
ども 一時よく言われてたのは あなたは こういうものであるという
役割を指定して質問してあげる と 会話してあげると 生成AIの性能
をうまく引き出せるというふう なテクニックがよく紹介されて
いたことがあると思います あるいは 生成AIって割とこっちが言う
ことに言語をしがちなとこがある ので Aだよねっていうふうに聞く
と そうですそうです Aですみたいな ふうに答えることがよくあると
なので Aであるかどうか批判的に 検討してくださいみたいな あるいは
Aであるかどうかっていうことを わざと反対意見を言ってください
とかいうふうに言うと客観的であったり あるいは逆にすごい なんだ あえて
反対意見を言ってくれたりして 単なる賛成ではない いろんな意見
を言ってくれやすいというような テクニックが紹介されたりします
あるいは 僕はこう思うんだけど どう思うっていう聞き方をすると
基本的にユーザーを否定しない ということになっているので いい
ですねっていうふうな回答しか 返ってこないんですけれども 例えば
部下がとか同僚がこんなことを 言ってるんですけど どう思います
かっていうふうな聞き方をする と 割と辛辣な意見が返ってきやす
かったりすると この辺りはいわゆる どういうふうに聞くと生成AIの
期待するような回答を得られるか ということで 質問の仕方を工夫
する プロンプトの入れ方を工夫 するということで プロンプトエンジニアリング
という言い方がされていました 今もされているというか 引き続き
どういうふうに聞くかによって 回答の傾向は変わってくるので
いかに聞くかっていうのは 引き続き 大事な要素だと思います 一番最初に
06:03
開発された技術っていうのも この辺りですね LLMの性質を考えながら
どういうふうに聞くといい感じの 答えを引き出せるかというのが
プロンプトエンジニアリングの 世界です 次に来たのがコンテクスト
エンジニアリングというものになります これもいろんなテクニックがあるんですけれども
要はマルチモーダルが進化して いろんな添付ファイルとかが付けられる
ようになったということが基本的に 大きいと思うんですけれども LLM
っていうのは基本的に事前学習した 知識で答えようとしますと ただ
事前学習した知識っていうのは 結構一般論なことが多いので
普通に聞くとそれらしいことは 返ってくるんですけど いろいろ
突っ込んで話をすると すごい具体的に なっていかないということがあります
なのでどうするかというと いわゆるドメイン知識と呼ばれているような
今こういうことをやってるんだけどとか 例えば生成AIを使ってチャットボット
お客さんからの質問にいい感じに答えるような ロボットを作ろうとしたときに
その会社の その業務のことをそんなに深く 生成AIが理解してるわけじゃないので
何の予備知識も与えずに生成AIに答えさせると すごい一般論しか回答しないと
それでは困るので 例えばQ1 うちの会社の今までサポートセンターに
かかってきた質問と それに対してどう答えたかとか
うちにはどんな製品があるかとか こういうときにはこう答えましょうとか
いろんなうちの会社ならではの情報を渡しておいて それに沿ってお客さんからの
回答をしましょうというふうにすると すごく回答の精度が上がると
これは何をしているかというと プロンプトだけを与えて
生成AIから回答を引き出すんじゃなくて 専門的な知識というかドメイン知識というか
より詳しい情報を与えて質問することによって より機体に近い回答を得るという手法ですね
これをコンテクストエンジニアリングというふうに呼んでいます
具体的な実例でいくと 例えば議事録を作るという作業があります
09:09
議事録作るときにはトランスクリプトと呼ばれる 音声を文字起こししたやつを生成AIに渡して
それで議事録作ってというと 結構いい感じに議事録作ってくれます
トランスクリプト 文字起こしの そのままのデータを見ればわかるんですけど
結構文字起こしのデータってひどくて 語弊感も多いし 誰がしゃべったかもよくわかんないし
文字起こししただけのデータって 結構ひどいデータなんですけれども
それをLLMに渡して議事録にしてって言うと あら不思議 誰がしゃべったとか
誰がこう回答したとか 要はむちゃむちゃなトランスクリプトから
こんな議事録作るなっていうぐらい いい感じの議事録を返してくれるんですけれども
とはいえ専門用語とか その会社での用語とかを知ってるわけじゃないので
語変換とか人の名前の変換とかのミスとか それはやっぱり変換ミスっていっぱいあるもんなんですよね
そこで例えばその会社でよく使われてる用語集とか 誰がいるかっていう人の名前のリストとか役職のリストとか
そういうものをセットで渡して トランスクリプト 文字起こし情報と用語集と
セットで渡して あるいはよくやる形でいくと 議事録のテンプレートですね
フォーマットを渡して作ってって言うと フォーマットにも沿った形で社内用語にも沿った形で
すごいいい感じの議事録を一発で出してくれるというのがあって この辺りも生成家にどういう情報を渡すとうまく使えるかという
プロンプトの工夫だけじゃなくて 渡す予備情報の工夫ということですね
この辺りを工夫していくっていうのが コンテクストエンジニアリングと呼ばれるものになっていきます
この辺りのコンテクストエンジニアリングも 細かい深い話としていくといろいろなって
インターネットの情報を検索して ちゃんと調べてからそれを使って考えてよとかいうようなこともありますし
あとはMCPサーバーとかいうのを使うとかいうのもありますし
ラグでしたっけ どういうふうに文脈を与えるかというふうなテクニックがあったりして
これも細かいこととか深い話とかすると 結構キリがないところもあるんですけれども
ものすごいエンジン以外のところの工夫進化という意味でいくと
いかに特定の文脈を渡した上で 生成AIに回答させるかということでいくと
12:06
文脈を与える コンテクストを与えるという意味でいくと
ざっくりコンテクストエンジニアリングというふうなところで理解してしまって あまり差し支えないんじゃないかなというふうに思います
プロンプトエンジニアリング コンテクストエンジニアリングというのが 進化の2番目ということですね
このプロンプトエンジニアリング コンテクストエンジニアリングも結構進化しまして
この辺りをどう使うかというのが すごいホットなトピックスであった時期も長かったんですけれども
この段階ではまだ一流のプログラマーが プログラムを自分で書かないというところまでは行かなかったんですね
この3番目 エンジン周り以外での3番目の進化 このハーネスエンジニアリングというところができるようになって
本当に生成AIの使い方というのは 1段階ですね さらに1段階ブースしたかなという感じがあります
このハーネスエンジニアリングというのは何かというと
このハーネスエンジニアリングという言葉も 結構まだ定説が固まっていなくて
言う人によったり言う時代言う時期によって いろんな解釈とか説明の仕方もあるので
ここはある特定の面だけを切り取って すごい単純化して話しているというふうに思っていただいた方がいいかもしれません
なので他の記事とか他の文献とか読んだり理解するときは ちょっと適当に置き換えながら理解してもらえればと思うんですけれども
細かいかとはともかく ハーネスエンジニアリングの1個特徴は AIに自律的に判断させるということですね
ここまでのところは あくまでも人間がプロンプトを打って 人間が情報 コンテクストを提供して
それに基づいてAIが回答を返してきて それはパッと見なかなかいいものなので 意外と思うんですけれども
それの良し悪しというのは最終的には人間が判断すると 指示をした人間が判断するというところが
15:00
基本的にはそういう作業の流れだったと思いますが そうでした
ハーネスエンジニアリングのほうが ここ何が進化したかというと
こういうアウトプットができればいいということを あらかじめAIに基準クライテリア 判断基準として示しておいて
それに基づいてAIが先の推論とは別の意味で 自問自答を繰り返すということができるようになったということなんですね
すっごい一例で言うとですけど 例えば会社だとして会社の人が何か対外的なレポートを書くというようなシーンになったときに
まず生成AIにある程度情報を渡して 対外的な説明するようなレポートを書かせたとします
今までだったらそれを人間が読んで これがいいとか悪いとか ちゃんとうまく書けてないから
もうちょっとこういうふうな情報を渡そうとかいうふうに判断して 次のプロンプトを書いて こういうふうに直してって言ったりしたわけですけれども
ハーネスエンジニアリング的な発想でいくと 例えば対外的なレポートであれば
株主の目で見たときにはこういうことが期待されているから こういうことについて答えるようにして
あるいは株主だけじゃなくて社員はこういうことを気にするかもしれないから こういうことをちゃんと書けているようにして
あるいは社外取締役がこういう観点で見ているだろうから こういう社外取締役の要望にも応えるようにしてみたいな
このアウトプット 作成物をどういう状態になればOKかっていうふうな完了条件というか
丸がつく判断条件というのを渡しておくと
そうするとSSAIはまずは例えば対外向けのレポートを書きます
レポートを書き終わったらさっきの3つの これが丸か×かっていう判断
3つの立場からですね 株主からの立場 社員からの立場 社外取締役からの立場みたいなやつで丸×をつけて
ここまだうまく書けてないよっていうことになったら じゃあそれなんでうまく書けないんだろうかっていうふうな分析をして
どういうふうにやり方を変えればいいかっていうのを もう一回やり直すにあたってどういうふうにやり方を変えればいいかっていうことを
18:04
自分なりにもう一回組み立て直して もう一回それで作業をすると
直したやつのアウトプットを見て またこれで丸か×かっていうのを判断して
丸であればOK ×のところがあればまたもう一回分析して どういうふうに直せばいいかっていうことをもう一回自分でチェックして
作業のやり方を自己修正して またアウトプットを作るというのをぐるぐるぐるっと何回か回してですね
完了条件が整うまで これでいいっていう条件を満たすまで 自分で直し続けるということをするっていうのが
ハーネスエンジニアリングの基本的な発想ですね こういうふうに人間がチェックするんじゃなくて
セルフチェックできるように セルフチェックして自分で作業の進め方をブラッシュアップしながら
改善しながら期待された結果が出るまで ぐるぐる回すということをできるようにするのが
ハーネスエンジニアリングだというふうに 思っていただくといいかなというふうに思います
今回は一旦ここまでにしたいと思います 今回は車で例えるとエンジン周りの進化じゃなくて
エンジン以外の進化ですね ハンドル周りだとかタイヤ周り 足回りみたいなところの進化がどういうふうに
起きたかということで プロンプト エンジニアリング コンテクストエンジニアリング
ハーネスエンジニアリングという 3段階の進化を得て 精々AIのパフォーマンスが上がってきた
特に最後のハーネスエンジニアリングのところで 劇的に上がったという話をしました
ただ ハーネスエンジニアリングが できるようになると 具体的にどういうふうに
グッとパフォーマンスが上がったかという話が 十分できていないので
ハーネスエンジニアリングの有難みということを 次回ですね もう少し深掘りしたいなというふうに思います
20:27

コメント

スクロール