テクノロジー

LLMは新しい抽象化をもたらす - Martin Fowler's Bliki (ja)

1: t-wada 2025/07/09 14:49

Martin Fowler が LLM を語る "私たちは抽象化のレベルを上げているだけでなく、同時に非決定性という横方向にも進んでいるのです" "こうした非決定性の進化は、私たちの職業の歴史において前例のないものです" わかる

2: rin51 2025/07/09 14:59

マーチン・ファウラー

3: cartman0 2025/07/09 15:28

大規模アーカイブの読み出し方法みたいな話?

4: masa8aurum 2025/07/09 15:42

“「非決定的なツールでプログラミングするとはどういうことか」という問い”

5: syuu256 2025/07/09 15:55

“非決定性”

6: roirrawedoc 2025/07/09 15:59

“私たちは抽象化のレベルを上げているだけでなく、同時に非決定性という横方向にも進んでいるのです。”

7: hiroomi 2025/07/09 16:36

”アセンブラから最初の高水準プログラミング言語への移行と同じくらい、ソフトウェア開発を大きく変える”非決定性とうまく付き合う方法を見つけなければなりません。

8: lyiase 2025/07/09 16:52

そうか、ソフトウェアエンジニア側から言うと「決定的なのが普通」で、「確率的」は「非決定的」って言うんだ。それが一番この文章で衝撃的だったかも。

9: fujimakitk 2025/07/09 17:15

邪推で申し訳ないんだけど、「決定的」だったのは、コンパイラやインタプリタの出力(機械側の出力)の話であって、仕様やユーザー行動のことではないよ。決定的だからバグが定義できる。使用漏れとバグの違い。

10: narukami 2025/07/09 17:25

「私がはじめて仕事でプログラミングしたのはFortran IVでしたが、「IF」文には「ELSE」句がなく、整数型の変数の名前は「I」から「N」で始めることを覚えておく必要がありました。」

11: mk173 2025/07/09 17:49

プログラミング言語は10回くらいループとか曖昧な依頼もできない(できにくい)から

12: cu39 2025/07/09 18:12

「私たちは抽象化のレベルを上げているだけでなく、同時に非決定性という横方向にも進んでいるのです。(……)こうした非決定性の進化は、私たちの職業の歴史において前例のないものです。」

13: T-norf 2025/07/09 18:27

機械語やアセンブラしかない時代は知らないので、一番の激動。最初期のChatGPTの基盤モデルGPT-3.5は、入力トークン数は4096しかなかったんじゃよ、と孫に語る日が来るかな?

14: kompiro 2025/07/09 18:27

もともと世の中はあいまいさがあった。それを無理に枠の中に押さえ込もうとしてきたのかもしれない

15: gcyn 2025/07/09 18:42

『私たちは仕事でLLMの使い方を学びながら、こうした非決定性とうまく付き合う方法を見つけなければなりません。この変化は劇的なものです。私はワクワクしています。残念ながら失うものもあるでしょう』

16: shag 2025/07/09 19:49

SQL も大分抽象的な言語で、実行はプランナーとオプティマイザの機嫌次第だけど、実質そんなに困ってないし Prompt の非決定性もそんなに恐れなくてもいいかもしれない。

17: shinsyun_3771 2025/07/09 20:23

LLMはすべてのパラメータが同じなら必ず同じ結果を返却します。それは決定的です。決定的なものが非決定的に見えるのは,単に,LLMベンダーが乱数を与えてるからです。私はMartin Fowlerが何者であるかを知っています。

18: gfx 2025/07/09 21:08

非決定的という意味ではLLMは「人」に近いという気はする。 / LLMには乱数がvendorから与えられてはいるけど、どのみち入力がほんの少し変わるだけで出力が大きく変わる可能性があるので、事実上の非決定性はあると思う。

19: tetsuyasato 2025/07/09 21:36

非決定性

20: spark7 2025/07/09 22:14

確かに困るな「プロンプトをgitに保存しても、毎回同じ振る舞いが返ってくるとは限りません」

21: ardarim 2025/07/09 22:29

何か言ってるようで何も言ってなくない?

22: issyurn 2025/07/09 22:44

ファウラー先生の言語化能力よ

23: Puyosty 2025/07/09 22:57

“非決定的なツールでプログラミングするとはどういうことか” LLMは非決定的な抽象化を導入している

24: FreeCatWork 2025/07/09 23:21

LLMは…抽象化…?ボクには猫缶の抽象化が大事なのにゃ!

25: d0i 2025/07/09 23:24

そんなこといったらGPUの計算だって非決定的だというが(確認したことはないので伝聞だけど

26: tyosuke2011 2025/07/10 00:26

あ、そ

27: keijak 2025/07/10 00:29

ソースコードという決定的な土台の上に非決定的なレイヤーを積んでいるわけで、必要なら低レベルに降りて作業するのがまだ必須だけど、アセンブラと同様、これもいずれ大多数にとっては不要な技術になるのだろう

28: altar 2025/07/10 00:35

そういえばこれだけ多くのエンジニアがコーディングにLLMを使う話を議論しているのに、temperatureを0にして運用するべき、みたいな話ってあんまり見ないな。

29: dalmacija 2025/07/10 01:46

ベンダー乱数に帰結したい人は…あーRails民なんか嫌ってそうじゃない。離散値入力に対しTemperature0固定されていないこと自体、自然環境の中でLLMを設計するコンセプトの意義を示しているのでは。非決定性は確かに面白い

30: jintrick 2025/07/10 03:52

"LLMは非決定的な抽象化を導入しているため、プロンプトをgitに保存しても、毎回同じ振る舞いが返ってくるとは限りません。"

31: radian19831019 2025/07/10 05:51

確かに新しい抽象化と考えるとワクワクするな。

32: nrtn 2025/07/10 08:26

もっと引いた視点だけどもユーザー側もCD-ROMから入れてたコンスタントなアプリから、いつ仕様が変わるか分からないweb(スマホ)アプリ移行したし、LLMのご機嫌で部分的挙動が変わるアプリも受け入れられるかもしれない

33: nabinno 2025/07/10 08:45

非決定的であるとは言え、その結果を許容できる領域はある。今までもあったし、今後はより意識されるようになる。

34: boxmanx99 2025/07/10 09:16

"私たちは抽象化のレベルを上げているだけでなく、同時に非決定性という横方向にも進んでいるのです"

35: yojik 2025/07/10 09:19

“私たちは抽象化のレベルを上げているだけでなく、同時に非決定性という横方向にも進んでいる”

36: strawberryhunter 2025/07/10 09:37

↓RDBMSのオプティマイザに機嫌があるように見えるなら理解が足りないだけではないか。/決定的にもできる。ベンチマークしたことは無いけど非決定的な出力をするように設定されているのは性能を引き出すためかな。

37: nomnel 2025/07/10 09:39

“私たちは抽象化のレベルを上げているだけでなく、同時に非決定性という横方向にも進んでいるのです。”

38: zyzy 2025/07/10 09:51

要するにLLMは実質非決定的コンパイラじゃないか、って話か。まぁそもそも大半のプログラムはコンパイラかデータ整形マシンではあるが

39: beejaga 2025/07/10 09:53

確かに要件や仕様を解釈する(アーキテクチャやコードにする)所が抽象化できるなんて数年前までは想像もできなかった/ファウラー先生がこれにどういう意味付けをするのか楽しみ

40: hom_functor 2025/07/10 11:00

不確実性なら分かるけど非決定的ではないだろ。非決定的に見えるのはただ乱数シードを保存してないだけ

41: ihirokyx 2025/07/10 11:23

“私たちは抽象化のレベルを上げているだけでなく、同時に非決定性という横方向にも進んでいるのです”

42: ikajigoku 2025/07/10 12:25

非決定性の視点